From 42c58bbeead1dae09c51f47abc8e10dfbb9c3f9f Mon Sep 17 00:00:00 2001 From: Kristóf Marussy Date: Tue, 23 Jun 2020 15:17:00 +0200 Subject: New configuration language parser WIP --- .../.ApplicationConfigurationIdeModule.xtendbin | Bin 1701 -> 1701 bytes .../ide/.ApplicationConfigurationIdeSetup.xtendbin | Bin 2526 -> 2526 bytes .../contentassist/antlr/SolverLanguageParser.java | 281 +- .../antlr/internal/InternalSolverLanguageParser.g | 6848 +++-- .../internal/InternalSolverLanguageParser.java | 25127 +++++++++++-------- .../internal/InternalSolverLanguageParser.tokens | 139 +- .../antlr/lexer/InternalSolverLanguageLexer.g | 30 +- .../antlr/lexer/InternalSolverLanguageLexer.java | 1325 +- .../antlr/lexer/InternalSolverLanguageLexer.tokens | 139 +- .../.classpath | 7 + .../.gitignore | 1 + .../.project | 35 + .../.settings/org.eclipse.jdt.core.prefs | 8 + .../META-INF/MANIFEST.MF | 16 + .../build.properties | 10 + .../model/model.aird | 6757 +++++ .../model/model.ecore | 327 + .../model/model.genmodel | 287 + .../plugin.properties | 4 + .../plugin.xml | 17 + .../language/solverLanguage/AbstractAssertion.java | 67 + .../solverLanguage/AggregateExpression.java | 59 + .../language/solverLanguage/Aggregation.java | 67 + .../solverLanguage/AggregationOperator.java | 67 + .../solver/language/solverLanguage/Argument.java | 18 + .../language/solverLanguage/ArgumentList.java | 38 + .../solver/language/solverLanguage/Assertion.java | 16 + .../solver/language/solverLanguage/Attribute.java | 70 + .../language/solverLanguage/AttributeKind.java | 250 + .../language/solverLanguage/BaseRelation.java | 16 + .../language/solverLanguage/BinaryExpression.java | 93 + .../language/solverLanguage/BinaryOperator.java | 435 + .../solverLanguage/BoundedMultiplicity.java | 67 + .../language/solverLanguage/BoundedScope.java | 67 + .../solver/language/solverLanguage/Call.java | 67 + .../solver/language/solverLanguage/Case.java | 67 + .../language/solverLanguage/CastExpression.java | 67 + .../language/solverLanguage/ClassDeclaration.java | 118 + .../solverLanguage/ConditionalExpression.java | 90 + .../language/solverLanguage/Conjunction.java | 16 + .../solver/language/solverLanguage/Count.java | 16 + .../solver/language/solverLanguage/Datatype.java | 16 + .../language/solverLanguage/DefaultAssertion.java | 16 + .../language/solverLanguage/Disjunction.java | 16 + .../language/solverLanguage/EmptyLiteral.java | 16 + .../language/solverLanguage/EnumDeclaration.java | 59 + .../language/solverLanguage/EnumLiteral.java | 46 + .../language/solverLanguage/ExactMultiplicity.java | 44 + .../solver/language/solverLanguage/ExactScope.java | 44 + .../solver/language/solverLanguage/Expression.java | 36 + .../solverLanguage/ExpressionArgument.java | 44 + .../ExternAggregationOperatorDeclaration.java | 67 + .../solverLanguage/ExternDatatypeDeclaration.java | 16 + .../language/solverLanguage/ExternDeclaration.java | 44 + .../solverLanguage/ExternFunctionDeclaration.java | 44 + .../solverLanguage/ExternFunctorDeclaration.java | 44 + .../solverLanguage/ExternPredicateDeclaration.java | 16 + .../solver/language/solverLanguage/Field.java | 161 + .../solver/language/solverLanguage/Forall.java | 44 + .../solver/language/solverLanguage/Function.java | 44 + .../solverLanguage/FunctionDefinition.java | 44 + .../solver/language/solverLanguage/Functor.java | 36 + .../language/solverLanguage/FunctorDefiniton.java | 67 + .../solver/language/solverLanguage/Import.java | 46 + .../language/solverLanguage/InfinityLiteral.java | 16 + .../solverLanguage/InlinePredicateAttrributes.java | 69 + .../solver/language/solverLanguage/IntLiteral.java | 44 + .../solver/language/solverLanguage/Interval.java | 67 + .../solver/language/solverLanguage/LetBinding.java | 115 + .../language/solverLanguage/LetExpression.java | 59 + .../solver/language/solverLanguage/Literal.java | 16 + .../language/solverLanguage/LogicLiteral.java | 47 + .../solver/language/solverLanguage/LogicValue.java | 250 + .../language/solverLanguage/LowerBoundedScope.java | 44 + .../solver/language/solverLanguage/Metric.java | 16 + .../language/solverLanguage/MultiaryExpession.java | 36 + .../language/solverLanguage/Multiplicity.java | 18 + .../language/solverLanguage/NamespaceImport.java | 44 + .../solver/language/solverLanguage/Node.java | 44 + .../solverLanguage/ObjectiveDeclaration.java | 70 + .../language/solverLanguage/ObjectiveKind.java | 204 + .../solver/language/solverLanguage/Operator.java | 16 + .../language/solverLanguage/PathComponent.java | 115 + .../solver/language/solverLanguage/Predicate.java | 16 + .../solverLanguage/PredicateDefinition.java | 16 + .../solver/language/solverLanguage/Problem.java | 87 + .../language/solverLanguage/RealLiteral.java | 46 + .../solver/language/solverLanguage/Reference.java | 36 + .../solver/language/solverLanguage/Relation.java | 16 + .../language/solverLanguage/ScopeDeclaration.java | 44 + .../solverLanguage/SolverLanguageFactory.java | 592 + .../solverLanguage/SolverLanguagePackage.java | 7554 ++++++ .../language/solverLanguage/StarArgument.java | 16 + .../solver/language/solverLanguage/Statement.java | 18 + .../language/solverLanguage/StringLiteral.java | 44 + .../solver/language/solverLanguage/Switch.java | 36 + .../solver/language/solverLanguage/Symbol.java | 46 + .../language/solverLanguage/TypeReference.java | 69 + .../language/solverLanguage/TypedArgument.java | 44 + .../language/solverLanguage/TypedStarArgument.java | 16 + .../solverLanguage/TypedVariableArgument.java | 44 + .../language/solverLanguage/UnaryExpression.java | 70 + .../language/solverLanguage/UnaryOperator.java | 250 + .../solverLanguage/UnboundedMultiplicity.java | 16 + .../UnnamedErrorPredicateDefintion.java | 67 + .../solver/language/solverLanguage/UriImport.java | 44 + .../solver/language/solverLanguage/Variable.java | 44 + .../solverLanguage/impl/AbstractAssertionImpl.java | 255 + .../impl/AggregateExpressionImpl.java | 228 + .../solverLanguage/impl/AggregationImpl.java | 245 + .../impl/AggregationOperatorImpl.java | 222 + .../language/solverLanguage/impl/ArgumentImpl.java | 39 + .../solverLanguage/impl/ArgumentListImpl.java | 153 + .../solverLanguage/impl/AssertionImpl.java | 37 + .../solverLanguage/impl/AttributeImpl.java | 230 + .../solverLanguage/impl/BaseRelationImpl.java | 37 + .../solverLanguage/impl/BinaryExpressionImpl.java | 326 + .../impl/BoundedMultiplicityImpl.java | 219 + .../solverLanguage/impl/BoundedScopeImpl.java | 219 + .../language/solverLanguage/impl/CallImpl.java | 256 + .../language/solverLanguage/impl/CaseImpl.java | 254 + .../solverLanguage/impl/CastExpressionImpl.java | 246 + .../solverLanguage/impl/ClassDeclarationImpl.java | 371 + .../impl/ConditionalExpressionImpl.java | 328 + .../solverLanguage/impl/ConjunctionImpl.java | 37 + .../language/solverLanguage/impl/CountImpl.java | 37 + .../language/solverLanguage/impl/DatatypeImpl.java | 37 + .../solverLanguage/impl/DefaultAssertionImpl.java | 37 + .../solverLanguage/impl/DisjunctionImpl.java | 37 + .../solverLanguage/impl/EmptyLiteralImpl.java | 37 + .../solverLanguage/impl/EnumDeclarationImpl.java | 224 + .../solverLanguage/impl/EnumLiteralImpl.java | 165 + .../solverLanguage/impl/ExactMultiplicityImpl.java | 164 + .../solverLanguage/impl/ExactScopeImpl.java | 164 + .../impl/ExpressionArgumentImpl.java | 182 + .../solverLanguage/impl/ExpressionImpl.java | 151 + .../ExternAggregationOperatorDeclarationImpl.java | 227 + .../impl/ExternDatatypeDeclarationImpl.java | 37 + .../solverLanguage/impl/ExternDeclarationImpl.java | 164 + .../impl/ExternFunctionDeclarationImpl.java | 159 + .../impl/ExternFunctorDeclarationImpl.java | 184 + .../impl/ExternPredicateDeclarationImpl.java | 260 + .../language/solverLanguage/impl/FieldImpl.java | 488 + .../language/solverLanguage/impl/ForallImpl.java | 182 + .../impl/FunctionDefinitionImpl.java | 159 + .../language/solverLanguage/impl/FunctionImpl.java | 159 + .../solverLanguage/impl/FunctorDefinitonImpl.java | 255 + .../language/solverLanguage/impl/FunctorImpl.java | 151 + .../language/solverLanguage/impl/ImportImpl.java | 165 + .../solverLanguage/impl/InfinityLiteralImpl.java | 37 + .../solverLanguage/impl/IntLiteralImpl.java | 164 + .../language/solverLanguage/impl/IntervalImpl.java | 255 + .../solverLanguage/impl/LetBindingImpl.java | 391 + .../solverLanguage/impl/LetExpressionImpl.java | 228 + .../language/solverLanguage/impl/LiteralImpl.java | 37 + .../solverLanguage/impl/LogicLiteralImpl.java | 165 + .../solverLanguage/impl/LowerBoundedScopeImpl.java | 164 + .../language/solverLanguage/impl/MetricImpl.java | 37 + .../solverLanguage/impl/MultiaryExpessionImpl.java | 151 + .../solverLanguage/impl/MultiplicityImpl.java | 39 + .../solverLanguage/impl/NamespaceImportImpl.java | 166 + .../language/solverLanguage/impl/NodeImpl.java | 163 + .../impl/ObjectiveDeclarationImpl.java | 253 + .../language/solverLanguage/impl/OperatorImpl.java | 37 + .../solverLanguage/impl/PathComponentImpl.java | 341 + .../impl/PredicateDefinitionImpl.java | 260 + .../solverLanguage/impl/PredicateImpl.java | 37 + .../language/solverLanguage/impl/ProblemImpl.java | 298 + .../solverLanguage/impl/RealLiteralImpl.java | 166 + .../solverLanguage/impl/ReferenceImpl.java | 151 + .../language/solverLanguage/impl/RelationImpl.java | 37 + .../solverLanguage/impl/ScopeDeclarationImpl.java | 159 + .../impl/SolverLanguageFactoryImpl.java | 985 + .../impl/SolverLanguagePackageImpl.java | 3364 +++ .../solverLanguage/impl/StarArgumentImpl.java | 37 + .../solverLanguage/impl/StatementImpl.java | 39 + .../solverLanguage/impl/StringLiteralImpl.java | 164 + .../language/solverLanguage/impl/SwitchImpl.java | 150 + .../language/solverLanguage/impl/SymbolImpl.java | 164 + .../solverLanguage/impl/TypeReferenceImpl.java | 230 + .../solverLanguage/impl/TypedArgumentImpl.java | 182 + .../solverLanguage/impl/TypedStarArgumentImpl.java | 37 + .../impl/TypedVariableArgumentImpl.java | 164 + .../solverLanguage/impl/UnaryExpressionImpl.java | 253 + .../impl/UnboundedMultiplicityImpl.java | 37 + .../impl/UnnamedErrorPredicateDefintionImpl.java | 262 + .../solverLanguage/impl/UriImportImpl.java | 163 + .../language/solverLanguage/impl/VariableImpl.java | 182 + .../util/SolverLanguageAdapterFactory.java | 1620 ++ .../solverLanguage/util/SolverLanguageSwitch.java | 2114 ++ .../AbstractSolverLanguageProposalProvider.java | 288 +- .../.SolverSemanticHighlightCalculator.xtendbin | Bin 5334 -> 5334 bytes .../.SolverSemanticTextAttributeProvider.xtendbin | Bin 4902 -> 4902 bytes .../validation/.SolverLanguageValidator.xtendbin | Bin 1717 -> 1717 bytes .../org.eclipse.viatra.solver.language/.classpath | 1 - .../META-INF/MANIFEST.MF | 10 +- .../build.properties | 3 +- .../language/solverLanguage/Aggregation.java | 115 - .../solver/language/solverLanguage/Argument.java | 19 - .../language/solverLanguage/ArgumentList.java | 39 - .../language/solverLanguage/BinaryExpression.java | 95 - .../language/solverLanguage/BinaryOperator.java | 463 - .../solverLanguage/BoundedMultiplicity.java | 69 - .../solverLanguage/BoundedScopeDefinition.java | 69 - .../solver/language/solverLanguage/Call.java | 115 - .../solver/language/solverLanguage/Case.java | 69 - .../language/solverLanguage/CastExpression.java | 69 - .../language/solverLanguage/ClassDefinition.java | 96 - .../solver/language/solverLanguage/Comparison.java | 95 - .../language/solverLanguage/Conjunction.java | 37 - .../language/solverLanguage/DefaultDefinition.java | 69 - .../language/solverLanguage/Disjunction.java | 37 - .../solverLanguage/EmptyIntervalLiteral.java | 18 - .../language/solverLanguage/ExactMultiplicity.java | 46 - .../solverLanguage/ExactScopeDefinition.java | 46 - .../solver/language/solverLanguage/Expression.java | 18 - .../solverLanguage/ExpressionArgument.java | 46 - .../solverLanguage/ExternAggregatorDefinition.java | 92 - .../solverLanguage/ExternDatatypeDefinition.java | 60 - .../solverLanguage/ExternMetricDefinition.java | 92 - .../solverLanguage/ExternPredicateDefinition.java | 69 - .../solver/language/solverLanguage/Functor.java | 37 - .../solver/language/solverLanguage/IfElse.java | 92 - .../language/solverLanguage/InfinityLiteral.java | 18 - .../language/solverLanguage/Interpretation.java | 69 - .../solver/language/solverLanguage/Interval.java | 69 - .../viatra/solver/language/solverLanguage/Let.java | 60 - .../solver/language/solverLanguage/LetBinding.java | 70 - .../solver/language/solverLanguage/Literal.java | 18 - .../language/solverLanguage/LocalVariables.java | 39 - .../language/solverLanguage/LogicLiteral.java | 49 - .../solver/language/solverLanguage/LogicValue.java | 256 - .../LowerBoundedScopeDefinition.java | 46 - .../language/solverLanguage/ManyMultiplicity.java | 18 - .../language/solverLanguage/MemberDefinition.java | 139 - .../solver/language/solverLanguage/Metric.java | 46 - .../language/solverLanguage/MetricDefinition.java | 92 - .../language/solverLanguage/Multiplicity.java | 19 - .../language/solverLanguage/NamedElement.java | 47 - .../solver/language/solverLanguage/Node.java | 46 - .../language/solverLanguage/NumericLiteral.java | 47 - .../solverLanguage/ObjectiveDefinition.java | 72 - .../language/solverLanguage/ObjectiveKind.java | 210 - .../solver/language/solverLanguage/Predicate.java | 18 - .../solverLanguage/PredicateDefinition.java | 115 - .../solver/language/solverLanguage/Problem.java | 39 - .../solverLanguage/QuantifiedExpression.java | 95 - .../solver/language/solverLanguage/Quantifier.java | 233 - .../solver/language/solverLanguage/Reference.java | 46 - .../language/solverLanguage/ScopeDefinition.java | 46 - .../solverLanguage/SolverLanguageFactory.java | 538 - .../solverLanguage/SolverLanguagePackage.java | 5191 ---- .../language/solverLanguage/StarArgument.java | 18 - .../solver/language/solverLanguage/Statement.java | 19 - .../language/solverLanguage/StringLiteral.java | 46 - .../solver/language/solverLanguage/Switch.java | 37 - .../language/solverLanguage/TypedArgument.java | 69 - .../language/solverLanguage/TypedStarArgument.java | 46 - .../language/solverLanguage/UnaryExpression.java | 72 - .../solver/language/solverLanguage/UnaryOp.java | 302 - .../UnnamedErrorPrediateDefinition.java | 69 - .../solver/language/solverLanguage/Variable.java | 46 - .../solverLanguage/impl/AggregationImpl.java | 378 - .../language/solverLanguage/impl/ArgumentImpl.java | 40 - .../solverLanguage/impl/ArgumentListImpl.java | 154 - .../solverLanguage/impl/BinaryExpressionImpl.java | 317 - .../impl/BoundedMultiplicityImpl.java | 221 - .../impl/BoundedScopeDefinitionImpl.java | 221 - .../language/solverLanguage/impl/CallImpl.java | 373 - .../language/solverLanguage/impl/CaseImpl.java | 246 - .../solverLanguage/impl/CastExpressionImpl.java | 241 - .../solverLanguage/impl/ClassDefinitionImpl.java | 318 - .../solverLanguage/impl/ComparisonImpl.java | 317 - .../solverLanguage/impl/ConjunctionImpl.java | 152 - .../solverLanguage/impl/DefaultDefinitionImpl.java | 247 - .../solverLanguage/impl/DisjunctionImpl.java | 152 - .../impl/EmptyIntervalLiteralImpl.java | 38 - .../solverLanguage/impl/ExactMultiplicityImpl.java | 165 - .../impl/ExactScopeDefinitionImpl.java | 165 - .../impl/ExpressionArgumentImpl.java | 178 - .../solverLanguage/impl/ExpressionImpl.java | 38 - .../impl/ExternAggregatorDefinitionImpl.java | 291 - .../impl/ExternDatatypeDefinitionImpl.java | 208 - .../impl/ExternMetricDefinitionImpl.java | 311 - .../impl/ExternPredicateDefinitionImpl.java | 248 - .../language/solverLanguage/impl/FunctorImpl.java | 134 - .../language/solverLanguage/impl/IfElseImpl.java | 314 - .../solverLanguage/impl/InfinityLiteralImpl.java | 38 - .../solverLanguage/impl/InterpretationImpl.java | 246 - .../language/solverLanguage/impl/IntervalImpl.java | 246 - .../solverLanguage/impl/LetBindingImpl.java | 248 - .../language/solverLanguage/impl/LetImpl.java | 224 - .../language/solverLanguage/impl/LiteralImpl.java | 38 - .../solverLanguage/impl/LocalVariablesImpl.java | 154 - .../solverLanguage/impl/LogicLiteralImpl.java | 166 - .../impl/LowerBoundedScopeDefinitionImpl.java | 165 - .../solverLanguage/impl/ManyMultiplicityImpl.java | 38 - .../solverLanguage/impl/MemberDefinitionImpl.java | 430 - .../solverLanguage/impl/MetricDefinitionImpl.java | 309 - .../language/solverLanguage/impl/MetricImpl.java | 159 - .../solverLanguage/impl/MultiplicityImpl.java | 40 - .../solverLanguage/impl/NamedElementImpl.java | 166 - .../language/solverLanguage/impl/NodeImpl.java | 165 - .../solverLanguage/impl/NumericLiteralImpl.java | 167 - .../impl/ObjectiveDefinitionImpl.java | 249 - .../impl/PredicateDefinitionImpl.java | 372 - .../solverLanguage/impl/PredicateImpl.java | 38 - .../language/solverLanguage/impl/ProblemImpl.java | 154 - .../impl/QuantifiedExpressionImpl.java | 318 - .../solverLanguage/impl/ReferenceImpl.java | 159 - .../solverLanguage/impl/ScopeDefinitionImpl.java | 159 - .../impl/SolverLanguageFactoryImpl.java | 905 - .../impl/SolverLanguagePackageImpl.java | 2726 -- .../solverLanguage/impl/StarArgumentImpl.java | 38 - .../solverLanguage/impl/StatementImpl.java | 40 - .../solverLanguage/impl/StringLiteralImpl.java | 165 - .../language/solverLanguage/impl/SwitchImpl.java | 152 - .../solverLanguage/impl/TypedArgumentImpl.java | 221 - .../solverLanguage/impl/TypedStarArgumentImpl.java | 159 - .../solverLanguage/impl/UnaryExpressionImpl.java | 249 - .../impl/UnnamedErrorPrediateDefinitionImpl.java | 247 - .../language/solverLanguage/impl/VariableImpl.java | 159 - .../util/SolverLanguageAdapterFactory.java | 1147 - .../solverLanguage/util/SolverLanguageSwitch.java | 1388 - .../model/SolverLanguage.ecore | 291 - .../model/SolverLanguage.genmodel | 249 - .../org.eclipse.viatra.solver.language/plugin.xml | 8 +- .../AbstractSolverLanguageRuntimeModule.java | 7 + .../viatra/solver/language/SolverLanguage.xtextbin | Bin 13021 -> 14135 bytes .../antlr/internal/InternalSolverLanguageParser.g | 2941 ++- .../internal/InternalSolverLanguageParser.java | 9569 ++++--- .../internal/InternalSolverLanguageParser.tokens | 139 +- .../antlr/lexer/InternalSolverLanguageLexer.g | 30 +- .../antlr/lexer/InternalSolverLanguageLexer.java | 1325 +- .../antlr/lexer/InternalSolverLanguageLexer.tokens | 139 +- .../SolverLanguageSemanticSequencer.java | 1375 +- .../SolverLanguageSyntacticSequencer.java | 87 +- .../services/SolverLanguageGrammarAccess.java | 2840 ++- .../solver/language/GenerateSolverLanguage.mwe2 | 2 +- .../viatra/solver/language/SolverLanguage.xtext | 215 +- .../parser/antlr/SolverLanguageTokenSource.java | 47 +- ....SolverLanguageTokenDefInjectingParser.xtendbin | Bin 2742 -> 2742 bytes ...nguageSyntheticTokenSyntacticSequencer.xtendbin | Bin 2758 -> 2758 bytes 343 files changed, 73587 insertions(+), 50107 deletions(-) create mode 100644 Application/org.eclipse.viatra.solver.language.model/.classpath create mode 100644 Application/org.eclipse.viatra.solver.language.model/.gitignore create mode 100644 Application/org.eclipse.viatra.solver.language.model/.project create mode 100644 Application/org.eclipse.viatra.solver.language.model/.settings/org.eclipse.jdt.core.prefs create mode 100644 Application/org.eclipse.viatra.solver.language.model/META-INF/MANIFEST.MF create mode 100644 Application/org.eclipse.viatra.solver.language.model/build.properties create mode 100644 Application/org.eclipse.viatra.solver.language.model/model/model.aird create mode 100644 Application/org.eclipse.viatra.solver.language.model/model/model.ecore create mode 100644 Application/org.eclipse.viatra.solver.language.model/model/model.genmodel create mode 100644 Application/org.eclipse.viatra.solver.language.model/plugin.properties create mode 100644 Application/org.eclipse.viatra.solver.language.model/plugin.xml create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AbstractAssertion.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregateExpression.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregationOperator.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Assertion.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Attribute.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AttributeKind.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BaseRelation.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScope.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ConditionalExpression.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Count.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Datatype.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultAssertion.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyLiteral.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumLiteral.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScope.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregationOperatorDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctionDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctorDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Field.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Forall.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Function.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctionDefinition.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctorDefiniton.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Import.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InlinePredicateAttrributes.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntLiteral.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetExpression.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScope.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiaryExpession.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamespaceImport.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Operator.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PathComponent.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealLiteral.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Relation.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDeclaration.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypeReference.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedVariableArgument.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOperator.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnboundedMultiplicity.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPredicateDefintion.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UriImport.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AbstractAssertionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregateExpressionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationOperatorImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AssertionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AttributeImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BaseRelationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConditionalExpressionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CountImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DatatypeImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultAssertionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyLiteralImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumLiteralImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregationOperatorDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctionDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctorDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ForallImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionDefinitionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorDefinitonImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ImportImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntLiteralImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetExpressionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiaryExpessionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamespaceImportImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/OperatorImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PathComponentImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealLiteralImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RelationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDeclarationImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypeReferenceImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedVariableArgumentImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnboundedMultiplicityImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPredicateDefintionImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UriImportImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java create mode 100644 Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScopeDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Comparison.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyIntervalLiteral.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScopeDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregatorDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternMetricDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/IfElse.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Interpretation.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Let.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LocalVariables.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScopeDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ManyMultiplicity.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/MemberDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/MetricDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/NamedElement.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/NumericLiteral.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/QuantifiedExpression.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Quantifier.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOp.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPrediateDefinition.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ComparisonImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyIntervalLiteralImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregatorDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternMetricDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IfElseImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InterpretationImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LocalVariablesImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ManyMultiplicityImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MemberDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamedElementImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NumericLiteralImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/QuantifiedExpressionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPrediateDefinitionImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java delete mode 100644 Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java delete mode 100644 Application/org.eclipse.viatra.solver.language/model/SolverLanguage.ecore delete mode 100644 Application/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel (limited to 'Application') diff --git a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin index fae8ba45..917be1cc 100644 Binary files a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin and b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin differ diff --git a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin index e820bee5..b0c68e2a 100644 Binary files a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin and b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin differ diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/SolverLanguageParser.java b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/SolverLanguageParser.java index a84662a2..584cec38 100644 --- a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/SolverLanguageParser.java +++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/SolverLanguageParser.java @@ -33,54 +33,65 @@ public class SolverLanguageParser extends AbstractContentAssistParser { } private static void init(ImmutableMap.Builder builder, SolverLanguageGrammarAccess grammarAccess) { - builder.put(grammarAccess.getStatementAccess().getAlternatives_0(), "rule__Statement__Alternatives_0"); + builder.put(grammarAccess.getStatementAccess().getAlternatives(), "rule__Statement__Alternatives"); + builder.put(grammarAccess.getImportAccess().getAlternatives(), "rule__Import__Alternatives"); builder.put(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1(), "rule__AssertionOrDefinition__Alternatives_1"); builder.put(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0(), "rule__PredicateDefinition__Alternatives_0"); + builder.put(grammarAccess.getExternDeclarationAccess().getAlternatives(), "rule__ExternDeclaration__Alternatives"); builder.put(grammarAccess.getExpressionAccess().getAlternatives(), "rule__Expression__Alternatives"); builder.put(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1(), "rule__DisjunctiveExpression__Alternatives_1"); builder.put(grammarAccess.getUnaryExpressionAccess().getAlternatives(), "rule__UnaryExpression__Alternatives"); - builder.put(grammarAccess.getAggregationExpressionAccess().getAlternatives(), "rule__AggregationExpression__Alternatives"); + builder.put(grammarAccess.getBracedAggregateExpressionAccess().getAlternatives(), "rule__BracedAggregateExpression__Alternatives"); builder.put(grammarAccess.getAtomicExpressionAccess().getAlternatives(), "rule__AtomicExpression__Alternatives"); - builder.put(grammarAccess.getCallAccess().getAlternatives_1(), "rule__Call__Alternatives_1"); builder.put(grammarAccess.getArgumentAccess().getAlternatives(), "rule__Argument__Alternatives"); + builder.put(grammarAccess.getPathComponentAccess().getAlternatives_2(), "rule__PathComponent__Alternatives_2"); builder.put(grammarAccess.getLiteralAccess().getAlternatives(), "rule__Literal__Alternatives"); + builder.put(grammarAccess.getClassDeclarationAccess().getAlternatives_4(), "rule__ClassDeclaration__Alternatives_4"); + builder.put(grammarAccess.getFieldAccess().getAlternatives_0(), "rule__Field__Alternatives_0"); builder.put(grammarAccess.getMultiplicityAccess().getAlternatives(), "rule__Multiplicity__Alternatives"); - builder.put(grammarAccess.getScopeDefinitionAccess().getAlternatives(), "rule__ScopeDefinition__Alternatives"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getAlternatives_1(), "rule__BoundedScopeDefinition__Alternatives_1"); - builder.put(grammarAccess.getLowerBoundedScopeDefinitionAccess().getAlternatives_1(), "rule__LowerBoundedScopeDefinition__Alternatives_1"); + builder.put(grammarAccess.getEnumDeclarationAccess().getAlternatives_2(), "rule__EnumDeclaration__Alternatives_2"); + builder.put(grammarAccess.getScopeDeclarationAccess().getAlternatives(), "rule__ScopeDeclaration__Alternatives"); + builder.put(grammarAccess.getBoundedScopeAccess().getAlternatives_1(), "rule__BoundedScope__Alternatives_1"); + builder.put(grammarAccess.getLowerBoundedScopeAccess().getAlternatives_1(), "rule__LowerBoundedScope__Alternatives_1"); builder.put(grammarAccess.getUpperMultiplictyAccess().getAlternatives(), "rule__UpperMultiplicty__Alternatives"); - builder.put(grammarAccess.getQualifiedNameAccess().getAlternatives(), "rule__QualifiedName__Alternatives"); + builder.put(grammarAccess.getQualifiedNameSegmentAccess().getAlternatives(), "rule__QualifiedNameSegment__Alternatives"); + builder.put(grammarAccess.getAttributeKindAccess().getAlternatives(), "rule__AttributeKind__Alternatives"); builder.put(grammarAccess.getComparisonOperatorAccess().getAlternatives(), "rule__ComparisonOperator__Alternatives"); builder.put(grammarAccess.getAdditiveBinaryOperatorAccess().getAlternatives(), "rule__AdditiveBinaryOperator__Alternatives"); builder.put(grammarAccess.getMultiplicativeBinaryOperatorAccess().getAlternatives(), "rule__MultiplicativeBinaryOperator__Alternatives"); - builder.put(grammarAccess.getUnaryOpAccess().getAlternatives(), "rule__UnaryOp__Alternatives"); - builder.put(grammarAccess.getQuantifierAccess().getAlternatives(), "rule__Quantifier__Alternatives"); + builder.put(grammarAccess.getUnaryOperatorAccess().getAlternatives(), "rule__UnaryOperator__Alternatives"); builder.put(grammarAccess.getLogicValueAccess().getAlternatives(), "rule__LogicValue__Alternatives"); builder.put(grammarAccess.getObjectiveKindAccess().getAlternatives(), "rule__ObjectiveKind__Alternatives"); - builder.put(grammarAccess.getStatementAccess().getGroup(), "rule__Statement__Group__0"); + builder.put(grammarAccess.getProblemAccess().getGroup(), "rule__Problem__Group__0"); + builder.put(grammarAccess.getProblemAccess().getGroup_0(), "rule__Problem__Group_0__0"); + builder.put(grammarAccess.getUriImportAccess().getGroup(), "rule__UriImport__Group__0"); + builder.put(grammarAccess.getUriImportAccess().getGroup_2(), "rule__UriImport__Group_2__0"); + builder.put(grammarAccess.getNamespaceImportAccess().getGroup(), "rule__NamespaceImport__Group__0"); + builder.put(grammarAccess.getNamespaceImportAccess().getGroup_2(), "rule__NamespaceImport__Group_2__0"); builder.put(grammarAccess.getAssertionOrDefinitionAccess().getGroup(), "rule__AssertionOrDefinition__Group__0"); builder.put(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0(), "rule__AssertionOrDefinition__Group_1_0__0"); + builder.put(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0_1(), "rule__AssertionOrDefinition__Group_1_0_1__0"); builder.put(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_1(), "rule__AssertionOrDefinition__Group_1_1__0"); builder.put(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_2(), "rule__AssertionOrDefinition__Group_1_2__0"); builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup(), "rule__PredicateDefinition__Group__0"); builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup_0_0(), "rule__PredicateDefinition__Group_0_0__0"); builder.put(grammarAccess.getPredicateDefinitionAccess().getGroup_0_1(), "rule__PredicateDefinition__Group_0_1__0"); - builder.put(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getGroup(), "rule__UnnamedErrorPrediateDefinition__Group__0"); - builder.put(grammarAccess.getDefaultDefinitionAccess().getGroup(), "rule__DefaultDefinition__Group__0"); - builder.put(grammarAccess.getMetricDefinitionAccess().getGroup(), "rule__MetricDefinition__Group__0"); - builder.put(grammarAccess.getExternPredicateDefinitionAccess().getGroup(), "rule__ExternPredicateDefinition__Group__0"); - builder.put(grammarAccess.getExternMetricDefinitionAccess().getGroup(), "rule__ExternMetricDefinition__Group__0"); - builder.put(grammarAccess.getExternAggregatorDefinitionAccess().getGroup(), "rule__ExternAggregatorDefinition__Group__0"); - builder.put(grammarAccess.getExternDatatypeDefinitionAccess().getGroup(), "rule__ExternDatatypeDefinition__Group__0"); - builder.put(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3(), "rule__ExternDatatypeDefinition__Group_3__0"); - builder.put(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3_2(), "rule__ExternDatatypeDefinition__Group_3_2__0"); - builder.put(grammarAccess.getVariableAccess().getGroup(), "rule__Variable__Group__0"); - builder.put(grammarAccess.getIfElseAccess().getGroup(), "rule__IfElse__Group__0"); - builder.put(grammarAccess.getLetAccess().getGroup(), "rule__Let__Group__0"); - builder.put(grammarAccess.getLetAccess().getGroup_2(), "rule__Let__Group_2__0"); + builder.put(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getGroup(), "rule__UnnamedErrorPredicateDefintion__Group__0"); + builder.put(grammarAccess.getDefaultAssertionAccess().getGroup(), "rule__DefaultAssertion__Group__0"); + builder.put(grammarAccess.getDefaultAssertionAccess().getGroup_2(), "rule__DefaultAssertion__Group_2__0"); + builder.put(grammarAccess.getFunctionDefinitionAccess().getGroup(), "rule__FunctionDefinition__Group__0"); + builder.put(grammarAccess.getTypeReferenceAccess().getGroup(), "rule__TypeReference__Group__0"); + builder.put(grammarAccess.getAttributeAccess().getGroup(), "rule__Attribute__Group__0"); + builder.put(grammarAccess.getExternPredicateDeclarationAccess().getGroup(), "rule__ExternPredicateDeclaration__Group__0"); + builder.put(grammarAccess.getExternFunctionDeclarationAccess().getGroup(), "rule__ExternFunctionDeclaration__Group__0"); + builder.put(grammarAccess.getExternAggregationOperatorDeclarationAccess().getGroup(), "rule__ExternAggregationOperatorDeclaration__Group__0"); + builder.put(grammarAccess.getExternDatatypeDeclarationAccess().getGroup(), "rule__ExternDatatypeDeclaration__Group__0"); + builder.put(grammarAccess.getExpressionAccess().getGroup_2(), "rule__Expression__Group_2__0"); + builder.put(grammarAccess.getExpressionAccess().getGroup_2_1(), "rule__Expression__Group_2_1__0"); + builder.put(grammarAccess.getConditionalExpressionAccess().getGroup(), "rule__ConditionalExpression__Group__0"); + builder.put(grammarAccess.getLetExpressionAccess().getGroup(), "rule__LetExpression__Group__0"); + builder.put(grammarAccess.getLetExpressionAccess().getGroup_2(), "rule__LetExpression__Group_2__0"); builder.put(grammarAccess.getLetBindingAccess().getGroup(), "rule__LetBinding__Group__0"); - builder.put(grammarAccess.getImplicationExpressionAccess().getGroup(), "rule__ImplicationExpression__Group__0"); - builder.put(grammarAccess.getImplicationExpressionAccess().getGroup_1(), "rule__ImplicationExpression__Group_1__0"); builder.put(grammarAccess.getDisjunctiveExpressionAccess().getGroup(), "rule__DisjunctiveExpression__Group__0"); builder.put(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0(), "rule__DisjunctiveExpression__Group_1_0__0"); builder.put(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1(), "rule__DisjunctiveExpression__Group_1_0_1__0"); @@ -101,47 +112,56 @@ public class SolverLanguageParser extends AbstractContentAssistParser { builder.put(grammarAccess.getCastExpressionAccess().getGroup(), "rule__CastExpression__Group__0"); builder.put(grammarAccess.getCastExpressionAccess().getGroup_1(), "rule__CastExpression__Group_1__0"); builder.put(grammarAccess.getUnaryExpressionAccess().getGroup_1(), "rule__UnaryExpression__Group_1__0"); - builder.put(grammarAccess.getLocalVariablesAccess().getGroup(), "rule__LocalVariables__Group__0"); - builder.put(grammarAccess.getLocalVariablesAccess().getGroup_2(), "rule__LocalVariables__Group_2__0"); - builder.put(grammarAccess.getLocalVariablesAccess().getGroup_2_1(), "rule__LocalVariables__Group_2_1__0"); - builder.put(grammarAccess.getQuantifiedExpressionAccess().getGroup(), "rule__QuantifiedExpression__Group__0"); builder.put(grammarAccess.getAggregationAccess().getGroup(), "rule__Aggregation__Group__0"); - builder.put(grammarAccess.getAggregationAccess().getGroup_4(), "rule__Aggregation__Group_4__0"); + builder.put(grammarAccess.getCountAccess().getGroup(), "rule__Count__Group__0"); builder.put(grammarAccess.getAtomicExpressionAccess().getGroup_4(), "rule__AtomicExpression__Group_4__0"); builder.put(grammarAccess.getCallAccess().getGroup(), "rule__Call__Group__0"); builder.put(grammarAccess.getArgumentListAccess().getGroup(), "rule__ArgumentList__Group__0"); builder.put(grammarAccess.getArgumentListAccess().getGroup_2(), "rule__ArgumentList__Group_2__0"); builder.put(grammarAccess.getArgumentListAccess().getGroup_2_1(), "rule__ArgumentList__Group_2_1__0"); builder.put(grammarAccess.getStarArgumentAccess().getGroup(), "rule__StarArgument__Group__0"); - builder.put(grammarAccess.getTypedArgumentAccess().getGroup(), "rule__TypedArgument__Group__0"); + builder.put(grammarAccess.getTypedVariableArgumentAccess().getGroup(), "rule__TypedVariableArgument__Group__0"); builder.put(grammarAccess.getTypedStarArgumentAccess().getGroup(), "rule__TypedStarArgument__Group__0"); + builder.put(grammarAccess.getReferenceAccess().getGroup(), "rule__Reference__Group__0"); + builder.put(grammarAccess.getReferenceAccess().getGroup_1(), "rule__Reference__Group_1__0"); + builder.put(grammarAccess.getPathComponentAccess().getGroup(), "rule__PathComponent__Group__0"); builder.put(grammarAccess.getIntervalAccess().getGroup(), "rule__Interval__Group__0"); builder.put(grammarAccess.getInfinityLiteralAccess().getGroup(), "rule__InfinityLiteral__Group__0"); - builder.put(grammarAccess.getEmptyIntervalLiteralAccess().getGroup(), "rule__EmptyIntervalLiteral__Group__0"); - builder.put(grammarAccess.getClassDefinitionAccess().getGroup(), "rule__ClassDefinition__Group__0"); - builder.put(grammarAccess.getClassDefinitionAccess().getGroup_3(), "rule__ClassDefinition__Group_3__0"); - builder.put(grammarAccess.getClassDefinitionAccess().getGroup_3_2(), "rule__ClassDefinition__Group_3_2__0"); - builder.put(grammarAccess.getMemberDefinitionAccess().getGroup(), "rule__MemberDefinition__Group__0"); - builder.put(grammarAccess.getMemberDefinitionAccess().getGroup_4(), "rule__MemberDefinition__Group_4__0"); - builder.put(grammarAccess.getManyMultiplicityAccess().getGroup(), "rule__ManyMultiplicity__Group__0"); + builder.put(grammarAccess.getEmptyLiteralAccess().getGroup(), "rule__EmptyLiteral__Group__0"); + builder.put(grammarAccess.getClassDeclarationAccess().getGroup(), "rule__ClassDeclaration__Group__0"); + builder.put(grammarAccess.getClassDeclarationAccess().getGroup_3(), "rule__ClassDeclaration__Group_3__0"); + builder.put(grammarAccess.getClassDeclarationAccess().getGroup_3_2(), "rule__ClassDeclaration__Group_3_2__0"); + builder.put(grammarAccess.getClassDeclarationAccess().getGroup_4_0(), "rule__ClassDeclaration__Group_4_0__0"); + builder.put(grammarAccess.getFieldAccess().getGroup(), "rule__Field__Group__0"); + builder.put(grammarAccess.getFieldAccess().getGroup_4(), "rule__Field__Group_4__0"); + builder.put(grammarAccess.getUnboundedMultiplicityAccess().getGroup(), "rule__UnboundedMultiplicity__Group__0"); builder.put(grammarAccess.getExactMultiplicityAccess().getGroup(), "rule__ExactMultiplicity__Group__0"); builder.put(grammarAccess.getBoundedMultiplicityAccess().getGroup(), "rule__BoundedMultiplicity__Group__0"); - builder.put(grammarAccess.getExactScopeDefinitionAccess().getGroup(), "rule__ExactScopeDefinition__Group__0"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getGroup(), "rule__BoundedScopeDefinition__Group__0"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0(), "rule__BoundedScopeDefinition__Group_1_0__0"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0_0(), "rule__BoundedScopeDefinition__Group_1_0_0__0"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1(), "rule__BoundedScopeDefinition__Group_1_1__0"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1_3(), "rule__BoundedScopeDefinition__Group_1_1_3__0"); - builder.put(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup(), "rule__LowerBoundedScopeDefinition__Group__0"); - builder.put(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_0(), "rule__LowerBoundedScopeDefinition__Group_1_0__0"); - builder.put(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_1(), "rule__LowerBoundedScopeDefinition__Group_1_1__0"); - builder.put(grammarAccess.getObjectiveDefinitionAccess().getGroup(), "rule__ObjectiveDefinition__Group__0"); + builder.put(grammarAccess.getEnumDeclarationAccess().getGroup(), "rule__EnumDeclaration__Group__0"); + builder.put(grammarAccess.getEnumDeclarationAccess().getGroup_2_0(), "rule__EnumDeclaration__Group_2_0__0"); + builder.put(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1(), "rule__EnumDeclaration__Group_2_0_1__0"); + builder.put(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1(), "rule__EnumDeclaration__Group_2_0_1_1__0"); + builder.put(grammarAccess.getExactScopeAccess().getGroup(), "rule__ExactScope__Group__0"); + builder.put(grammarAccess.getBoundedScopeAccess().getGroup(), "rule__BoundedScope__Group__0"); + builder.put(grammarAccess.getBoundedScopeAccess().getGroup_1_0(), "rule__BoundedScope__Group_1_0__0"); + builder.put(grammarAccess.getBoundedScopeAccess().getGroup_1_0_0(), "rule__BoundedScope__Group_1_0_0__0"); + builder.put(grammarAccess.getBoundedScopeAccess().getGroup_1_1(), "rule__BoundedScope__Group_1_1__0"); + builder.put(grammarAccess.getBoundedScopeAccess().getGroup_1_1_3(), "rule__BoundedScope__Group_1_1_3__0"); + builder.put(grammarAccess.getLowerBoundedScopeAccess().getGroup(), "rule__LowerBoundedScope__Group__0"); + builder.put(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_0(), "rule__LowerBoundedScope__Group_1_0__0"); + builder.put(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_1(), "rule__LowerBoundedScope__Group_1_1__0"); + builder.put(grammarAccess.getObjectiveDeclarationAccess().getGroup(), "rule__ObjectiveDeclaration__Group__0"); builder.put(grammarAccess.getRealAccess().getGroup(), "rule__Real__Group__0"); - builder.put(grammarAccess.getRealAccess().getGroup_1(), "rule__Real__Group_1__0"); - builder.put(grammarAccess.getQualifiedNameAccess().getGroup_0(), "rule__QualifiedName__Group_0__0"); - builder.put(grammarAccess.getQualifiedNameAccess().getGroup_0_1(), "rule__QualifiedName__Group_0_1__0"); - builder.put(grammarAccess.getProblemAccess().getStatementsAssignment(), "rule__Problem__StatementsAssignment"); - builder.put(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_2(), "rule__AssertionOrDefinition__RangeAssignment_1_0_2"); + builder.put(grammarAccess.getQualifiedNameAccess().getGroup(), "rule__QualifiedName__Group__0"); + builder.put(grammarAccess.getQualifiedNameAccess().getGroup_1(), "rule__QualifiedName__Group_1__0"); + builder.put(grammarAccess.getProblemAccess().getNameAssignment_0_1(), "rule__Problem__NameAssignment_0_1"); + builder.put(grammarAccess.getProblemAccess().getImportsAssignment_1(), "rule__Problem__ImportsAssignment_1"); + builder.put(grammarAccess.getProblemAccess().getStatementsAssignment_2(), "rule__Problem__StatementsAssignment_2"); + builder.put(grammarAccess.getUriImportAccess().getUriAssignment_1(), "rule__UriImport__UriAssignment_1"); + builder.put(grammarAccess.getUriImportAccess().getAliasAssignment_2_1(), "rule__UriImport__AliasAssignment_2_1"); + builder.put(grammarAccess.getNamespaceImportAccess().getImportedNamespaceAssignment_1(), "rule__NamespaceImport__ImportedNamespaceAssignment_1"); + builder.put(grammarAccess.getNamespaceImportAccess().getAliasAssignment_2_1(), "rule__NamespaceImport__AliasAssignment_2_1"); + builder.put(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_1_1(), "rule__AssertionOrDefinition__RangeAssignment_1_0_1_1"); builder.put(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2(), "rule__AssertionOrDefinition__BodyAssignment_1_1_2"); builder.put(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2(), "rule__AssertionOrDefinition__BodyAssignment_1_2_2"); builder.put(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0(), "rule__PredicateDefinition__FunctionalAssignment_0_0_0"); @@ -150,36 +170,38 @@ public class SolverLanguageParser extends AbstractContentAssistParser { builder.put(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1(), "rule__PredicateDefinition__FunctionalAssignment_0_1_1"); builder.put(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1(), "rule__PredicateDefinition__HeadAssignment_1"); builder.put(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3(), "rule__PredicateDefinition__BodyAssignment_3"); - builder.put(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListAssignment_1(), "rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1"); - builder.put(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyAssignment_3(), "rule__UnnamedErrorPrediateDefinition__BodyAssignment_3"); - builder.put(grammarAccess.getDefaultDefinitionAccess().getHeadAssignment_1(), "rule__DefaultDefinition__HeadAssignment_1"); - builder.put(grammarAccess.getDefaultDefinitionAccess().getRangeAssignment_3(), "rule__DefaultDefinition__RangeAssignment_3"); - builder.put(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0(), "rule__MetricDefinition__TypeAssignment_0"); - builder.put(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1(), "rule__MetricDefinition__HeadAssignment_1"); - builder.put(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3(), "rule__MetricDefinition__BodyAssignment_3"); - builder.put(grammarAccess.getExternPredicateDefinitionAccess().getNameAssignment_1(), "rule__ExternPredicateDefinition__NameAssignment_1"); - builder.put(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListAssignment_2(), "rule__ExternPredicateDefinition__ArgumentListAssignment_2"); - builder.put(grammarAccess.getExternMetricDefinitionAccess().getTypeAssignment_1(), "rule__ExternMetricDefinition__TypeAssignment_1"); - builder.put(grammarAccess.getExternMetricDefinitionAccess().getNameAssignment_2(), "rule__ExternMetricDefinition__NameAssignment_2"); - builder.put(grammarAccess.getExternMetricDefinitionAccess().getArgumentListAssignment_3(), "rule__ExternMetricDefinition__ArgumentListAssignment_3"); - builder.put(grammarAccess.getExternAggregatorDefinitionAccess().getTypeAssignment_1(), "rule__ExternAggregatorDefinition__TypeAssignment_1"); - builder.put(grammarAccess.getExternAggregatorDefinitionAccess().getNameAssignment_2(), "rule__ExternAggregatorDefinition__NameAssignment_2"); - builder.put(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeAssignment_4(), "rule__ExternAggregatorDefinition__InputTypeAssignment_4"); - builder.put(grammarAccess.getExternDatatypeDefinitionAccess().getNameAssignment_2(), "rule__ExternDatatypeDefinition__NameAssignment_2"); - builder.put(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_1(), "rule__ExternDatatypeDefinition__SupertypesAssignment_3_1"); - builder.put(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_2_1(), "rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1"); - builder.put(grammarAccess.getVariableAccess().getTypeAssignment_0(), "rule__Variable__TypeAssignment_0"); - builder.put(grammarAccess.getVariableAccess().getNameAssignment_1(), "rule__Variable__NameAssignment_1"); - builder.put(grammarAccess.getIfElseAccess().getConditionAssignment_1(), "rule__IfElse__ConditionAssignment_1"); - builder.put(grammarAccess.getIfElseAccess().getThenAssignment_3(), "rule__IfElse__ThenAssignment_3"); - builder.put(grammarAccess.getIfElseAccess().getElseAssignment_5(), "rule__IfElse__ElseAssignment_5"); - builder.put(grammarAccess.getLetAccess().getBindingsAssignment_1(), "rule__Let__BindingsAssignment_1"); - builder.put(grammarAccess.getLetAccess().getBindingsAssignment_2_1(), "rule__Let__BindingsAssignment_2_1"); - builder.put(grammarAccess.getLetAccess().getBodyAssignment_4(), "rule__Let__BodyAssignment_4"); - builder.put(grammarAccess.getLetBindingAccess().getVariableAssignment_0(), "rule__LetBinding__VariableAssignment_0"); - builder.put(grammarAccess.getLetBindingAccess().getValueAssignment_2(), "rule__LetBinding__ValueAssignment_2"); - builder.put(grammarAccess.getImplicationExpressionAccess().getOpAssignment_1_1(), "rule__ImplicationExpression__OpAssignment_1_1"); - builder.put(grammarAccess.getImplicationExpressionAccess().getRightAssignment_1_2(), "rule__ImplicationExpression__RightAssignment_1_2"); + builder.put(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListAssignment_1(), "rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1"); + builder.put(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyAssignment_3(), "rule__UnnamedErrorPredicateDefintion__BodyAssignment_3"); + builder.put(grammarAccess.getDefaultAssertionAccess().getExpressionAssignment_1(), "rule__DefaultAssertion__ExpressionAssignment_1"); + builder.put(grammarAccess.getDefaultAssertionAccess().getRangeAssignment_2_1(), "rule__DefaultAssertion__RangeAssignment_2_1"); + builder.put(grammarAccess.getFunctionDefinitionAccess().getResultTypeAssignment_0(), "rule__FunctionDefinition__ResultTypeAssignment_0"); + builder.put(grammarAccess.getFunctionDefinitionAccess().getHeadAssignment_1(), "rule__FunctionDefinition__HeadAssignment_1"); + builder.put(grammarAccess.getFunctionDefinitionAccess().getBodyAssignment_3(), "rule__FunctionDefinition__BodyAssignment_3"); + builder.put(grammarAccess.getTypeReferenceAccess().getTypeAssignment_0(), "rule__TypeReference__TypeAssignment_0"); + builder.put(grammarAccess.getTypeReferenceAccess().getForceObjectTypeAssignment_1(), "rule__TypeReference__ForceObjectTypeAssignment_1"); + builder.put(grammarAccess.getAttributeAccess().getKindAssignment_0(), "rule__Attribute__KindAssignment_0"); + builder.put(grammarAccess.getAttributeAccess().getTargetAssignment_1(), "rule__Attribute__TargetAssignment_1"); + builder.put(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalAssignment_1_0(), "rule__ExternPredicateDeclaration__FunctionalAssignment_1_0"); + builder.put(grammarAccess.getExternPredicateDeclarationAccess().getErrorAssignment_1_1(), "rule__ExternPredicateDeclaration__ErrorAssignment_1_1"); + builder.put(grammarAccess.getExternPredicateDeclarationAccess().getNameAssignment_2(), "rule__ExternPredicateDeclaration__NameAssignment_2"); + builder.put(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListAssignment_3(), "rule__ExternPredicateDeclaration__ArgumentListAssignment_3"); + builder.put(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeAssignment_1(), "rule__ExternFunctionDeclaration__ResultTypeAssignment_1"); + builder.put(grammarAccess.getExternFunctionDeclarationAccess().getNameAssignment_2(), "rule__ExternFunctionDeclaration__NameAssignment_2"); + builder.put(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListAssignment_3(), "rule__ExternFunctionDeclaration__ArgumentListAssignment_3"); + builder.put(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeAssignment_1(), "rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1"); + builder.put(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameAssignment_2(), "rule__ExternAggregationOperatorDeclaration__NameAssignment_2"); + builder.put(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeAssignment_4(), "rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4"); + builder.put(grammarAccess.getExternDatatypeDeclarationAccess().getNameAssignment_2(), "rule__ExternDatatypeDeclaration__NameAssignment_2"); + builder.put(grammarAccess.getExpressionAccess().getBodyAssignment_2_1_2(), "rule__Expression__BodyAssignment_2_1_2"); + builder.put(grammarAccess.getConditionalExpressionAccess().getConditionAssignment_1(), "rule__ConditionalExpression__ConditionAssignment_1"); + builder.put(grammarAccess.getConditionalExpressionAccess().getThenAssignment_3(), "rule__ConditionalExpression__ThenAssignment_3"); + builder.put(grammarAccess.getConditionalExpressionAccess().getElseAssignment_5(), "rule__ConditionalExpression__ElseAssignment_5"); + builder.put(grammarAccess.getLetExpressionAccess().getBindingsAssignment_1(), "rule__LetExpression__BindingsAssignment_1"); + builder.put(grammarAccess.getLetExpressionAccess().getBindingsAssignment_2_1(), "rule__LetExpression__BindingsAssignment_2_1"); + builder.put(grammarAccess.getLetExpressionAccess().getBodyAssignment_4(), "rule__LetExpression__BodyAssignment_4"); + builder.put(grammarAccess.getLetBindingAccess().getTypeAssignment_0(), "rule__LetBinding__TypeAssignment_0"); + builder.put(grammarAccess.getLetBindingAccess().getNameAssignment_1(), "rule__LetBinding__NameAssignment_1"); + builder.put(grammarAccess.getLetBindingAccess().getValueAssignment_3(), "rule__LetBinding__ValueAssignment_3"); builder.put(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1(), "rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1"); builder.put(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2(), "rule__DisjunctiveExpression__BodyAssignment_1_1_2"); builder.put(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1(), "rule__DisjunctiveExpression__CasesAssignment_1_1_4_1"); @@ -194,61 +216,68 @@ public class SolverLanguageParser extends AbstractContentAssistParser { builder.put(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2(), "rule__MultiplicativeExpression__RightAssignment_1_2"); builder.put(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1(), "rule__ExponentialExpression__OpAssignment_1_1"); builder.put(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2(), "rule__ExponentialExpression__RightAssignment_1_2"); - builder.put(grammarAccess.getCastExpressionAccess().getTypeAssignment_1_2(), "rule__CastExpression__TypeAssignment_1_2"); + builder.put(grammarAccess.getCastExpressionAccess().getTargetTypeAssignment_1_2(), "rule__CastExpression__TargetTypeAssignment_1_2"); builder.put(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1(), "rule__UnaryExpression__OpAssignment_1_1"); builder.put(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2(), "rule__UnaryExpression__BodyAssignment_1_2"); - builder.put(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_0(), "rule__LocalVariables__VariablesAssignment_2_0"); - builder.put(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_1_1(), "rule__LocalVariables__VariablesAssignment_2_1_1"); - builder.put(grammarAccess.getQuantifiedExpressionAccess().getQuantifierAssignment_0(), "rule__QuantifiedExpression__QuantifierAssignment_0"); - builder.put(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesAssignment_1(), "rule__QuantifiedExpression__LocalVariablesAssignment_1"); - builder.put(grammarAccess.getQuantifiedExpressionAccess().getBodyAssignment_3(), "rule__QuantifiedExpression__BodyAssignment_3"); builder.put(grammarAccess.getAggregationAccess().getOpAssignment_0(), "rule__Aggregation__OpAssignment_0"); - builder.put(grammarAccess.getAggregationAccess().getLocalVariablesAssignment_1(), "rule__Aggregation__LocalVariablesAssignment_1"); - builder.put(grammarAccess.getAggregationAccess().getBodyAssignment_3(), "rule__Aggregation__BodyAssignment_3"); - builder.put(grammarAccess.getAggregationAccess().getConditionAssignment_4_1(), "rule__Aggregation__ConditionAssignment_4_1"); + builder.put(grammarAccess.getAggregationAccess().getValueAssignment_2(), "rule__Aggregation__ValueAssignment_2"); + builder.put(grammarAccess.getAggregationAccess().getConditionAssignment_4(), "rule__Aggregation__ConditionAssignment_4"); + builder.put(grammarAccess.getCountAccess().getConditionAssignment_2(), "rule__Count__ConditionAssignment_2"); builder.put(grammarAccess.getCallAccess().getFunctorAssignment_0(), "rule__Call__FunctorAssignment_0"); - builder.put(grammarAccess.getCallAccess().getTransitiveClosureAssignment_1_0(), "rule__Call__TransitiveClosureAssignment_1_0"); - builder.put(grammarAccess.getCallAccess().getReflexiveTransitiveClosureAssignment_1_1(), "rule__Call__ReflexiveTransitiveClosureAssignment_1_1"); - builder.put(grammarAccess.getCallAccess().getArgumentListAssignment_2(), "rule__Call__ArgumentListAssignment_2"); + builder.put(grammarAccess.getCallAccess().getArgumentListAssignment_1(), "rule__Call__ArgumentListAssignment_1"); builder.put(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0(), "rule__ArgumentList__ArgumentsAssignment_2_0"); builder.put(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1(), "rule__ArgumentList__ArgumentsAssignment_2_1_1"); - builder.put(grammarAccess.getExpressionArgumentAccess().getBodyAssignment(), "rule__ExpressionArgument__BodyAssignment"); - builder.put(grammarAccess.getTypedArgumentAccess().getTypeAssignment_0(), "rule__TypedArgument__TypeAssignment_0"); - builder.put(grammarAccess.getTypedArgumentAccess().getVariableAssignment_1(), "rule__TypedArgument__VariableAssignment_1"); - builder.put(grammarAccess.getTypedStarArgumentAccess().getTypeAssignment_0(), "rule__TypedStarArgument__TypeAssignment_0"); - builder.put(grammarAccess.getReferenceAccess().getReferredAssignment(), "rule__Reference__ReferredAssignment"); + builder.put(grammarAccess.getExpressionArgumentAccess().getExpressionAssignment(), "rule__ExpressionArgument__ExpressionAssignment"); + builder.put(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceAssignment_0(), "rule__TypedVariableArgument__TypeReferenceAssignment_0"); + builder.put(grammarAccess.getTypedVariableArgumentAccess().getNameAssignment_1(), "rule__TypedVariableArgument__NameAssignment_1"); + builder.put(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceAssignment_0(), "rule__TypedStarArgument__TypeReferenceAssignment_0"); + builder.put(grammarAccess.getReferenceAccess().getComponentsAssignment_0(), "rule__Reference__ComponentsAssignment_0"); + builder.put(grammarAccess.getReferenceAccess().getComponentsAssignment_1_1(), "rule__Reference__ComponentsAssignment_1_1"); + builder.put(grammarAccess.getPathComponentAccess().getInverseAssignment_0(), "rule__PathComponent__InverseAssignment_0"); + builder.put(grammarAccess.getPathComponentAccess().getSymbolAssignment_1(), "rule__PathComponent__SymbolAssignment_1"); + builder.put(grammarAccess.getPathComponentAccess().getTransitiveClosureAssignment_2_0(), "rule__PathComponent__TransitiveClosureAssignment_2_0"); + builder.put(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureAssignment_2_1(), "rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1"); builder.put(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1(), "rule__Interval__LowerBoundAssignment_1"); builder.put(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3(), "rule__Interval__UpperBoundAssignment_3"); builder.put(grammarAccess.getLogicLiteralAccess().getValueAssignment(), "rule__LogicLiteral__ValueAssignment"); - builder.put(grammarAccess.getNumericLiteralAccess().getValueAssignment(), "rule__NumericLiteral__ValueAssignment"); + builder.put(grammarAccess.getIntLiteralAccess().getValueAssignment(), "rule__IntLiteral__ValueAssignment"); + builder.put(grammarAccess.getRealLiteralAccess().getValueAssignment(), "rule__RealLiteral__ValueAssignment"); builder.put(grammarAccess.getStringLiteralAccess().getValueAssignment(), "rule__StringLiteral__ValueAssignment"); - builder.put(grammarAccess.getClassDefinitionAccess().getAbstractAssignment_0(), "rule__ClassDefinition__AbstractAssignment_0"); - builder.put(grammarAccess.getClassDefinitionAccess().getNameAssignment_2(), "rule__ClassDefinition__NameAssignment_2"); - builder.put(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_1(), "rule__ClassDefinition__SuperclassesAssignment_3_1"); - builder.put(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_2_1(), "rule__ClassDefinition__SuperclassesAssignment_3_2_1"); - builder.put(grammarAccess.getClassDefinitionAccess().getMembersAssignment_5(), "rule__ClassDefinition__MembersAssignment_5"); - builder.put(grammarAccess.getMemberDefinitionAccess().getContainmentAssignment_0(), "rule__MemberDefinition__ContainmentAssignment_0"); - builder.put(grammarAccess.getMemberDefinitionAccess().getTypeAssignment_1(), "rule__MemberDefinition__TypeAssignment_1"); - builder.put(grammarAccess.getMemberDefinitionAccess().getMultiplicityAssignment_2(), "rule__MemberDefinition__MultiplicityAssignment_2"); - builder.put(grammarAccess.getMemberDefinitionAccess().getNameAssignment_3(), "rule__MemberDefinition__NameAssignment_3"); - builder.put(grammarAccess.getMemberDefinitionAccess().getOppositeAssignment_4_1(), "rule__MemberDefinition__OppositeAssignment_4_1"); - builder.put(grammarAccess.getExactMultiplicityAccess().getMultiplicityAssignment_1(), "rule__ExactMultiplicity__MultiplicityAssignment_1"); + builder.put(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0_0(), "rule__ClassDeclaration__AbstractAssignment_0_0"); + builder.put(grammarAccess.getClassDeclarationAccess().getRootAssignment_0_1(), "rule__ClassDeclaration__RootAssignment_0_1"); + builder.put(grammarAccess.getClassDeclarationAccess().getNameAssignment_2(), "rule__ClassDeclaration__NameAssignment_2"); + builder.put(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_1(), "rule__ClassDeclaration__SupertypesAssignment_3_1"); + builder.put(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_2_1(), "rule__ClassDeclaration__SupertypesAssignment_3_2_1"); + builder.put(grammarAccess.getClassDeclarationAccess().getFieldsAssignment_4_0_1(), "rule__ClassDeclaration__FieldsAssignment_4_0_1"); + builder.put(grammarAccess.getFieldAccess().getContainmentAssignment_0_0(), "rule__Field__ContainmentAssignment_0_0"); + builder.put(grammarAccess.getFieldAccess().getCrossReferenceAssignment_0_1(), "rule__Field__CrossReferenceAssignment_0_1"); + builder.put(grammarAccess.getFieldAccess().getTypeAssignment_1(), "rule__Field__TypeAssignment_1"); + builder.put(grammarAccess.getFieldAccess().getMultiplicityAssignment_2(), "rule__Field__MultiplicityAssignment_2"); + builder.put(grammarAccess.getFieldAccess().getNameAssignment_3(), "rule__Field__NameAssignment_3"); + builder.put(grammarAccess.getFieldAccess().getOppositeAssignment_4_1(), "rule__Field__OppositeAssignment_4_1"); + builder.put(grammarAccess.getExactMultiplicityAccess().getValueAssignment_1(), "rule__ExactMultiplicity__ValueAssignment_1"); builder.put(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1(), "rule__BoundedMultiplicity__LowerBoundAssignment_1"); builder.put(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3(), "rule__BoundedMultiplicity__UpperBoundAssignment_3"); - builder.put(grammarAccess.getExactScopeDefinitionAccess().getTypeAssignment_1(), "rule__ExactScopeDefinition__TypeAssignment_1"); - builder.put(grammarAccess.getExactScopeDefinitionAccess().getExactScopeAssignment_3(), "rule__ExactScopeDefinition__ExactScopeAssignment_3"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0_0(), "rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_0_1(), "rule__BoundedScopeDefinition__TypeAssignment_1_0_1"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_0_3(), "rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_1_0(), "rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_1_2(), "rule__BoundedScopeDefinition__TypeAssignment_1_1_2"); - builder.put(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_3_1(), "rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1"); - builder.put(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0(), "rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0"); - builder.put(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_0_2(), "rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2"); - builder.put(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_1_0(), "rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0"); - builder.put(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_2(), "rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2"); - builder.put(grammarAccess.getObjectiveDefinitionAccess().getKindAssignment_0(), "rule__ObjectiveDefinition__KindAssignment_0"); - builder.put(grammarAccess.getObjectiveDefinitionAccess().getObjectiveAssignment_1(), "rule__ObjectiveDefinition__ObjectiveAssignment_1"); + builder.put(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1(), "rule__EnumDeclaration__NameAssignment_1"); + builder.put(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0(), "rule__EnumDeclaration__LiteralsAssignment_2_0_1_0"); + builder.put(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1(), "rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1"); + builder.put(grammarAccess.getEnumLiteralAccess().getNameAssignment(), "rule__EnumLiteral__NameAssignment"); + builder.put(grammarAccess.getExactScopeAccess().getTypeAssignment_1(), "rule__ExactScope__TypeAssignment_1"); + builder.put(grammarAccess.getExactScopeAccess().getSizeAssignment_3(), "rule__ExactScope__SizeAssignment_3"); + builder.put(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_0_0_0(), "rule__BoundedScope__LowerBoundAssignment_1_0_0_0"); + builder.put(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_0_1(), "rule__BoundedScope__TypeAssignment_1_0_1"); + builder.put(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_0_3(), "rule__BoundedScope__UpperBoundAssignment_1_0_3"); + builder.put(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_1_0(), "rule__BoundedScope__UpperBoundAssignment_1_1_0"); + builder.put(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_1_2(), "rule__BoundedScope__TypeAssignment_1_1_2"); + builder.put(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_1_3_1(), "rule__BoundedScope__LowerBoundAssignment_1_1_3_1"); + builder.put(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_0_0(), "rule__LowerBoundedScope__LowerBoundAssignment_1_0_0"); + builder.put(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_0_2(), "rule__LowerBoundedScope__TypeAssignment_1_0_2"); + builder.put(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_1_0(), "rule__LowerBoundedScope__TypeAssignment_1_1_0"); + builder.put(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_1_2(), "rule__LowerBoundedScope__LowerBoundAssignment_1_1_2"); + builder.put(grammarAccess.getObjectiveDeclarationAccess().getKindAssignment_0(), "rule__ObjectiveDeclaration__KindAssignment_0"); + builder.put(grammarAccess.getObjectiveDeclarationAccess().getObjectiveAssignment_1(), "rule__ObjectiveDeclaration__ObjectiveAssignment_1"); + builder.put(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), "rule__ExternPredicateDeclaration__UnorderedGroup_1"); + builder.put(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), "rule__ClassDeclaration__UnorderedGroup_0"); } } diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g index a56b7fe0..107d9b8a 100644 --- a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g +++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.g @@ -45,16 +45,19 @@ import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess; tokenNameToValue.put("LessThanSign", "'<'"); tokenNameToValue.put("EqualsSign", "'='"); tokenNameToValue.put("GreaterThanSign", "'>'"); + tokenNameToValue.put("QuestionMark", "'?'"); tokenNameToValue.put("LeftSquareBracket", "'['"); tokenNameToValue.put("RightSquareBracket", "']'"); tokenNameToValue.put("CircumflexAccent", "'^'"); tokenNameToValue.put("LeftCurlyBracket", "'{'"); tokenNameToValue.put("VerticalLine", "'|'"); tokenNameToValue.put("RightCurlyBracket", "'}'"); + tokenNameToValue.put("Tilde", "'~'"); tokenNameToValue.put("ExclamationMarkEqualsSign", "'!='"); tokenNameToValue.put("HyphenMinusGreaterThanSign", "'->'"); - tokenNameToValue.put("FullStopFullStop", "'..'"); tokenNameToValue.put("ColonHyphenMinus", "':-'"); + tokenNameToValue.put("ColonColon", "'::'"); + tokenNameToValue.put("ColonEqualsSign", "':='"); tokenNameToValue.put("LessThanSignEqualsSign", "'<='"); tokenNameToValue.put("EqualsSignEqualsSign", "'=='"); tokenNameToValue.put("EqualsSignGreaterThanSign", "'=>'"); @@ -65,9 +68,9 @@ import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess; tokenNameToValue.put("FullStopFullStopFullStop", "'...'"); tokenNameToValue.put("Inf", "'inf'"); tokenNameToValue.put("Let", "'let'"); - tokenNameToValue.put("May", "'may'"); tokenNameToValue.put("Else", "'else'"); - tokenNameToValue.put("Must", "'must'"); + tokenNameToValue.put("Enum", "'enum'"); + tokenNameToValue.put("Root", "'root'"); tokenNameToValue.put("Then", "'then'"); tokenNameToValue.put("True", "'true'"); tokenNameToValue.put("Class", "'class'"); @@ -76,12 +79,13 @@ import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess; tokenNameToValue.put("Error", "'error'"); tokenNameToValue.put("False", "'false'"); tokenNameToValue.put("Scope", "'scope'"); - tokenNameToValue.put("Exists", "'exists'"); tokenNameToValue.put("Extern", "'extern'"); - tokenNameToValue.put("Forall", "'forall'"); - tokenNameToValue.put("Current", "'current'"); + tokenNameToValue.put("Import", "'import'"); + tokenNameToValue.put("Object", "'object'"); + tokenNameToValue.put("Refers", "'refers'"); tokenNameToValue.put("Default", "'default'"); tokenNameToValue.put("Extends", "'extends'"); + tokenNameToValue.put("Problem", "'problem'"); tokenNameToValue.put("Unknown", "'unknown'"); tokenNameToValue.put("Abstract", "'abstract'"); tokenNameToValue.put("Contains", "'contains'"); @@ -90,6 +94,7 @@ import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess; tokenNameToValue.put("Minimize", "'minimize'"); tokenNameToValue.put("Opposite", "'opposite'"); tokenNameToValue.put("Functional", "'functional'"); + tokenNameToValue.put("Containment", "'containment'"); } public void setGrammarAccess(SolverLanguageGrammarAccess grammarAccess) { @@ -126,9 +131,9 @@ ruleProblem } : ( - { before(grammarAccess.getProblemAccess().getStatementsAssignment()); } - (rule__Problem__StatementsAssignment)* - { after(grammarAccess.getProblemAccess().getStatementsAssignment()); } + { before(grammarAccess.getProblemAccess().getGroup()); } + (rule__Problem__Group__0) + { after(grammarAccess.getProblemAccess().getGroup()); } ) ; finally { @@ -151,9 +156,84 @@ ruleStatement } : ( - { before(grammarAccess.getStatementAccess().getGroup()); } - (rule__Statement__Group__0) - { after(grammarAccess.getStatementAccess().getGroup()); } + { before(grammarAccess.getStatementAccess().getAlternatives()); } + (rule__Statement__Alternatives) + { after(grammarAccess.getStatementAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleImport +entryRuleImport +: +{ before(grammarAccess.getImportRule()); } + ruleImport +{ after(grammarAccess.getImportRule()); } + EOF +; + +// Rule Import +ruleImport + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getImportAccess().getAlternatives()); } + (rule__Import__Alternatives) + { after(grammarAccess.getImportAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleUriImport +entryRuleUriImport +: +{ before(grammarAccess.getUriImportRule()); } + ruleUriImport +{ after(grammarAccess.getUriImportRule()); } + EOF +; + +// Rule UriImport +ruleUriImport + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getUriImportAccess().getGroup()); } + (rule__UriImport__Group__0) + { after(grammarAccess.getUriImportAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleNamespaceImport +entryRuleNamespaceImport +: +{ before(grammarAccess.getNamespaceImportRule()); } + ruleNamespaceImport +{ after(grammarAccess.getNamespaceImportRule()); } + EOF +; + +// Rule NamespaceImport +ruleNamespaceImport + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getNamespaceImportAccess().getGroup()); } + (rule__NamespaceImport__Group__0) + { after(grammarAccess.getNamespaceImportAccess().getGroup()); } ) ; finally { @@ -210,200 +290,250 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleUnnamedErrorPrediateDefinition -entryRuleUnnamedErrorPrediateDefinition +// Entry rule entryRuleUnnamedErrorPredicateDefintion +entryRuleUnnamedErrorPredicateDefintion +: +{ before(grammarAccess.getUnnamedErrorPredicateDefintionRule()); } + ruleUnnamedErrorPredicateDefintion +{ after(grammarAccess.getUnnamedErrorPredicateDefintionRule()); } + EOF +; + +// Rule UnnamedErrorPredicateDefintion +ruleUnnamedErrorPredicateDefintion + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getGroup()); } + (rule__UnnamedErrorPredicateDefintion__Group__0) + { after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleDefaultAssertion +entryRuleDefaultAssertion +: +{ before(grammarAccess.getDefaultAssertionRule()); } + ruleDefaultAssertion +{ after(grammarAccess.getDefaultAssertionRule()); } + EOF +; + +// Rule DefaultAssertion +ruleDefaultAssertion + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getDefaultAssertionAccess().getGroup()); } + (rule__DefaultAssertion__Group__0) + { after(grammarAccess.getDefaultAssertionAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleFunctionDefinition +entryRuleFunctionDefinition : -{ before(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); } - ruleUnnamedErrorPrediateDefinition -{ after(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); } +{ before(grammarAccess.getFunctionDefinitionRule()); } + ruleFunctionDefinition +{ after(grammarAccess.getFunctionDefinitionRule()); } EOF ; -// Rule UnnamedErrorPrediateDefinition -ruleUnnamedErrorPrediateDefinition +// Rule FunctionDefinition +ruleFunctionDefinition @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getGroup()); } - (rule__UnnamedErrorPrediateDefinition__Group__0) - { after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getGroup()); } + { before(grammarAccess.getFunctionDefinitionAccess().getGroup()); } + (rule__FunctionDefinition__Group__0) + { after(grammarAccess.getFunctionDefinitionAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleDefaultDefinition -entryRuleDefaultDefinition +// Entry rule entryRuleTypeReference +entryRuleTypeReference : -{ before(grammarAccess.getDefaultDefinitionRule()); } - ruleDefaultDefinition -{ after(grammarAccess.getDefaultDefinitionRule()); } +{ before(grammarAccess.getTypeReferenceRule()); } + ruleTypeReference +{ after(grammarAccess.getTypeReferenceRule()); } EOF ; -// Rule DefaultDefinition -ruleDefaultDefinition +// Rule TypeReference +ruleTypeReference @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDefaultDefinitionAccess().getGroup()); } - (rule__DefaultDefinition__Group__0) - { after(grammarAccess.getDefaultDefinitionAccess().getGroup()); } + { before(grammarAccess.getTypeReferenceAccess().getGroup()); } + (rule__TypeReference__Group__0) + { after(grammarAccess.getTypeReferenceAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleMetricDefinition -entryRuleMetricDefinition +// Entry rule entryRuleAttribute +entryRuleAttribute : -{ before(grammarAccess.getMetricDefinitionRule()); } - ruleMetricDefinition -{ after(grammarAccess.getMetricDefinitionRule()); } +{ before(grammarAccess.getAttributeRule()); } + ruleAttribute +{ after(grammarAccess.getAttributeRule()); } EOF ; -// Rule MetricDefinition -ruleMetricDefinition +// Rule Attribute +ruleAttribute @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMetricDefinitionAccess().getGroup()); } - (rule__MetricDefinition__Group__0) - { after(grammarAccess.getMetricDefinitionAccess().getGroup()); } + { before(grammarAccess.getAttributeAccess().getGroup()); } + (rule__Attribute__Group__0) + { after(grammarAccess.getAttributeAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleExternPredicateDefinition -entryRuleExternPredicateDefinition +// Entry rule entryRuleExternDeclaration +entryRuleExternDeclaration : -{ before(grammarAccess.getExternPredicateDefinitionRule()); } - ruleExternPredicateDefinition -{ after(grammarAccess.getExternPredicateDefinitionRule()); } +{ before(grammarAccess.getExternDeclarationRule()); } + ruleExternDeclaration +{ after(grammarAccess.getExternDeclarationRule()); } EOF ; -// Rule ExternPredicateDefinition -ruleExternPredicateDefinition +// Rule ExternDeclaration +ruleExternDeclaration @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternPredicateDefinitionAccess().getGroup()); } - (rule__ExternPredicateDefinition__Group__0) - { after(grammarAccess.getExternPredicateDefinitionAccess().getGroup()); } + { before(grammarAccess.getExternDeclarationAccess().getAlternatives()); } + (rule__ExternDeclaration__Alternatives) + { after(grammarAccess.getExternDeclarationAccess().getAlternatives()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleExternMetricDefinition -entryRuleExternMetricDefinition +// Entry rule entryRuleExternPredicateDeclaration +entryRuleExternPredicateDeclaration : -{ before(grammarAccess.getExternMetricDefinitionRule()); } - ruleExternMetricDefinition -{ after(grammarAccess.getExternMetricDefinitionRule()); } +{ before(grammarAccess.getExternPredicateDeclarationRule()); } + ruleExternPredicateDeclaration +{ after(grammarAccess.getExternPredicateDeclarationRule()); } EOF ; -// Rule ExternMetricDefinition -ruleExternMetricDefinition +// Rule ExternPredicateDeclaration +ruleExternPredicateDeclaration @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternMetricDefinitionAccess().getGroup()); } - (rule__ExternMetricDefinition__Group__0) - { after(grammarAccess.getExternMetricDefinitionAccess().getGroup()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getGroup()); } + (rule__ExternPredicateDeclaration__Group__0) + { after(grammarAccess.getExternPredicateDeclarationAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleExternAggregatorDefinition -entryRuleExternAggregatorDefinition +// Entry rule entryRuleExternFunctionDeclaration +entryRuleExternFunctionDeclaration : -{ before(grammarAccess.getExternAggregatorDefinitionRule()); } - ruleExternAggregatorDefinition -{ after(grammarAccess.getExternAggregatorDefinitionRule()); } +{ before(grammarAccess.getExternFunctionDeclarationRule()); } + ruleExternFunctionDeclaration +{ after(grammarAccess.getExternFunctionDeclarationRule()); } EOF ; -// Rule ExternAggregatorDefinition -ruleExternAggregatorDefinition +// Rule ExternFunctionDeclaration +ruleExternFunctionDeclaration @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getGroup()); } - (rule__ExternAggregatorDefinition__Group__0) - { after(grammarAccess.getExternAggregatorDefinitionAccess().getGroup()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getGroup()); } + (rule__ExternFunctionDeclaration__Group__0) + { after(grammarAccess.getExternFunctionDeclarationAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleExternDatatypeDefinition -entryRuleExternDatatypeDefinition +// Entry rule entryRuleExternAggregationOperatorDeclaration +entryRuleExternAggregationOperatorDeclaration : -{ before(grammarAccess.getExternDatatypeDefinitionRule()); } - ruleExternDatatypeDefinition -{ after(grammarAccess.getExternDatatypeDefinitionRule()); } +{ before(grammarAccess.getExternAggregationOperatorDeclarationRule()); } + ruleExternAggregationOperatorDeclaration +{ after(grammarAccess.getExternAggregationOperatorDeclarationRule()); } EOF ; -// Rule ExternDatatypeDefinition -ruleExternDatatypeDefinition +// Rule ExternAggregationOperatorDeclaration +ruleExternAggregationOperatorDeclaration @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup()); } - (rule__ExternDatatypeDefinition__Group__0) - { after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getGroup()); } + (rule__ExternAggregationOperatorDeclaration__Group__0) + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleVariable -entryRuleVariable +// Entry rule entryRuleExternDatatypeDeclaration +entryRuleExternDatatypeDeclaration : -{ before(grammarAccess.getVariableRule()); } - ruleVariable -{ after(grammarAccess.getVariableRule()); } +{ before(grammarAccess.getExternDatatypeDeclarationRule()); } + ruleExternDatatypeDeclaration +{ after(grammarAccess.getExternDatatypeDeclarationRule()); } EOF ; -// Rule Variable -ruleVariable +// Rule ExternDatatypeDeclaration +ruleExternDatatypeDeclaration @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getVariableAccess().getGroup()); } - (rule__Variable__Group__0) - { after(grammarAccess.getVariableAccess().getGroup()); } + { before(grammarAccess.getExternDatatypeDeclarationAccess().getGroup()); } + (rule__ExternDatatypeDeclaration__Group__0) + { after(grammarAccess.getExternDatatypeDeclarationAccess().getGroup()); } ) ; finally { @@ -435,50 +565,50 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleIfElse -entryRuleIfElse +// Entry rule entryRuleConditionalExpression +entryRuleConditionalExpression : -{ before(grammarAccess.getIfElseRule()); } - ruleIfElse -{ after(grammarAccess.getIfElseRule()); } +{ before(grammarAccess.getConditionalExpressionRule()); } + ruleConditionalExpression +{ after(grammarAccess.getConditionalExpressionRule()); } EOF ; -// Rule IfElse -ruleIfElse +// Rule ConditionalExpression +ruleConditionalExpression @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getGroup()); } - (rule__IfElse__Group__0) - { after(grammarAccess.getIfElseAccess().getGroup()); } + { before(grammarAccess.getConditionalExpressionAccess().getGroup()); } + (rule__ConditionalExpression__Group__0) + { after(grammarAccess.getConditionalExpressionAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleLet -entryRuleLet +// Entry rule entryRuleLetExpression +entryRuleLetExpression : -{ before(grammarAccess.getLetRule()); } - ruleLet -{ after(grammarAccess.getLetRule()); } +{ before(grammarAccess.getLetExpressionRule()); } + ruleLetExpression +{ after(grammarAccess.getLetExpressionRule()); } EOF ; -// Rule Let -ruleLet +// Rule LetExpression +ruleLetExpression @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getGroup()); } - (rule__Let__Group__0) - { after(grammarAccess.getLetAccess().getGroup()); } + { before(grammarAccess.getLetExpressionAccess().getGroup()); } + (rule__LetExpression__Group__0) + { after(grammarAccess.getLetExpressionAccess().getGroup()); } ) ; finally { @@ -510,31 +640,6 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleImplicationExpression -entryRuleImplicationExpression -: -{ before(grammarAccess.getImplicationExpressionRule()); } - ruleImplicationExpression -{ after(grammarAccess.getImplicationExpressionRule()); } - EOF -; - -// Rule ImplicationExpression -ruleImplicationExpression - @init { - int stackSize = keepStackSize(); - } - : - ( - { before(grammarAccess.getImplicationExpressionAccess().getGroup()); } - (rule__ImplicationExpression__Group__0) - { after(grammarAccess.getImplicationExpressionAccess().getGroup()); } - ) -; -finally { - restoreStackSize(stackSize); -} - // Entry rule entryRuleDisjunctiveExpression entryRuleDisjunctiveExpression : @@ -760,100 +865,75 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleAggregationExpression -entryRuleAggregationExpression -: -{ before(grammarAccess.getAggregationExpressionRule()); } - ruleAggregationExpression -{ after(grammarAccess.getAggregationExpressionRule()); } - EOF -; - -// Rule AggregationExpression -ruleAggregationExpression - @init { - int stackSize = keepStackSize(); - } - : - ( - { before(grammarAccess.getAggregationExpressionAccess().getAlternatives()); } - (rule__AggregationExpression__Alternatives) - { after(grammarAccess.getAggregationExpressionAccess().getAlternatives()); } - ) -; -finally { - restoreStackSize(stackSize); -} - -// Entry rule entryRuleLocalVariables -entryRuleLocalVariables +// Entry rule entryRuleBracedAggregateExpression +entryRuleBracedAggregateExpression : -{ before(grammarAccess.getLocalVariablesRule()); } - ruleLocalVariables -{ after(grammarAccess.getLocalVariablesRule()); } +{ before(grammarAccess.getBracedAggregateExpressionRule()); } + ruleBracedAggregateExpression +{ after(grammarAccess.getBracedAggregateExpressionRule()); } EOF ; -// Rule LocalVariables -ruleLocalVariables +// Rule BracedAggregateExpression +ruleBracedAggregateExpression @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getGroup()); } - (rule__LocalVariables__Group__0) - { after(grammarAccess.getLocalVariablesAccess().getGroup()); } + { before(grammarAccess.getBracedAggregateExpressionAccess().getAlternatives()); } + (rule__BracedAggregateExpression__Alternatives) + { after(grammarAccess.getBracedAggregateExpressionAccess().getAlternatives()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleQuantifiedExpression -entryRuleQuantifiedExpression +// Entry rule entryRuleAggregation +entryRuleAggregation : -{ before(grammarAccess.getQuantifiedExpressionRule()); } - ruleQuantifiedExpression -{ after(grammarAccess.getQuantifiedExpressionRule()); } +{ before(grammarAccess.getAggregationRule()); } + ruleAggregation +{ after(grammarAccess.getAggregationRule()); } EOF ; -// Rule QuantifiedExpression -ruleQuantifiedExpression +// Rule Aggregation +ruleAggregation @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getGroup()); } - (rule__QuantifiedExpression__Group__0) - { after(grammarAccess.getQuantifiedExpressionAccess().getGroup()); } + { before(grammarAccess.getAggregationAccess().getGroup()); } + (rule__Aggregation__Group__0) + { after(grammarAccess.getAggregationAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleAggregation -entryRuleAggregation +// Entry rule entryRuleCount +entryRuleCount : -{ before(grammarAccess.getAggregationRule()); } - ruleAggregation -{ after(grammarAccess.getAggregationRule()); } +{ before(grammarAccess.getCountRule()); } + ruleCount +{ after(grammarAccess.getCountRule()); } EOF ; -// Rule Aggregation -ruleAggregation +// Rule Count +ruleCount @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getGroup()); } - (rule__Aggregation__Group__0) - { after(grammarAccess.getAggregationAccess().getGroup()); } + { before(grammarAccess.getCountAccess().getGroup()); } + (rule__Count__Group__0) + { after(grammarAccess.getCountAccess().getGroup()); } ) ; finally { @@ -976,9 +1056,9 @@ ruleExpressionArgument } : ( - { before(grammarAccess.getExpressionArgumentAccess().getBodyAssignment()); } - (rule__ExpressionArgument__BodyAssignment) - { after(grammarAccess.getExpressionArgumentAccess().getBodyAssignment()); } + { before(grammarAccess.getExpressionArgumentAccess().getExpressionAssignment()); } + (rule__ExpressionArgument__ExpressionAssignment) + { after(grammarAccess.getExpressionArgumentAccess().getExpressionAssignment()); } ) ; finally { @@ -1010,25 +1090,25 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleTypedArgument -entryRuleTypedArgument +// Entry rule entryRuleTypedVariableArgument +entryRuleTypedVariableArgument : -{ before(grammarAccess.getTypedArgumentRule()); } - ruleTypedArgument -{ after(grammarAccess.getTypedArgumentRule()); } +{ before(grammarAccess.getTypedVariableArgumentRule()); } + ruleTypedVariableArgument +{ after(grammarAccess.getTypedVariableArgumentRule()); } EOF ; -// Rule TypedArgument -ruleTypedArgument +// Rule TypedVariableArgument +ruleTypedVariableArgument @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getTypedArgumentAccess().getGroup()); } - (rule__TypedArgument__Group__0) - { after(grammarAccess.getTypedArgumentAccess().getGroup()); } + { before(grammarAccess.getTypedVariableArgumentAccess().getGroup()); } + (rule__TypedVariableArgument__Group__0) + { after(grammarAccess.getTypedVariableArgumentAccess().getGroup()); } ) ; finally { @@ -1076,9 +1156,34 @@ ruleReference } : ( - { before(grammarAccess.getReferenceAccess().getReferredAssignment()); } - (rule__Reference__ReferredAssignment) - { after(grammarAccess.getReferenceAccess().getReferredAssignment()); } + { before(grammarAccess.getReferenceAccess().getGroup()); } + (rule__Reference__Group__0) + { after(grammarAccess.getReferenceAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRulePathComponent +entryRulePathComponent +: +{ before(grammarAccess.getPathComponentRule()); } + rulePathComponent +{ after(grammarAccess.getPathComponentRule()); } + EOF +; + +// Rule PathComponent +rulePathComponent + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getPathComponentAccess().getGroup()); } + (rule__PathComponent__Group__0) + { after(grammarAccess.getPathComponentAccess().getGroup()); } ) ; finally { @@ -1160,25 +1265,50 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleNumericLiteral -entryRuleNumericLiteral +// Entry rule entryRuleIntLiteral +entryRuleIntLiteral +: +{ before(grammarAccess.getIntLiteralRule()); } + ruleIntLiteral +{ after(grammarAccess.getIntLiteralRule()); } + EOF +; + +// Rule IntLiteral +ruleIntLiteral + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getIntLiteralAccess().getValueAssignment()); } + (rule__IntLiteral__ValueAssignment) + { after(grammarAccess.getIntLiteralAccess().getValueAssignment()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleRealLiteral +entryRuleRealLiteral : -{ before(grammarAccess.getNumericLiteralRule()); } - ruleNumericLiteral -{ after(grammarAccess.getNumericLiteralRule()); } +{ before(grammarAccess.getRealLiteralRule()); } + ruleRealLiteral +{ after(grammarAccess.getRealLiteralRule()); } EOF ; -// Rule NumericLiteral -ruleNumericLiteral +// Rule RealLiteral +ruleRealLiteral @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getNumericLiteralAccess().getValueAssignment()); } - (rule__NumericLiteral__ValueAssignment) - { after(grammarAccess.getNumericLiteralAccess().getValueAssignment()); } + { before(grammarAccess.getRealLiteralAccess().getValueAssignment()); } + (rule__RealLiteral__ValueAssignment) + { after(grammarAccess.getRealLiteralAccess().getValueAssignment()); } ) ; finally { @@ -1210,25 +1340,25 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleEmptyIntervalLiteral -entryRuleEmptyIntervalLiteral +// Entry rule entryRuleEmptyLiteral +entryRuleEmptyLiteral : -{ before(grammarAccess.getEmptyIntervalLiteralRule()); } - ruleEmptyIntervalLiteral -{ after(grammarAccess.getEmptyIntervalLiteralRule()); } +{ before(grammarAccess.getEmptyLiteralRule()); } + ruleEmptyLiteral +{ after(grammarAccess.getEmptyLiteralRule()); } EOF ; -// Rule EmptyIntervalLiteral -ruleEmptyIntervalLiteral +// Rule EmptyLiteral +ruleEmptyLiteral @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getEmptyIntervalLiteralAccess().getGroup()); } - (rule__EmptyIntervalLiteral__Group__0) - { after(grammarAccess.getEmptyIntervalLiteralAccess().getGroup()); } + { before(grammarAccess.getEmptyLiteralAccess().getGroup()); } + (rule__EmptyLiteral__Group__0) + { after(grammarAccess.getEmptyLiteralAccess().getGroup()); } ) ; finally { @@ -1260,50 +1390,50 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleClassDefinition -entryRuleClassDefinition +// Entry rule entryRuleClassDeclaration +entryRuleClassDeclaration : -{ before(grammarAccess.getClassDefinitionRule()); } - ruleClassDefinition -{ after(grammarAccess.getClassDefinitionRule()); } +{ before(grammarAccess.getClassDeclarationRule()); } + ruleClassDeclaration +{ after(grammarAccess.getClassDeclarationRule()); } EOF ; -// Rule ClassDefinition -ruleClassDefinition +// Rule ClassDeclaration +ruleClassDeclaration @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getGroup()); } - (rule__ClassDefinition__Group__0) - { after(grammarAccess.getClassDefinitionAccess().getGroup()); } + { before(grammarAccess.getClassDeclarationAccess().getGroup()); } + (rule__ClassDeclaration__Group__0) + { after(grammarAccess.getClassDeclarationAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleMemberDefinition -entryRuleMemberDefinition +// Entry rule entryRuleField +entryRuleField : -{ before(grammarAccess.getMemberDefinitionRule()); } - ruleMemberDefinition -{ after(grammarAccess.getMemberDefinitionRule()); } +{ before(grammarAccess.getFieldRule()); } + ruleField +{ after(grammarAccess.getFieldRule()); } EOF ; -// Rule MemberDefinition -ruleMemberDefinition +// Rule Field +ruleField @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getGroup()); } - (rule__MemberDefinition__Group__0) - { after(grammarAccess.getMemberDefinitionAccess().getGroup()); } + { before(grammarAccess.getFieldAccess().getGroup()); } + (rule__Field__Group__0) + { after(grammarAccess.getFieldAccess().getGroup()); } ) ; finally { @@ -1335,25 +1465,25 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleManyMultiplicity -entryRuleManyMultiplicity +// Entry rule entryRuleUnboundedMultiplicity +entryRuleUnboundedMultiplicity : -{ before(grammarAccess.getManyMultiplicityRule()); } - ruleManyMultiplicity -{ after(grammarAccess.getManyMultiplicityRule()); } +{ before(grammarAccess.getUnboundedMultiplicityRule()); } + ruleUnboundedMultiplicity +{ after(grammarAccess.getUnboundedMultiplicityRule()); } EOF ; -// Rule ManyMultiplicity -ruleManyMultiplicity +// Rule UnboundedMultiplicity +ruleUnboundedMultiplicity @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getManyMultiplicityAccess().getGroup()); } - (rule__ManyMultiplicity__Group__0) - { after(grammarAccess.getManyMultiplicityAccess().getGroup()); } + { before(grammarAccess.getUnboundedMultiplicityAccess().getGroup()); } + (rule__UnboundedMultiplicity__Group__0) + { after(grammarAccess.getUnboundedMultiplicityAccess().getGroup()); } ) ; finally { @@ -1410,125 +1540,175 @@ finally { restoreStackSize(stackSize); } -// Entry rule entryRuleScopeDefinition -entryRuleScopeDefinition +// Entry rule entryRuleEnumDeclaration +entryRuleEnumDeclaration +: +{ before(grammarAccess.getEnumDeclarationRule()); } + ruleEnumDeclaration +{ after(grammarAccess.getEnumDeclarationRule()); } + EOF +; + +// Rule EnumDeclaration +ruleEnumDeclaration + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getEnumDeclarationAccess().getGroup()); } + (rule__EnumDeclaration__Group__0) + { after(grammarAccess.getEnumDeclarationAccess().getGroup()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleEnumLiteral +entryRuleEnumLiteral +: +{ before(grammarAccess.getEnumLiteralRule()); } + ruleEnumLiteral +{ after(grammarAccess.getEnumLiteralRule()); } + EOF +; + +// Rule EnumLiteral +ruleEnumLiteral + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getEnumLiteralAccess().getNameAssignment()); } + (rule__EnumLiteral__NameAssignment) + { after(grammarAccess.getEnumLiteralAccess().getNameAssignment()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +// Entry rule entryRuleScopeDeclaration +entryRuleScopeDeclaration : -{ before(grammarAccess.getScopeDefinitionRule()); } - ruleScopeDefinition -{ after(grammarAccess.getScopeDefinitionRule()); } +{ before(grammarAccess.getScopeDeclarationRule()); } + ruleScopeDeclaration +{ after(grammarAccess.getScopeDeclarationRule()); } EOF ; -// Rule ScopeDefinition -ruleScopeDefinition +// Rule ScopeDeclaration +ruleScopeDeclaration @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getScopeDefinitionAccess().getAlternatives()); } - (rule__ScopeDefinition__Alternatives) - { after(grammarAccess.getScopeDefinitionAccess().getAlternatives()); } + { before(grammarAccess.getScopeDeclarationAccess().getAlternatives()); } + (rule__ScopeDeclaration__Alternatives) + { after(grammarAccess.getScopeDeclarationAccess().getAlternatives()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleExactScopeDefinition -entryRuleExactScopeDefinition +// Entry rule entryRuleExactScope +entryRuleExactScope : -{ before(grammarAccess.getExactScopeDefinitionRule()); } - ruleExactScopeDefinition -{ after(grammarAccess.getExactScopeDefinitionRule()); } +{ before(grammarAccess.getExactScopeRule()); } + ruleExactScope +{ after(grammarAccess.getExactScopeRule()); } EOF ; -// Rule ExactScopeDefinition -ruleExactScopeDefinition +// Rule ExactScope +ruleExactScope @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactScopeDefinitionAccess().getGroup()); } - (rule__ExactScopeDefinition__Group__0) - { after(grammarAccess.getExactScopeDefinitionAccess().getGroup()); } + { before(grammarAccess.getExactScopeAccess().getGroup()); } + (rule__ExactScope__Group__0) + { after(grammarAccess.getExactScopeAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleBoundedScopeDefinition -entryRuleBoundedScopeDefinition +// Entry rule entryRuleBoundedScope +entryRuleBoundedScope : -{ before(grammarAccess.getBoundedScopeDefinitionRule()); } - ruleBoundedScopeDefinition -{ after(grammarAccess.getBoundedScopeDefinitionRule()); } +{ before(grammarAccess.getBoundedScopeRule()); } + ruleBoundedScope +{ after(grammarAccess.getBoundedScopeRule()); } EOF ; -// Rule BoundedScopeDefinition -ruleBoundedScopeDefinition +// Rule BoundedScope +ruleBoundedScope @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup()); } - (rule__BoundedScopeDefinition__Group__0) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup()); } + { before(grammarAccess.getBoundedScopeAccess().getGroup()); } + (rule__BoundedScope__Group__0) + { after(grammarAccess.getBoundedScopeAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleLowerBoundedScopeDefinition -entryRuleLowerBoundedScopeDefinition +// Entry rule entryRuleLowerBoundedScope +entryRuleLowerBoundedScope : -{ before(grammarAccess.getLowerBoundedScopeDefinitionRule()); } - ruleLowerBoundedScopeDefinition -{ after(grammarAccess.getLowerBoundedScopeDefinitionRule()); } +{ before(grammarAccess.getLowerBoundedScopeRule()); } + ruleLowerBoundedScope +{ after(grammarAccess.getLowerBoundedScopeRule()); } EOF ; -// Rule LowerBoundedScopeDefinition -ruleLowerBoundedScopeDefinition +// Rule LowerBoundedScope +ruleLowerBoundedScope @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup()); } - (rule__LowerBoundedScopeDefinition__Group__0) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getGroup()); } + (rule__LowerBoundedScope__Group__0) + { after(grammarAccess.getLowerBoundedScopeAccess().getGroup()); } ) ; finally { restoreStackSize(stackSize); } -// Entry rule entryRuleObjectiveDefinition -entryRuleObjectiveDefinition +// Entry rule entryRuleObjectiveDeclaration +entryRuleObjectiveDeclaration : -{ before(grammarAccess.getObjectiveDefinitionRule()); } - ruleObjectiveDefinition -{ after(grammarAccess.getObjectiveDefinitionRule()); } +{ before(grammarAccess.getObjectiveDeclarationRule()); } + ruleObjectiveDeclaration +{ after(grammarAccess.getObjectiveDeclarationRule()); } EOF ; -// Rule ObjectiveDefinition -ruleObjectiveDefinition +// Rule ObjectiveDeclaration +ruleObjectiveDeclaration @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getObjectiveDefinitionAccess().getGroup()); } - (rule__ObjectiveDefinition__Group__0) - { after(grammarAccess.getObjectiveDefinitionAccess().getGroup()); } + { before(grammarAccess.getObjectiveDeclarationAccess().getGroup()); } + (rule__ObjectiveDeclaration__Group__0) + { after(grammarAccess.getObjectiveDeclarationAccess().getGroup()); } ) ; finally { @@ -1593,6 +1773,31 @@ finally { myHiddenTokenState.restore(); } +// Entry rule entryRuleQualifiedNameSegment +entryRuleQualifiedNameSegment +: +{ before(grammarAccess.getQualifiedNameSegmentRule()); } + ruleQualifiedNameSegment +{ after(grammarAccess.getQualifiedNameSegmentRule()); } + EOF +; + +// Rule QualifiedNameSegment +ruleQualifiedNameSegment + @init { + int stackSize = keepStackSize(); + } + : + ( + { before(grammarAccess.getQualifiedNameSegmentAccess().getAlternatives()); } + (rule__QualifiedNameSegment__Alternatives) + { after(grammarAccess.getQualifiedNameSegmentAccess().getAlternatives()); } + ) +; +finally { + restoreStackSize(stackSize); +} + // Entry rule entryRuleQualifiedName entryRuleQualifiedName @init { @@ -1616,9 +1821,9 @@ ruleQualifiedName } : ( - { before(grammarAccess.getQualifiedNameAccess().getAlternatives()); } - (rule__QualifiedName__Alternatives) - { after(grammarAccess.getQualifiedNameAccess().getAlternatives()); } + { before(grammarAccess.getQualifiedNameAccess().getGroup()); } + (rule__QualifiedName__Group__0) + { after(grammarAccess.getQualifiedNameAccess().getGroup()); } ) ; finally { @@ -1626,16 +1831,16 @@ finally { myHiddenTokenState.restore(); } -// Rule ImplicationOperator -ruleImplicationOperator +// Rule AttributeKind +ruleAttributeKind @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration()); } - (EqualsSignGreaterThanSign) - { after(grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration()); } + { before(grammarAccess.getAttributeKindAccess().getAlternatives()); } + (rule__AttributeKind__Alternatives) + { after(grammarAccess.getAttributeKindAccess().getAlternatives()); } ) ; finally { @@ -1706,32 +1911,16 @@ finally { restoreStackSize(stackSize); } -// Rule UnaryOp -ruleUnaryOp - @init { - int stackSize = keepStackSize(); - } -: - ( - { before(grammarAccess.getUnaryOpAccess().getAlternatives()); } - (rule__UnaryOp__Alternatives) - { after(grammarAccess.getUnaryOpAccess().getAlternatives()); } - ) -; -finally { - restoreStackSize(stackSize); -} - -// Rule Quantifier -ruleQuantifier +// Rule UnaryOperator +ruleUnaryOperator @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifierAccess().getAlternatives()); } - (rule__Quantifier__Alternatives) - { after(grammarAccess.getQuantifierAccess().getAlternatives()); } + { before(grammarAccess.getUnaryOperatorAccess().getAlternatives()); } + (rule__UnaryOperator__Alternatives) + { after(grammarAccess.getUnaryOperatorAccess().getAlternatives()); } ) ; finally { @@ -1770,81 +1959,96 @@ finally { restoreStackSize(stackSize); } -rule__Statement__Alternatives_0 +rule__Statement__Alternatives @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0_0()); } + { before(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0()); } ruleAssertionOrDefinition - { after(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0_0()); } + { after(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0()); } ) | ( - { before(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_0_1()); } + { before(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_1()); } rulePredicateDefinition - { after(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_0_1()); } + { after(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_1()); } ) | ( - { before(grammarAccess.getStatementAccess().getUnnamedErrorPrediateDefinitionParserRuleCall_0_2()); } - ruleUnnamedErrorPrediateDefinition - { after(grammarAccess.getStatementAccess().getUnnamedErrorPrediateDefinitionParserRuleCall_0_2()); } + { before(grammarAccess.getStatementAccess().getUnnamedErrorPredicateDefintionParserRuleCall_2()); } + ruleUnnamedErrorPredicateDefintion + { after(grammarAccess.getStatementAccess().getUnnamedErrorPredicateDefintionParserRuleCall_2()); } ) | ( - { before(grammarAccess.getStatementAccess().getDefaultDefinitionParserRuleCall_0_3()); } - ruleDefaultDefinition - { after(grammarAccess.getStatementAccess().getDefaultDefinitionParserRuleCall_0_3()); } + { before(grammarAccess.getStatementAccess().getDefaultAssertionParserRuleCall_3()); } + ruleDefaultAssertion + { after(grammarAccess.getStatementAccess().getDefaultAssertionParserRuleCall_3()); } ) | ( - { before(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4()); } - ruleMetricDefinition - { after(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4()); } + { before(grammarAccess.getStatementAccess().getFunctionDefinitionParserRuleCall_4()); } + ruleFunctionDefinition + { after(grammarAccess.getStatementAccess().getFunctionDefinitionParserRuleCall_4()); } ) | ( - { before(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5()); } - ruleExternPredicateDefinition - { after(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5()); } + { before(grammarAccess.getStatementAccess().getAttributeParserRuleCall_5()); } + ruleAttribute + { after(grammarAccess.getStatementAccess().getAttributeParserRuleCall_5()); } ) | ( - { before(grammarAccess.getStatementAccess().getExternMetricDefinitionParserRuleCall_0_6()); } - ruleExternMetricDefinition - { after(grammarAccess.getStatementAccess().getExternMetricDefinitionParserRuleCall_0_6()); } + { before(grammarAccess.getStatementAccess().getExternDeclarationParserRuleCall_6()); } + ruleExternDeclaration + { after(grammarAccess.getStatementAccess().getExternDeclarationParserRuleCall_6()); } ) | ( - { before(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7()); } - ruleExternAggregatorDefinition - { after(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7()); } + { before(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_7()); } + ruleScopeDeclaration + { after(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_7()); } ) | ( - { before(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8()); } - ruleExternDatatypeDefinition - { after(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8()); } + { before(grammarAccess.getStatementAccess().getObjectiveDeclarationParserRuleCall_8()); } + ruleObjectiveDeclaration + { after(grammarAccess.getStatementAccess().getObjectiveDeclarationParserRuleCall_8()); } ) | ( - { before(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9()); } - ruleClassDefinition - { after(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9()); } + { before(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_9()); } + ruleClassDeclaration + { after(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_9()); } ) | ( - { before(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10()); } - ruleScopeDefinition - { after(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10()); } + { before(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_10()); } + ruleEnumDeclaration + { after(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_10()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__Import__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getImportAccess().getUriImportParserRuleCall_0()); } + ruleUriImport + { after(grammarAccess.getImportAccess().getUriImportParserRuleCall_0()); } ) | ( - { before(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11()); } - ruleObjectiveDefinition - { after(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11()); } + { before(grammarAccess.getImportAccess().getNamespaceImportParserRuleCall_1()); } + ruleNamespaceImport + { after(grammarAccess.getImportAccess().getNamespaceImportParserRuleCall_1()); } ) ; finally { @@ -1899,27 +2103,60 @@ finally { restoreStackSize(stackSize); } +rule__ExternDeclaration__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getExternDeclarationAccess().getExternPredicateDeclarationParserRuleCall_0()); } + ruleExternPredicateDeclaration + { after(grammarAccess.getExternDeclarationAccess().getExternPredicateDeclarationParserRuleCall_0()); } + ) + | + ( + { before(grammarAccess.getExternDeclarationAccess().getExternFunctionDeclarationParserRuleCall_1()); } + ruleExternFunctionDeclaration + { after(grammarAccess.getExternDeclarationAccess().getExternFunctionDeclarationParserRuleCall_1()); } + ) + | + ( + { before(grammarAccess.getExternDeclarationAccess().getExternAggregationOperatorDeclarationParserRuleCall_2()); } + ruleExternAggregationOperatorDeclaration + { after(grammarAccess.getExternDeclarationAccess().getExternAggregationOperatorDeclarationParserRuleCall_2()); } + ) + | + ( + { before(grammarAccess.getExternDeclarationAccess().getExternDatatypeDeclarationParserRuleCall_3()); } + ruleExternDatatypeDeclaration + { after(grammarAccess.getExternDeclarationAccess().getExternDatatypeDeclarationParserRuleCall_3()); } + ) +; +finally { + restoreStackSize(stackSize); +} + rule__Expression__Alternatives @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExpressionAccess().getIfElseParserRuleCall_0()); } - ruleIfElse - { after(grammarAccess.getExpressionAccess().getIfElseParserRuleCall_0()); } + { before(grammarAccess.getExpressionAccess().getConditionalExpressionParserRuleCall_0()); } + ruleConditionalExpression + { after(grammarAccess.getExpressionAccess().getConditionalExpressionParserRuleCall_0()); } ) | ( - { before(grammarAccess.getExpressionAccess().getLetParserRuleCall_1()); } - ruleLet - { after(grammarAccess.getExpressionAccess().getLetParserRuleCall_1()); } + { before(grammarAccess.getExpressionAccess().getLetExpressionParserRuleCall_1()); } + ruleLetExpression + { after(grammarAccess.getExpressionAccess().getLetExpressionParserRuleCall_1()); } ) | ( - { before(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2()); } - ruleImplicationExpression - { after(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2()); } + { before(grammarAccess.getExpressionAccess().getGroup_2()); } + (rule__Expression__Group_2__0) + { after(grammarAccess.getExpressionAccess().getGroup_2()); } ) ; finally { @@ -1953,9 +2190,9 @@ rule__UnaryExpression__Alternatives } : ( - { before(grammarAccess.getUnaryExpressionAccess().getAggregationExpressionParserRuleCall_0()); } - ruleAggregationExpression - { after(grammarAccess.getUnaryExpressionAccess().getAggregationExpressionParserRuleCall_0()); } + { before(grammarAccess.getUnaryExpressionAccess().getBracedAggregateExpressionParserRuleCall_0()); } + ruleBracedAggregateExpression + { after(grammarAccess.getUnaryExpressionAccess().getBracedAggregateExpressionParserRuleCall_0()); } ) | ( @@ -1968,27 +2205,27 @@ finally { restoreStackSize(stackSize); } -rule__AggregationExpression__Alternatives +rule__BracedAggregateExpression__Alternatives @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationExpressionAccess().getAtomicExpressionParserRuleCall_0()); } + { before(grammarAccess.getBracedAggregateExpressionAccess().getAtomicExpressionParserRuleCall_0()); } ruleAtomicExpression - { after(grammarAccess.getAggregationExpressionAccess().getAtomicExpressionParserRuleCall_0()); } + { after(grammarAccess.getBracedAggregateExpressionAccess().getAtomicExpressionParserRuleCall_0()); } ) | ( - { before(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1()); } - ruleQuantifiedExpression - { after(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1()); } + { before(grammarAccess.getBracedAggregateExpressionAccess().getAggregationParserRuleCall_1()); } + ruleAggregation + { after(grammarAccess.getBracedAggregateExpressionAccess().getAggregationParserRuleCall_1()); } ) | ( - { before(grammarAccess.getAggregationExpressionAccess().getAggregationParserRuleCall_2()); } - ruleAggregation - { after(grammarAccess.getAggregationExpressionAccess().getAggregationParserRuleCall_2()); } + { before(grammarAccess.getBracedAggregateExpressionAccess().getCountParserRuleCall_2()); } + ruleCount + { after(grammarAccess.getBracedAggregateExpressionAccess().getCountParserRuleCall_2()); } ) ; finally { @@ -2034,54 +2271,54 @@ finally { restoreStackSize(stackSize); } -rule__Call__Alternatives_1 +rule__Argument__Alternatives @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCallAccess().getTransitiveClosureAssignment_1_0()); } - (rule__Call__TransitiveClosureAssignment_1_0) - { after(grammarAccess.getCallAccess().getTransitiveClosureAssignment_1_0()); } + { before(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); } + ruleExpressionArgument + { after(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); } ) | ( - { before(grammarAccess.getCallAccess().getReflexiveTransitiveClosureAssignment_1_1()); } - (rule__Call__ReflexiveTransitiveClosureAssignment_1_1) - { after(grammarAccess.getCallAccess().getReflexiveTransitiveClosureAssignment_1_1()); } + { before(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); } + ruleStarArgument + { after(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); } ) -; -finally { - restoreStackSize(stackSize); -} - -rule__Argument__Alternatives - @init { - int stackSize = keepStackSize(); - } -: + | ( - { before(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); } - ruleExpressionArgument - { after(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); } + { before(grammarAccess.getArgumentAccess().getTypedVariableArgumentParserRuleCall_2()); } + ruleTypedVariableArgument + { after(grammarAccess.getArgumentAccess().getTypedVariableArgumentParserRuleCall_2()); } ) | ( - { before(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); } - ruleStarArgument - { after(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); } + { before(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); } + ruleTypedStarArgument + { after(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); } ) - | +; +finally { + restoreStackSize(stackSize); +} + +rule__PathComponent__Alternatives_2 + @init { + int stackSize = keepStackSize(); + } +: ( - { before(grammarAccess.getArgumentAccess().getTypedArgumentParserRuleCall_2()); } - ruleTypedArgument - { after(grammarAccess.getArgumentAccess().getTypedArgumentParserRuleCall_2()); } + { before(grammarAccess.getPathComponentAccess().getTransitiveClosureAssignment_2_0()); } + (rule__PathComponent__TransitiveClosureAssignment_2_0) + { after(grammarAccess.getPathComponentAccess().getTransitiveClosureAssignment_2_0()); } ) | ( - { before(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); } - ruleTypedStarArgument - { after(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); } + { before(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureAssignment_2_1()); } + (rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1) + { after(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureAssignment_2_1()); } ) ; finally { @@ -2100,27 +2337,75 @@ rule__Literal__Alternatives ) | ( - { before(grammarAccess.getLiteralAccess().getNumericLiteralParserRuleCall_1()); } - ruleNumericLiteral - { after(grammarAccess.getLiteralAccess().getNumericLiteralParserRuleCall_1()); } + { before(grammarAccess.getLiteralAccess().getIntLiteralParserRuleCall_1()); } + ruleIntLiteral + { after(grammarAccess.getLiteralAccess().getIntLiteralParserRuleCall_1()); } ) | ( - { before(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_2()); } + { before(grammarAccess.getLiteralAccess().getRealLiteralParserRuleCall_2()); } + ruleRealLiteral + { after(grammarAccess.getLiteralAccess().getRealLiteralParserRuleCall_2()); } + ) + | + ( + { before(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_3()); } ruleInfinityLiteral - { after(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_2()); } + { after(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_3()); } ) | ( - { before(grammarAccess.getLiteralAccess().getEmptyIntervalLiteralParserRuleCall_3()); } - ruleEmptyIntervalLiteral - { after(grammarAccess.getLiteralAccess().getEmptyIntervalLiteralParserRuleCall_3()); } + { before(grammarAccess.getLiteralAccess().getEmptyLiteralParserRuleCall_4()); } + ruleEmptyLiteral + { after(grammarAccess.getLiteralAccess().getEmptyLiteralParserRuleCall_4()); } ) | ( - { before(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_4()); } + { before(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_5()); } ruleStringLiteral - { after(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_4()); } + { after(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_5()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ClassDeclaration__Alternatives_4 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getClassDeclarationAccess().getGroup_4_0()); } + (rule__ClassDeclaration__Group_4_0__0) + { after(grammarAccess.getClassDeclarationAccess().getGroup_4_0()); } + ) + | + ( + { before(grammarAccess.getClassDeclarationAccess().getFULL_STOPTerminalRuleCall_4_1()); } + RULE_FULL_STOP + { after(grammarAccess.getClassDeclarationAccess().getFULL_STOPTerminalRuleCall_4_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__Field__Alternatives_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getFieldAccess().getContainmentAssignment_0_0()); } + (rule__Field__ContainmentAssignment_0_0) + { after(grammarAccess.getFieldAccess().getContainmentAssignment_0_0()); } + ) + | + ( + { before(grammarAccess.getFieldAccess().getCrossReferenceAssignment_0_1()); } + (rule__Field__CrossReferenceAssignment_0_1) + { after(grammarAccess.getFieldAccess().getCrossReferenceAssignment_0_1()); } ) ; finally { @@ -2133,9 +2418,9 @@ rule__Multiplicity__Alternatives } : ( - { before(grammarAccess.getMultiplicityAccess().getManyMultiplicityParserRuleCall_0()); } - ruleManyMultiplicity - { after(grammarAccess.getMultiplicityAccess().getManyMultiplicityParserRuleCall_0()); } + { before(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0()); } + ruleUnboundedMultiplicity + { after(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0()); } ) | ( @@ -2154,69 +2439,90 @@ finally { restoreStackSize(stackSize); } -rule__ScopeDefinition__Alternatives +rule__EnumDeclaration__Alternatives_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0()); } + (rule__EnumDeclaration__Group_2_0__0) + { after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0()); } + ) + | + ( + { before(grammarAccess.getEnumDeclarationAccess().getFULL_STOPTerminalRuleCall_2_1()); } + RULE_FULL_STOP + { after(grammarAccess.getEnumDeclarationAccess().getFULL_STOPTerminalRuleCall_2_1()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ScopeDeclaration__Alternatives @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getScopeDefinitionAccess().getExactScopeDefinitionParserRuleCall_0()); } - ruleExactScopeDefinition - { after(grammarAccess.getScopeDefinitionAccess().getExactScopeDefinitionParserRuleCall_0()); } + { before(grammarAccess.getScopeDeclarationAccess().getExactScopeParserRuleCall_0()); } + ruleExactScope + { after(grammarAccess.getScopeDeclarationAccess().getExactScopeParserRuleCall_0()); } ) | ( - { before(grammarAccess.getScopeDefinitionAccess().getBoundedScopeDefinitionParserRuleCall_1()); } - ruleBoundedScopeDefinition - { after(grammarAccess.getScopeDefinitionAccess().getBoundedScopeDefinitionParserRuleCall_1()); } + { before(grammarAccess.getScopeDeclarationAccess().getBoundedScopeParserRuleCall_1()); } + ruleBoundedScope + { after(grammarAccess.getScopeDeclarationAccess().getBoundedScopeParserRuleCall_1()); } ) | ( - { before(grammarAccess.getScopeDefinitionAccess().getLowerBoundedScopeDefinitionParserRuleCall_2()); } - ruleLowerBoundedScopeDefinition - { after(grammarAccess.getScopeDefinitionAccess().getLowerBoundedScopeDefinitionParserRuleCall_2()); } + { before(grammarAccess.getScopeDeclarationAccess().getLowerBoundedScopeParserRuleCall_2()); } + ruleLowerBoundedScope + { after(grammarAccess.getScopeDeclarationAccess().getLowerBoundedScopeParserRuleCall_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Alternatives_1 +rule__BoundedScope__Alternatives_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0()); } - (rule__BoundedScopeDefinition__Group_1_0__0) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0()); } + { before(grammarAccess.getBoundedScopeAccess().getGroup_1_0()); } + (rule__BoundedScope__Group_1_0__0) + { after(grammarAccess.getBoundedScopeAccess().getGroup_1_0()); } ) | ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1()); } - (rule__BoundedScopeDefinition__Group_1_1__0) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1()); } + { before(grammarAccess.getBoundedScopeAccess().getGroup_1_1()); } + (rule__BoundedScope__Group_1_1__0) + { after(grammarAccess.getBoundedScopeAccess().getGroup_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Alternatives_1 +rule__LowerBoundedScope__Alternatives_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_0()); } - (rule__LowerBoundedScopeDefinition__Group_1_0__0) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_0()); } + (rule__LowerBoundedScope__Group_1_0__0) + { after(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_0()); } ) | ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_1()); } - (rule__LowerBoundedScopeDefinition__Group_1_1__0) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_1()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_1()); } + (rule__LowerBoundedScope__Group_1_1__0) + { after(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_1()); } ) ; finally { @@ -2244,21 +2550,60 @@ finally { restoreStackSize(stackSize); } -rule__QualifiedName__Alternatives +rule__QualifiedNameSegment__Alternatives @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQualifiedNameAccess().getGroup_0()); } - (rule__QualifiedName__Group_0__0) - { after(grammarAccess.getQualifiedNameAccess().getGroup_0()); } + { before(grammarAccess.getQualifiedNameSegmentAccess().getIDTerminalRuleCall_0()); } + RULE_ID + { after(grammarAccess.getQualifiedNameSegmentAccess().getIDTerminalRuleCall_0()); } ) | ( - { before(grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_1()); } + { before(grammarAccess.getQualifiedNameSegmentAccess().getQUOTED_IDTerminalRuleCall_1()); } RULE_QUOTED_ID - { after(grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_1()); } + { after(grammarAccess.getQualifiedNameSegmentAccess().getQUOTED_IDTerminalRuleCall_1()); } + ) + | + ( + { before(grammarAccess.getQualifiedNameSegmentAccess().getObjectKeyword_2()); } + Object + { after(grammarAccess.getQualifiedNameSegmentAccess().getObjectKeyword_2()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__AttributeKind__Alternatives + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getAttributeKindAccess().getFUNCTIONALEnumLiteralDeclaration_0()); } + (Functional) + { after(grammarAccess.getAttributeKindAccess().getFUNCTIONALEnumLiteralDeclaration_0()); } + ) + | + ( + { before(grammarAccess.getAttributeKindAccess().getERROREnumLiteralDeclaration_1()); } + (Error) + { after(grammarAccess.getAttributeKindAccess().getERROREnumLiteralDeclaration_1()); } + ) + | + ( + { before(grammarAccess.getAttributeKindAccess().getROOTEnumLiteralDeclaration_2()); } + (Root) + { after(grammarAccess.getAttributeKindAccess().getROOTEnumLiteralDeclaration_2()); } + ) + | + ( + { before(grammarAccess.getAttributeKindAccess().getCONTAINMENTEnumLiteralDeclaration_3()); } + (Containment) + { after(grammarAccess.getAttributeKindAccess().getCONTAINMENTEnumLiteralDeclaration_3()); } ) ; finally { @@ -2271,15 +2616,15 @@ rule__ComparisonOperator__Alternatives } : ( - { before(grammarAccess.getComparisonOperatorAccess().getEQEnumLiteralDeclaration_0()); } + { before(grammarAccess.getComparisonOperatorAccess().getEQUALSEnumLiteralDeclaration_0()); } (EqualsSignEqualsSign) - { after(grammarAccess.getComparisonOperatorAccess().getEQEnumLiteralDeclaration_0()); } + { after(grammarAccess.getComparisonOperatorAccess().getEQUALSEnumLiteralDeclaration_0()); } ) | ( - { before(grammarAccess.getComparisonOperatorAccess().getNOT_EQEnumLiteralDeclaration_1()); } + { before(grammarAccess.getComparisonOperatorAccess().getNOT_EQUALSEnumLiteralDeclaration_1()); } (ExclamationMarkEqualsSign) - { after(grammarAccess.getComparisonOperatorAccess().getNOT_EQEnumLiteralDeclaration_1()); } + { after(grammarAccess.getComparisonOperatorAccess().getNOT_EQUALSEnumLiteralDeclaration_1()); } ) | ( @@ -2289,9 +2634,9 @@ rule__ComparisonOperator__Alternatives ) | ( - { before(grammarAccess.getComparisonOperatorAccess().getLESS_EQEnumLiteralDeclaration_3()); } + { before(grammarAccess.getComparisonOperatorAccess().getLESS_EQUALSEnumLiteralDeclaration_3()); } (LessThanSignEqualsSign) - { after(grammarAccess.getComparisonOperatorAccess().getLESS_EQEnumLiteralDeclaration_3()); } + { after(grammarAccess.getComparisonOperatorAccess().getLESS_EQUALSEnumLiteralDeclaration_3()); } ) | ( @@ -2301,9 +2646,9 @@ rule__ComparisonOperator__Alternatives ) | ( - { before(grammarAccess.getComparisonOperatorAccess().getGREATER_EQEnumLiteralDeclaration_5()); } + { before(grammarAccess.getComparisonOperatorAccess().getGREATER_EQUALSEnumLiteralDeclaration_5()); } (GreaterThanSignEqualsSign) - { after(grammarAccess.getComparisonOperatorAccess().getGREATER_EQEnumLiteralDeclaration_5()); } + { after(grammarAccess.getComparisonOperatorAccess().getGREATER_EQUALSEnumLiteralDeclaration_5()); } ) | ( @@ -2322,15 +2667,15 @@ rule__AdditiveBinaryOperator__Alternatives } : ( - { before(grammarAccess.getAdditiveBinaryOperatorAccess().getADDEnumLiteralDeclaration_0()); } + { before(grammarAccess.getAdditiveBinaryOperatorAccess().getPLUSEnumLiteralDeclaration_0()); } (PlusSign) - { after(grammarAccess.getAdditiveBinaryOperatorAccess().getADDEnumLiteralDeclaration_0()); } + { after(grammarAccess.getAdditiveBinaryOperatorAccess().getPLUSEnumLiteralDeclaration_0()); } ) | ( - { before(grammarAccess.getAdditiveBinaryOperatorAccess().getSUBEnumLiteralDeclaration_1()); } + { before(grammarAccess.getAdditiveBinaryOperatorAccess().getMINUSEnumLiteralDeclaration_1()); } (HyphenMinus) - { after(grammarAccess.getAdditiveBinaryOperatorAccess().getSUBEnumLiteralDeclaration_1()); } + { after(grammarAccess.getAdditiveBinaryOperatorAccess().getMINUSEnumLiteralDeclaration_1()); } ) ; finally { @@ -2343,87 +2688,48 @@ rule__MultiplicativeBinaryOperator__Alternatives } : ( - { before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULEnumLiteralDeclaration_0()); } + { before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULTIPLYEnumLiteralDeclaration_0()); } (Asterisk) - { after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULEnumLiteralDeclaration_0()); } + { after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULTIPLYEnumLiteralDeclaration_0()); } ) | ( - { before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVEnumLiteralDeclaration_1()); } + { before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVIDEEnumLiteralDeclaration_1()); } (Solidus) - { after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVEnumLiteralDeclaration_1()); } + { after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVIDEEnumLiteralDeclaration_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__UnaryOp__Alternatives +rule__UnaryOperator__Alternatives @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnaryOpAccess().getNEGEnumLiteralDeclaration_0()); } + { before(grammarAccess.getUnaryOperatorAccess().getNOTEnumLiteralDeclaration_0()); } (ExclamationMark) - { after(grammarAccess.getUnaryOpAccess().getNEGEnumLiteralDeclaration_0()); } + { after(grammarAccess.getUnaryOperatorAccess().getNOTEnumLiteralDeclaration_0()); } ) | ( - { before(grammarAccess.getUnaryOpAccess().getPLUSEnumLiteralDeclaration_1()); } + { before(grammarAccess.getUnaryOperatorAccess().getPLUSEnumLiteralDeclaration_1()); } (PlusSign) - { after(grammarAccess.getUnaryOpAccess().getPLUSEnumLiteralDeclaration_1()); } + { after(grammarAccess.getUnaryOperatorAccess().getPLUSEnumLiteralDeclaration_1()); } ) | ( - { before(grammarAccess.getUnaryOpAccess().getMINUSEnumLiteralDeclaration_2()); } + { before(grammarAccess.getUnaryOperatorAccess().getMINUSEnumLiteralDeclaration_2()); } (HyphenMinus) - { after(grammarAccess.getUnaryOpAccess().getMINUSEnumLiteralDeclaration_2()); } - ) - | - ( - { before(grammarAccess.getUnaryOpAccess().getMAYEnumLiteralDeclaration_3()); } - (May) - { after(grammarAccess.getUnaryOpAccess().getMAYEnumLiteralDeclaration_3()); } - ) - | - ( - { before(grammarAccess.getUnaryOpAccess().getMUSTEnumLiteralDeclaration_4()); } - (Must) - { after(grammarAccess.getUnaryOpAccess().getMUSTEnumLiteralDeclaration_4()); } - ) - | - ( - { before(grammarAccess.getUnaryOpAccess().getCURRENTEnumLiteralDeclaration_5()); } - (Current) - { after(grammarAccess.getUnaryOpAccess().getCURRENTEnumLiteralDeclaration_5()); } - ) -; -finally { - restoreStackSize(stackSize); -} - -rule__Quantifier__Alternatives - @init { - int stackSize = keepStackSize(); - } -: - ( - { before(grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0()); } - (Exists) - { after(grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0()); } - ) - | - ( - { before(grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1()); } - (Forall) - { after(grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1()); } + { after(grammarAccess.getUnaryOperatorAccess().getMINUSEnumLiteralDeclaration_2()); } ) | ( - { before(grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2()); } - (Count) - { after(grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2()); } + { before(grammarAccess.getUnaryOperatorAccess().getMAYBEEnumLiteralDeclaration_3()); } + (QuestionMark) + { after(grammarAccess.getUnaryOperatorAccess().getMAYBEEnumLiteralDeclaration_3()); } ) ; finally { @@ -2469,284 +2775,284 @@ rule__ObjectiveKind__Alternatives } : ( - { before(grammarAccess.getObjectiveKindAccess().getMINIMIZEEnumLiteralDeclaration_0()); } + { before(grammarAccess.getObjectiveKindAccess().getMINIMIZATIONEnumLiteralDeclaration_0()); } (Minimize) - { after(grammarAccess.getObjectiveKindAccess().getMINIMIZEEnumLiteralDeclaration_0()); } + { after(grammarAccess.getObjectiveKindAccess().getMINIMIZATIONEnumLiteralDeclaration_0()); } ) | ( - { before(grammarAccess.getObjectiveKindAccess().getMAXIMIZEEnumLiteralDeclaration_1()); } + { before(grammarAccess.getObjectiveKindAccess().getMAXIMIZATIONEnumLiteralDeclaration_1()); } (Maximize) - { after(grammarAccess.getObjectiveKindAccess().getMAXIMIZEEnumLiteralDeclaration_1()); } + { after(grammarAccess.getObjectiveKindAccess().getMAXIMIZATIONEnumLiteralDeclaration_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__Statement__Group__0 +rule__Problem__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Statement__Group__0__Impl - rule__Statement__Group__1 + rule__Problem__Group__0__Impl + rule__Problem__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Statement__Group__0__Impl +rule__Problem__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getStatementAccess().getAlternatives_0()); } - (rule__Statement__Alternatives_0) - { after(grammarAccess.getStatementAccess().getAlternatives_0()); } + { before(grammarAccess.getProblemAccess().getGroup_0()); } + (rule__Problem__Group_0__0)? + { after(grammarAccess.getProblemAccess().getGroup_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Statement__Group__1 +rule__Problem__Group__1 @init { int stackSize = keepStackSize(); } : - rule__Statement__Group__1__Impl + rule__Problem__Group__1__Impl + rule__Problem__Group__2 ; finally { restoreStackSize(stackSize); } -rule__Statement__Group__1__Impl +rule__Problem__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getStatementAccess().getFULL_STOPTerminalRuleCall_1()); } - RULE_FULL_STOP - { after(grammarAccess.getStatementAccess().getFULL_STOPTerminalRuleCall_1()); } + { before(grammarAccess.getProblemAccess().getImportsAssignment_1()); } + (rule__Problem__ImportsAssignment_1)* + { after(grammarAccess.getProblemAccess().getImportsAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__AssertionOrDefinition__Group__0 +rule__Problem__Group__2 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group__0__Impl - rule__AssertionOrDefinition__Group__1 + rule__Problem__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group__0__Impl +rule__Problem__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); } - ruleExpression - { after(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); } + { before(grammarAccess.getProblemAccess().getStatementsAssignment_2()); } + (rule__Problem__StatementsAssignment_2)* + { after(grammarAccess.getProblemAccess().getStatementsAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group__1 + +rule__Problem__Group_0__0 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group__1__Impl + rule__Problem__Group_0__0__Impl + rule__Problem__Group_0__1 ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group__1__Impl +rule__Problem__Group_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); } - (rule__AssertionOrDefinition__Alternatives_1)? - { after(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); } + { before(grammarAccess.getProblemAccess().getProblemKeyword_0_0()); } + Problem + { after(grammarAccess.getProblemAccess().getProblemKeyword_0_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__AssertionOrDefinition__Group_1_0__0 +rule__Problem__Group_0__1 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_0__0__Impl - rule__AssertionOrDefinition__Group_1_0__1 + rule__Problem__Group_0__1__Impl + rule__Problem__Group_0__2 ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_0__0__Impl +rule__Problem__Group_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0()); } - () - { after(grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0()); } + { before(grammarAccess.getProblemAccess().getNameAssignment_0_1()); } + (rule__Problem__NameAssignment_0_1) + { after(grammarAccess.getProblemAccess().getNameAssignment_0_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_0__1 +rule__Problem__Group_0__2 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_0__1__Impl - rule__AssertionOrDefinition__Group_1_0__2 + rule__Problem__Group_0__2__Impl ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_0__1__Impl +rule__Problem__Group_0__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1()); } - Colon - { after(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1()); } + { before(grammarAccess.getProblemAccess().getFULL_STOPTerminalRuleCall_0_2()); } + RULE_FULL_STOP + { after(grammarAccess.getProblemAccess().getFULL_STOPTerminalRuleCall_0_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_0__2 + +rule__UriImport__Group__0 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_0__2__Impl + rule__UriImport__Group__0__Impl + rule__UriImport__Group__1 ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_0__2__Impl +rule__UriImport__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_2()); } - (rule__AssertionOrDefinition__RangeAssignment_1_0_2) - { after(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_2()); } + { before(grammarAccess.getUriImportAccess().getImportKeyword_0()); } + Import + { after(grammarAccess.getUriImportAccess().getImportKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__AssertionOrDefinition__Group_1_1__0 +rule__UriImport__Group__1 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_1__0__Impl - rule__AssertionOrDefinition__Group_1_1__1 + rule__UriImport__Group__1__Impl + rule__UriImport__Group__2 ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_1__0__Impl +rule__UriImport__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0()); } - () - { after(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0()); } + { before(grammarAccess.getUriImportAccess().getUriAssignment_1()); } + (rule__UriImport__UriAssignment_1) + { after(grammarAccess.getUriImportAccess().getUriAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_1__1 +rule__UriImport__Group__2 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_1__1__Impl - rule__AssertionOrDefinition__Group_1_1__2 + rule__UriImport__Group__2__Impl + rule__UriImport__Group__3 ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_1__1__Impl +rule__UriImport__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); } - ColonHyphenMinus - { after(grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); } + { before(grammarAccess.getUriImportAccess().getGroup_2()); } + (rule__UriImport__Group_2__0) + { after(grammarAccess.getUriImportAccess().getGroup_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_1__2 +rule__UriImport__Group__3 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_1__2__Impl + rule__UriImport__Group__3__Impl ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_1__2__Impl +rule__UriImport__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2()); } - (rule__AssertionOrDefinition__BodyAssignment_1_1_2) - { after(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2()); } + { before(grammarAccess.getUriImportAccess().getFULL_STOPTerminalRuleCall_3()); } + RULE_FULL_STOP + { after(grammarAccess.getUriImportAccess().getFULL_STOPTerminalRuleCall_3()); } ) ; finally { @@ -2754,296 +3060,296 @@ finally { } -rule__AssertionOrDefinition__Group_1_2__0 +rule__UriImport__Group_2__0 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_2__0__Impl - rule__AssertionOrDefinition__Group_1_2__1 + rule__UriImport__Group_2__0__Impl + rule__UriImport__Group_2__1 ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_2__0__Impl +rule__UriImport__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getMetricDefinitionHeadAction_1_2_0()); } - () - { after(grammarAccess.getAssertionOrDefinitionAccess().getMetricDefinitionHeadAction_1_2_0()); } + { before(grammarAccess.getUriImportAccess().getAsKeyword_2_0()); } + As + { after(grammarAccess.getUriImportAccess().getAsKeyword_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_2__1 +rule__UriImport__Group_2__1 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_2__1__Impl - rule__AssertionOrDefinition__Group_1_2__2 + rule__UriImport__Group_2__1__Impl ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_2__1__Impl +rule__UriImport__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getEqualsSignKeyword_1_2_1()); } - EqualsSign - { after(grammarAccess.getAssertionOrDefinitionAccess().getEqualsSignKeyword_1_2_1()); } + { before(grammarAccess.getUriImportAccess().getAliasAssignment_2_1()); } + (rule__UriImport__AliasAssignment_2_1) + { after(grammarAccess.getUriImportAccess().getAliasAssignment_2_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_2__2 + +rule__NamespaceImport__Group__0 @init { int stackSize = keepStackSize(); } : - rule__AssertionOrDefinition__Group_1_2__2__Impl + rule__NamespaceImport__Group__0__Impl + rule__NamespaceImport__Group__1 ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__Group_1_2__2__Impl +rule__NamespaceImport__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2()); } - (rule__AssertionOrDefinition__BodyAssignment_1_2_2) - { after(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2()); } + { before(grammarAccess.getNamespaceImportAccess().getImportKeyword_0()); } + Import + { after(grammarAccess.getNamespaceImportAccess().getImportKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__PredicateDefinition__Group__0 +rule__NamespaceImport__Group__1 @init { int stackSize = keepStackSize(); } : - rule__PredicateDefinition__Group__0__Impl - rule__PredicateDefinition__Group__1 + rule__NamespaceImport__Group__1__Impl + rule__NamespaceImport__Group__2 ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group__0__Impl +rule__NamespaceImport__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); } - (rule__PredicateDefinition__Alternatives_0) - { after(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); } + { before(grammarAccess.getNamespaceImportAccess().getImportedNamespaceAssignment_1()); } + (rule__NamespaceImport__ImportedNamespaceAssignment_1) + { after(grammarAccess.getNamespaceImportAccess().getImportedNamespaceAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group__1 +rule__NamespaceImport__Group__2 @init { int stackSize = keepStackSize(); } : - rule__PredicateDefinition__Group__1__Impl - rule__PredicateDefinition__Group__2 + rule__NamespaceImport__Group__2__Impl + rule__NamespaceImport__Group__3 ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group__1__Impl +rule__NamespaceImport__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1()); } - (rule__PredicateDefinition__HeadAssignment_1) - { after(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1()); } + { before(grammarAccess.getNamespaceImportAccess().getGroup_2()); } + (rule__NamespaceImport__Group_2__0) + { after(grammarAccess.getNamespaceImportAccess().getGroup_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group__2 +rule__NamespaceImport__Group__3 @init { int stackSize = keepStackSize(); } : - rule__PredicateDefinition__Group__2__Impl - rule__PredicateDefinition__Group__3 + rule__NamespaceImport__Group__3__Impl ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group__2__Impl +rule__NamespaceImport__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); } - ColonHyphenMinus - { after(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); } + { before(grammarAccess.getNamespaceImportAccess().getFULL_STOPTerminalRuleCall_3()); } + RULE_FULL_STOP + { after(grammarAccess.getNamespaceImportAccess().getFULL_STOPTerminalRuleCall_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group__3 + +rule__NamespaceImport__Group_2__0 @init { int stackSize = keepStackSize(); } : - rule__PredicateDefinition__Group__3__Impl + rule__NamespaceImport__Group_2__0__Impl + rule__NamespaceImport__Group_2__1 ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group__3__Impl +rule__NamespaceImport__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3()); } - (rule__PredicateDefinition__BodyAssignment_3) - { after(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3()); } + { before(grammarAccess.getNamespaceImportAccess().getAsKeyword_2_0()); } + As + { after(grammarAccess.getNamespaceImportAccess().getAsKeyword_2_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__PredicateDefinition__Group_0_0__0 +rule__NamespaceImport__Group_2__1 @init { int stackSize = keepStackSize(); } : - rule__PredicateDefinition__Group_0_0__0__Impl - rule__PredicateDefinition__Group_0_0__1 + rule__NamespaceImport__Group_2__1__Impl ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group_0_0__0__Impl +rule__NamespaceImport__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0()); } - (rule__PredicateDefinition__FunctionalAssignment_0_0_0) - { after(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0()); } + { before(grammarAccess.getNamespaceImportAccess().getAliasAssignment_2_1()); } + (rule__NamespaceImport__AliasAssignment_2_1) + { after(grammarAccess.getNamespaceImportAccess().getAliasAssignment_2_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group_0_0__1 + +rule__AssertionOrDefinition__Group__0 @init { int stackSize = keepStackSize(); } : - rule__PredicateDefinition__Group_0_0__1__Impl + rule__AssertionOrDefinition__Group__0__Impl + rule__AssertionOrDefinition__Group__1 ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group_0_0__1__Impl +rule__AssertionOrDefinition__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_1()); } - (rule__PredicateDefinition__ErrorAssignment_0_0_1)? - { after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_1()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); } + ruleExpression + { after(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__PredicateDefinition__Group_0_1__0 +rule__AssertionOrDefinition__Group__1 @init { int stackSize = keepStackSize(); } : - rule__PredicateDefinition__Group_0_1__0__Impl - rule__PredicateDefinition__Group_0_1__1 + rule__AssertionOrDefinition__Group__1__Impl + rule__AssertionOrDefinition__Group__2 ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group_0_1__0__Impl +rule__AssertionOrDefinition__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_1_0()); } - (rule__PredicateDefinition__ErrorAssignment_0_1_0) - { after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_1_0()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); } + (rule__AssertionOrDefinition__Alternatives_1) + { after(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group_0_1__1 +rule__AssertionOrDefinition__Group__2 @init { int stackSize = keepStackSize(); } : - rule__PredicateDefinition__Group_0_1__1__Impl + rule__AssertionOrDefinition__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__PredicateDefinition__Group_0_1__1__Impl +rule__AssertionOrDefinition__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1()); } - (rule__PredicateDefinition__FunctionalAssignment_0_1_1)? - { after(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getFULL_STOPTerminalRuleCall_2()); } + RULE_FULL_STOP + { after(grammarAccess.getAssertionOrDefinitionAccess().getFULL_STOPTerminalRuleCall_2()); } ) ; finally { @@ -3051,107 +3357,107 @@ finally { } -rule__UnnamedErrorPrediateDefinition__Group__0 +rule__AssertionOrDefinition__Group_1_0__0 @init { int stackSize = keepStackSize(); } : - rule__UnnamedErrorPrediateDefinition__Group__0__Impl - rule__UnnamedErrorPrediateDefinition__Group__1 + rule__AssertionOrDefinition__Group_1_0__0__Impl + rule__AssertionOrDefinition__Group_1_0__1 ; finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__Group__0__Impl +rule__AssertionOrDefinition__Group_1_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getErrorKeyword_0()); } - Error - { after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getErrorKeyword_0()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getAssertionExpressionAction_1_0_0()); } + () + { after(grammarAccess.getAssertionOrDefinitionAccess().getAssertionExpressionAction_1_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__Group__1 +rule__AssertionOrDefinition__Group_1_0__1 @init { int stackSize = keepStackSize(); } : - rule__UnnamedErrorPrediateDefinition__Group__1__Impl - rule__UnnamedErrorPrediateDefinition__Group__2 + rule__AssertionOrDefinition__Group_1_0__1__Impl ; finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__Group__1__Impl +rule__AssertionOrDefinition__Group_1_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListAssignment_1()); } - (rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1) - { after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListAssignment_1()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0_1()); } + (rule__AssertionOrDefinition__Group_1_0_1__0)? + { after(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__Group__2 + +rule__AssertionOrDefinition__Group_1_0_1__0 @init { int stackSize = keepStackSize(); } : - rule__UnnamedErrorPrediateDefinition__Group__2__Impl - rule__UnnamedErrorPrediateDefinition__Group__3 + rule__AssertionOrDefinition__Group_1_0_1__0__Impl + rule__AssertionOrDefinition__Group_1_0_1__1 ; finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__Group__2__Impl +rule__AssertionOrDefinition__Group_1_0_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getColonHyphenMinusKeyword_2()); } - ColonHyphenMinus - { after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getColonHyphenMinusKeyword_2()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0()); } + Colon + { after(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__Group__3 +rule__AssertionOrDefinition__Group_1_0_1__1 @init { int stackSize = keepStackSize(); } : - rule__UnnamedErrorPrediateDefinition__Group__3__Impl + rule__AssertionOrDefinition__Group_1_0_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__Group__3__Impl +rule__AssertionOrDefinition__Group_1_0_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyAssignment_3()); } - (rule__UnnamedErrorPrediateDefinition__BodyAssignment_3) - { after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyAssignment_3()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_1_1()); } + (rule__AssertionOrDefinition__RangeAssignment_1_0_1_1) + { after(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_1_1()); } ) ; finally { @@ -3159,296 +3465,296 @@ finally { } -rule__DefaultDefinition__Group__0 +rule__AssertionOrDefinition__Group_1_1__0 @init { int stackSize = keepStackSize(); } : - rule__DefaultDefinition__Group__0__Impl - rule__DefaultDefinition__Group__1 + rule__AssertionOrDefinition__Group_1_1__0__Impl + rule__AssertionOrDefinition__Group_1_1__1 ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__Group__0__Impl +rule__AssertionOrDefinition__Group_1_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDefaultDefinitionAccess().getDefaultKeyword_0()); } - Default - { after(grammarAccess.getDefaultDefinitionAccess().getDefaultKeyword_0()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0()); } + () + { after(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__Group__1 +rule__AssertionOrDefinition__Group_1_1__1 @init { int stackSize = keepStackSize(); } : - rule__DefaultDefinition__Group__1__Impl - rule__DefaultDefinition__Group__2 + rule__AssertionOrDefinition__Group_1_1__1__Impl + rule__AssertionOrDefinition__Group_1_1__2 ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__Group__1__Impl +rule__AssertionOrDefinition__Group_1_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDefaultDefinitionAccess().getHeadAssignment_1()); } - (rule__DefaultDefinition__HeadAssignment_1) - { after(grammarAccess.getDefaultDefinitionAccess().getHeadAssignment_1()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); } + ColonHyphenMinus + { after(grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__Group__2 +rule__AssertionOrDefinition__Group_1_1__2 @init { int stackSize = keepStackSize(); } : - rule__DefaultDefinition__Group__2__Impl - rule__DefaultDefinition__Group__3 + rule__AssertionOrDefinition__Group_1_1__2__Impl ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__Group__2__Impl +rule__AssertionOrDefinition__Group_1_1__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDefaultDefinitionAccess().getColonKeyword_2()); } - Colon - { after(grammarAccess.getDefaultDefinitionAccess().getColonKeyword_2()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2()); } + (rule__AssertionOrDefinition__BodyAssignment_1_1_2) + { after(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__Group__3 + +rule__AssertionOrDefinition__Group_1_2__0 @init { int stackSize = keepStackSize(); } : - rule__DefaultDefinition__Group__3__Impl + rule__AssertionOrDefinition__Group_1_2__0__Impl + rule__AssertionOrDefinition__Group_1_2__1 ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__Group__3__Impl +rule__AssertionOrDefinition__Group_1_2__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDefaultDefinitionAccess().getRangeAssignment_3()); } - (rule__DefaultDefinition__RangeAssignment_3) - { after(grammarAccess.getDefaultDefinitionAccess().getRangeAssignment_3()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getFunctionDefinitionHeadAction_1_2_0()); } + () + { after(grammarAccess.getAssertionOrDefinitionAccess().getFunctionDefinitionHeadAction_1_2_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__MetricDefinition__Group__0 +rule__AssertionOrDefinition__Group_1_2__1 @init { int stackSize = keepStackSize(); } : - rule__MetricDefinition__Group__0__Impl - rule__MetricDefinition__Group__1 + rule__AssertionOrDefinition__Group_1_2__1__Impl + rule__AssertionOrDefinition__Group_1_2__2 ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__Group__0__Impl +rule__AssertionOrDefinition__Group_1_2__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0()); } - (rule__MetricDefinition__TypeAssignment_0) - { after(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getColonEqualsSignKeyword_1_2_1()); } + ColonEqualsSign + { after(grammarAccess.getAssertionOrDefinitionAccess().getColonEqualsSignKeyword_1_2_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__Group__1 +rule__AssertionOrDefinition__Group_1_2__2 @init { int stackSize = keepStackSize(); } : - rule__MetricDefinition__Group__1__Impl - rule__MetricDefinition__Group__2 + rule__AssertionOrDefinition__Group_1_2__2__Impl ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__Group__1__Impl +rule__AssertionOrDefinition__Group_1_2__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1()); } - (rule__MetricDefinition__HeadAssignment_1) - { after(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2()); } + (rule__AssertionOrDefinition__BodyAssignment_1_2_2) + { after(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__Group__2 + +rule__PredicateDefinition__Group__0 @init { int stackSize = keepStackSize(); } : - rule__MetricDefinition__Group__2__Impl - rule__MetricDefinition__Group__3 + rule__PredicateDefinition__Group__0__Impl + rule__PredicateDefinition__Group__1 ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__Group__2__Impl +rule__PredicateDefinition__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); } - EqualsSign - { after(grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); } + { before(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); } + (rule__PredicateDefinition__Alternatives_0) + { after(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__Group__3 +rule__PredicateDefinition__Group__1 @init { int stackSize = keepStackSize(); } : - rule__MetricDefinition__Group__3__Impl + rule__PredicateDefinition__Group__1__Impl + rule__PredicateDefinition__Group__2 ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__Group__3__Impl +rule__PredicateDefinition__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3()); } - (rule__MetricDefinition__BodyAssignment_3) - { after(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3()); } + { before(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1()); } + (rule__PredicateDefinition__HeadAssignment_1) + { after(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ExternPredicateDefinition__Group__0 +rule__PredicateDefinition__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ExternPredicateDefinition__Group__0__Impl - rule__ExternPredicateDefinition__Group__1 + rule__PredicateDefinition__Group__2__Impl + rule__PredicateDefinition__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ExternPredicateDefinition__Group__0__Impl +rule__PredicateDefinition__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); } - Extern - { after(grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); } + { before(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); } + ColonHyphenMinus + { after(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternPredicateDefinition__Group__1 +rule__PredicateDefinition__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ExternPredicateDefinition__Group__1__Impl - rule__ExternPredicateDefinition__Group__2 + rule__PredicateDefinition__Group__3__Impl + rule__PredicateDefinition__Group__4 ; finally { restoreStackSize(stackSize); } -rule__ExternPredicateDefinition__Group__1__Impl +rule__PredicateDefinition__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternPredicateDefinitionAccess().getNameAssignment_1()); } - (rule__ExternPredicateDefinition__NameAssignment_1) - { after(grammarAccess.getExternPredicateDefinitionAccess().getNameAssignment_1()); } + { before(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3()); } + (rule__PredicateDefinition__BodyAssignment_3) + { after(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternPredicateDefinition__Group__2 +rule__PredicateDefinition__Group__4 @init { int stackSize = keepStackSize(); } : - rule__ExternPredicateDefinition__Group__2__Impl + rule__PredicateDefinition__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__ExternPredicateDefinition__Group__2__Impl +rule__PredicateDefinition__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListAssignment_2()); } - (rule__ExternPredicateDefinition__ArgumentListAssignment_2) - { after(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListAssignment_2()); } + { before(grammarAccess.getPredicateDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); } + RULE_FULL_STOP + { after(grammarAccess.getPredicateDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); } ) ; finally { @@ -3456,107 +3762,107 @@ finally { } -rule__ExternMetricDefinition__Group__0 +rule__PredicateDefinition__Group_0_0__0 @init { int stackSize = keepStackSize(); } : - rule__ExternMetricDefinition__Group__0__Impl - rule__ExternMetricDefinition__Group__1 + rule__PredicateDefinition__Group_0_0__0__Impl + rule__PredicateDefinition__Group_0_0__1 ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__Group__0__Impl +rule__PredicateDefinition__Group_0_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternMetricDefinitionAccess().getExternKeyword_0()); } - Extern - { after(grammarAccess.getExternMetricDefinitionAccess().getExternKeyword_0()); } + { before(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0()); } + (rule__PredicateDefinition__FunctionalAssignment_0_0_0) + { after(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__Group__1 +rule__PredicateDefinition__Group_0_0__1 @init { int stackSize = keepStackSize(); } : - rule__ExternMetricDefinition__Group__1__Impl - rule__ExternMetricDefinition__Group__2 + rule__PredicateDefinition__Group_0_0__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__Group__1__Impl +rule__PredicateDefinition__Group_0_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternMetricDefinitionAccess().getTypeAssignment_1()); } - (rule__ExternMetricDefinition__TypeAssignment_1) - { after(grammarAccess.getExternMetricDefinitionAccess().getTypeAssignment_1()); } + { before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_1()); } + (rule__PredicateDefinition__ErrorAssignment_0_0_1)? + { after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__Group__2 + +rule__PredicateDefinition__Group_0_1__0 @init { int stackSize = keepStackSize(); } : - rule__ExternMetricDefinition__Group__2__Impl - rule__ExternMetricDefinition__Group__3 + rule__PredicateDefinition__Group_0_1__0__Impl + rule__PredicateDefinition__Group_0_1__1 ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__Group__2__Impl +rule__PredicateDefinition__Group_0_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternMetricDefinitionAccess().getNameAssignment_2()); } - (rule__ExternMetricDefinition__NameAssignment_2) - { after(grammarAccess.getExternMetricDefinitionAccess().getNameAssignment_2()); } + { before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_1_0()); } + (rule__PredicateDefinition__ErrorAssignment_0_1_0) + { after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__Group__3 +rule__PredicateDefinition__Group_0_1__1 @init { int stackSize = keepStackSize(); } : - rule__ExternMetricDefinition__Group__3__Impl + rule__PredicateDefinition__Group_0_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__Group__3__Impl +rule__PredicateDefinition__Group_0_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternMetricDefinitionAccess().getArgumentListAssignment_3()); } - (rule__ExternMetricDefinition__ArgumentListAssignment_3) - { after(grammarAccess.getExternMetricDefinitionAccess().getArgumentListAssignment_3()); } + { before(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1()); } + (rule__PredicateDefinition__FunctionalAssignment_0_1_1)? + { after(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1()); } ) ; finally { @@ -3564,296 +3870,296 @@ finally { } -rule__ExternAggregatorDefinition__Group__0 +rule__UnnamedErrorPredicateDefintion__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ExternAggregatorDefinition__Group__0__Impl - rule__ExternAggregatorDefinition__Group__1 + rule__UnnamedErrorPredicateDefintion__Group__0__Impl + rule__UnnamedErrorPredicateDefintion__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__0__Impl +rule__UnnamedErrorPredicateDefintion__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0()); } - Extern - { after(grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0()); } + { before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getErrorKeyword_0()); } + Error + { after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getErrorKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__1 +rule__UnnamedErrorPredicateDefintion__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ExternAggregatorDefinition__Group__1__Impl - rule__ExternAggregatorDefinition__Group__2 + rule__UnnamedErrorPredicateDefintion__Group__1__Impl + rule__UnnamedErrorPredicateDefintion__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__1__Impl +rule__UnnamedErrorPredicateDefintion__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeAssignment_1()); } - (rule__ExternAggregatorDefinition__TypeAssignment_1) - { after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeAssignment_1()); } + { before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListAssignment_1()); } + (rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1) + { after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__2 +rule__UnnamedErrorPredicateDefintion__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ExternAggregatorDefinition__Group__2__Impl - rule__ExternAggregatorDefinition__Group__3 + rule__UnnamedErrorPredicateDefintion__Group__2__Impl + rule__UnnamedErrorPredicateDefintion__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__2__Impl +rule__UnnamedErrorPredicateDefintion__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getNameAssignment_2()); } - (rule__ExternAggregatorDefinition__NameAssignment_2) - { after(grammarAccess.getExternAggregatorDefinitionAccess().getNameAssignment_2()); } + { before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getColonHyphenMinusKeyword_2()); } + ColonHyphenMinus + { after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getColonHyphenMinusKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__3 +rule__UnnamedErrorPredicateDefintion__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ExternAggregatorDefinition__Group__3__Impl - rule__ExternAggregatorDefinition__Group__4 + rule__UnnamedErrorPredicateDefintion__Group__3__Impl + rule__UnnamedErrorPredicateDefintion__Group__4 ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__3__Impl +rule__UnnamedErrorPredicateDefintion__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3()); } - LeftCurlyBracket - { after(grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3()); } + { before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyAssignment_3()); } + (rule__UnnamedErrorPredicateDefintion__BodyAssignment_3) + { after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__4 +rule__UnnamedErrorPredicateDefintion__Group__4 @init { int stackSize = keepStackSize(); } : - rule__ExternAggregatorDefinition__Group__4__Impl - rule__ExternAggregatorDefinition__Group__5 + rule__UnnamedErrorPredicateDefintion__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__4__Impl +rule__UnnamedErrorPredicateDefintion__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeAssignment_4()); } - (rule__ExternAggregatorDefinition__InputTypeAssignment_4) - { after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeAssignment_4()); } + { before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getFULL_STOPTerminalRuleCall_4()); } + RULE_FULL_STOP + { after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getFULL_STOPTerminalRuleCall_4()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__5 + +rule__DefaultAssertion__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ExternAggregatorDefinition__Group__5__Impl - rule__ExternAggregatorDefinition__Group__6 + rule__DefaultAssertion__Group__0__Impl + rule__DefaultAssertion__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__5__Impl +rule__DefaultAssertion__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5()); } - FullStopFullStopFullStop - { after(grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5()); } + { before(grammarAccess.getDefaultAssertionAccess().getDefaultKeyword_0()); } + Default + { after(grammarAccess.getDefaultAssertionAccess().getDefaultKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__6 +rule__DefaultAssertion__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ExternAggregatorDefinition__Group__6__Impl + rule__DefaultAssertion__Group__1__Impl + rule__DefaultAssertion__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__Group__6__Impl +rule__DefaultAssertion__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6()); } - RightCurlyBracket - { after(grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6()); } + { before(grammarAccess.getDefaultAssertionAccess().getExpressionAssignment_1()); } + (rule__DefaultAssertion__ExpressionAssignment_1) + { after(grammarAccess.getDefaultAssertionAccess().getExpressionAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ExternDatatypeDefinition__Group__0 +rule__DefaultAssertion__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group__0__Impl - rule__ExternDatatypeDefinition__Group__1 + rule__DefaultAssertion__Group__2__Impl + rule__DefaultAssertion__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group__0__Impl +rule__DefaultAssertion__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0()); } - Extern - { after(grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0()); } + { before(grammarAccess.getDefaultAssertionAccess().getGroup_2()); } + (rule__DefaultAssertion__Group_2__0)? + { after(grammarAccess.getDefaultAssertionAccess().getGroup_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group__1 +rule__DefaultAssertion__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group__1__Impl - rule__ExternDatatypeDefinition__Group__2 + rule__DefaultAssertion__Group__3__Impl ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group__1__Impl +rule__DefaultAssertion__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1()); } - Datatype - { after(grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1()); } + { before(grammarAccess.getDefaultAssertionAccess().getFULL_STOPTerminalRuleCall_3()); } + RULE_FULL_STOP + { after(grammarAccess.getDefaultAssertionAccess().getFULL_STOPTerminalRuleCall_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group__2 + +rule__DefaultAssertion__Group_2__0 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group__2__Impl - rule__ExternDatatypeDefinition__Group__3 + rule__DefaultAssertion__Group_2__0__Impl + rule__DefaultAssertion__Group_2__1 ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group__2__Impl +rule__DefaultAssertion__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getNameAssignment_2()); } - (rule__ExternDatatypeDefinition__NameAssignment_2) - { after(grammarAccess.getExternDatatypeDefinitionAccess().getNameAssignment_2()); } + { before(grammarAccess.getDefaultAssertionAccess().getColonKeyword_2_0()); } + Colon + { after(grammarAccess.getDefaultAssertionAccess().getColonKeyword_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group__3 +rule__DefaultAssertion__Group_2__1 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group__3__Impl + rule__DefaultAssertion__Group_2__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group__3__Impl +rule__DefaultAssertion__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3()); } - (rule__ExternDatatypeDefinition__Group_3__0) - { after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3()); } + { before(grammarAccess.getDefaultAssertionAccess().getRangeAssignment_2_1()); } + (rule__DefaultAssertion__RangeAssignment_2_1) + { after(grammarAccess.getDefaultAssertionAccess().getRangeAssignment_2_1()); } ) ; finally { @@ -3861,134 +4167,134 @@ finally { } -rule__ExternDatatypeDefinition__Group_3__0 +rule__FunctionDefinition__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group_3__0__Impl - rule__ExternDatatypeDefinition__Group_3__1 + rule__FunctionDefinition__Group__0__Impl + rule__FunctionDefinition__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group_3__0__Impl +rule__FunctionDefinition__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0()); } - Extends - { after(grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0()); } + { before(grammarAccess.getFunctionDefinitionAccess().getResultTypeAssignment_0()); } + (rule__FunctionDefinition__ResultTypeAssignment_0) + { after(grammarAccess.getFunctionDefinitionAccess().getResultTypeAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group_3__1 +rule__FunctionDefinition__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group_3__1__Impl - rule__ExternDatatypeDefinition__Group_3__2 + rule__FunctionDefinition__Group__1__Impl + rule__FunctionDefinition__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group_3__1__Impl +rule__FunctionDefinition__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_1()); } - (rule__ExternDatatypeDefinition__SupertypesAssignment_3_1) - { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_1()); } + { before(grammarAccess.getFunctionDefinitionAccess().getHeadAssignment_1()); } + (rule__FunctionDefinition__HeadAssignment_1) + { after(grammarAccess.getFunctionDefinitionAccess().getHeadAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group_3__2 +rule__FunctionDefinition__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group_3__2__Impl + rule__FunctionDefinition__Group__2__Impl + rule__FunctionDefinition__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group_3__2__Impl +rule__FunctionDefinition__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3_2()); } - (rule__ExternDatatypeDefinition__Group_3_2__0)* - { after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3_2()); } + { before(grammarAccess.getFunctionDefinitionAccess().getColonEqualsSignKeyword_2()); } + ColonEqualsSign + { after(grammarAccess.getFunctionDefinitionAccess().getColonEqualsSignKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ExternDatatypeDefinition__Group_3_2__0 +rule__FunctionDefinition__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group_3_2__0__Impl - rule__ExternDatatypeDefinition__Group_3_2__1 + rule__FunctionDefinition__Group__3__Impl + rule__FunctionDefinition__Group__4 ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group_3_2__0__Impl +rule__FunctionDefinition__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0()); } - Comma - { after(grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0()); } + { before(grammarAccess.getFunctionDefinitionAccess().getBodyAssignment_3()); } + (rule__FunctionDefinition__BodyAssignment_3) + { after(grammarAccess.getFunctionDefinitionAccess().getBodyAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group_3_2__1 +rule__FunctionDefinition__Group__4 @init { int stackSize = keepStackSize(); } : - rule__ExternDatatypeDefinition__Group_3_2__1__Impl + rule__FunctionDefinition__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__Group_3_2__1__Impl +rule__FunctionDefinition__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_2_1()); } - (rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1) - { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_2_1()); } + { before(grammarAccess.getFunctionDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); } + RULE_FULL_STOP + { after(grammarAccess.getFunctionDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); } ) ; finally { @@ -3996,53 +4302,53 @@ finally { } -rule__Variable__Group__0 +rule__TypeReference__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Variable__Group__0__Impl - rule__Variable__Group__1 + rule__TypeReference__Group__0__Impl + rule__TypeReference__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Variable__Group__0__Impl +rule__TypeReference__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getVariableAccess().getTypeAssignment_0()); } - (rule__Variable__TypeAssignment_0)? - { after(grammarAccess.getVariableAccess().getTypeAssignment_0()); } + { before(grammarAccess.getTypeReferenceAccess().getTypeAssignment_0()); } + (rule__TypeReference__TypeAssignment_0) + { after(grammarAccess.getTypeReferenceAccess().getTypeAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Variable__Group__1 +rule__TypeReference__Group__1 @init { int stackSize = keepStackSize(); } : - rule__Variable__Group__1__Impl + rule__TypeReference__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__Variable__Group__1__Impl +rule__TypeReference__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getVariableAccess().getNameAssignment_1()); } - (rule__Variable__NameAssignment_1) - { after(grammarAccess.getVariableAccess().getNameAssignment_1()); } + { before(grammarAccess.getTypeReferenceAccess().getForceObjectTypeAssignment_1()); } + (rule__TypeReference__ForceObjectTypeAssignment_1)? + { after(grammarAccess.getTypeReferenceAccess().getForceObjectTypeAssignment_1()); } ) ; finally { @@ -4050,350 +4356,350 @@ finally { } -rule__IfElse__Group__0 +rule__Attribute__Group__0 @init { int stackSize = keepStackSize(); } : - rule__IfElse__Group__0__Impl - rule__IfElse__Group__1 + rule__Attribute__Group__0__Impl + rule__Attribute__Group__1 ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__0__Impl +rule__Attribute__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getIfKeyword_0()); } - If - { after(grammarAccess.getIfElseAccess().getIfKeyword_0()); } + { before(grammarAccess.getAttributeAccess().getKindAssignment_0()); } + (rule__Attribute__KindAssignment_0) + { after(grammarAccess.getAttributeAccess().getKindAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__1 +rule__Attribute__Group__1 @init { int stackSize = keepStackSize(); } : - rule__IfElse__Group__1__Impl - rule__IfElse__Group__2 + rule__Attribute__Group__1__Impl + rule__Attribute__Group__2 ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__1__Impl +rule__Attribute__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getConditionAssignment_1()); } - (rule__IfElse__ConditionAssignment_1) - { after(grammarAccess.getIfElseAccess().getConditionAssignment_1()); } + { before(grammarAccess.getAttributeAccess().getTargetAssignment_1()); } + (rule__Attribute__TargetAssignment_1) + { after(grammarAccess.getAttributeAccess().getTargetAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__2 +rule__Attribute__Group__2 @init { int stackSize = keepStackSize(); } : - rule__IfElse__Group__2__Impl - rule__IfElse__Group__3 + rule__Attribute__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__2__Impl +rule__Attribute__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getThenKeyword_2()); } - Then - { after(grammarAccess.getIfElseAccess().getThenKeyword_2()); } + { before(grammarAccess.getAttributeAccess().getFULL_STOPTerminalRuleCall_2()); } + RULE_FULL_STOP + { after(grammarAccess.getAttributeAccess().getFULL_STOPTerminalRuleCall_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__3 + +rule__ExternPredicateDeclaration__Group__0 @init { int stackSize = keepStackSize(); } : - rule__IfElse__Group__3__Impl - rule__IfElse__Group__4 + rule__ExternPredicateDeclaration__Group__0__Impl + rule__ExternPredicateDeclaration__Group__1 ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__3__Impl +rule__ExternPredicateDeclaration__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getThenAssignment_3()); } - (rule__IfElse__ThenAssignment_3) - { after(grammarAccess.getIfElseAccess().getThenAssignment_3()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getExternKeyword_0()); } + Extern + { after(grammarAccess.getExternPredicateDeclarationAccess().getExternKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__4 +rule__ExternPredicateDeclaration__Group__1 @init { int stackSize = keepStackSize(); } : - rule__IfElse__Group__4__Impl - rule__IfElse__Group__5 + rule__ExternPredicateDeclaration__Group__1__Impl + rule__ExternPredicateDeclaration__Group__2 ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__4__Impl +rule__ExternPredicateDeclaration__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getElseKeyword_4()); } - Else - { after(grammarAccess.getIfElseAccess().getElseKeyword_4()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); } + (rule__ExternPredicateDeclaration__UnorderedGroup_1) + { after(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__5 +rule__ExternPredicateDeclaration__Group__2 @init { int stackSize = keepStackSize(); } : - rule__IfElse__Group__5__Impl + rule__ExternPredicateDeclaration__Group__2__Impl + rule__ExternPredicateDeclaration__Group__3 ; finally { restoreStackSize(stackSize); } -rule__IfElse__Group__5__Impl +rule__ExternPredicateDeclaration__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getElseAssignment_5()); } - (rule__IfElse__ElseAssignment_5) - { after(grammarAccess.getIfElseAccess().getElseAssignment_5()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getNameAssignment_2()); } + (rule__ExternPredicateDeclaration__NameAssignment_2) + { after(grammarAccess.getExternPredicateDeclarationAccess().getNameAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } - -rule__Let__Group__0 +rule__ExternPredicateDeclaration__Group__3 @init { int stackSize = keepStackSize(); } : - rule__Let__Group__0__Impl - rule__Let__Group__1 + rule__ExternPredicateDeclaration__Group__3__Impl + rule__ExternPredicateDeclaration__Group__4 ; finally { restoreStackSize(stackSize); } -rule__Let__Group__0__Impl +rule__ExternPredicateDeclaration__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getLetKeyword_0()); } - Let - { after(grammarAccess.getLetAccess().getLetKeyword_0()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListAssignment_3()); } + (rule__ExternPredicateDeclaration__ArgumentListAssignment_3) + { after(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__Let__Group__1 +rule__ExternPredicateDeclaration__Group__4 @init { int stackSize = keepStackSize(); } : - rule__Let__Group__1__Impl - rule__Let__Group__2 + rule__ExternPredicateDeclaration__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__Let__Group__1__Impl +rule__ExternPredicateDeclaration__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getBindingsAssignment_1()); } - (rule__Let__BindingsAssignment_1) - { after(grammarAccess.getLetAccess().getBindingsAssignment_1()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); } + RULE_FULL_STOP + { after(grammarAccess.getExternPredicateDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); } ) ; finally { restoreStackSize(stackSize); } -rule__Let__Group__2 + +rule__ExternFunctionDeclaration__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Let__Group__2__Impl - rule__Let__Group__3 + rule__ExternFunctionDeclaration__Group__0__Impl + rule__ExternFunctionDeclaration__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Let__Group__2__Impl +rule__ExternFunctionDeclaration__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getGroup_2()); } - (rule__Let__Group_2__0)* - { after(grammarAccess.getLetAccess().getGroup_2()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getExternKeyword_0()); } + Extern + { after(grammarAccess.getExternFunctionDeclarationAccess().getExternKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Let__Group__3 +rule__ExternFunctionDeclaration__Group__1 @init { int stackSize = keepStackSize(); } : - rule__Let__Group__3__Impl - rule__Let__Group__4 + rule__ExternFunctionDeclaration__Group__1__Impl + rule__ExternFunctionDeclaration__Group__2 ; finally { restoreStackSize(stackSize); } -rule__Let__Group__3__Impl +rule__ExternFunctionDeclaration__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getInKeyword_3()); } - In - { after(grammarAccess.getLetAccess().getInKeyword_3()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeAssignment_1()); } + (rule__ExternFunctionDeclaration__ResultTypeAssignment_1) + { after(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__Let__Group__4 +rule__ExternFunctionDeclaration__Group__2 @init { int stackSize = keepStackSize(); } : - rule__Let__Group__4__Impl + rule__ExternFunctionDeclaration__Group__2__Impl + rule__ExternFunctionDeclaration__Group__3 ; finally { restoreStackSize(stackSize); } -rule__Let__Group__4__Impl +rule__ExternFunctionDeclaration__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getBodyAssignment_4()); } - (rule__Let__BodyAssignment_4) - { after(grammarAccess.getLetAccess().getBodyAssignment_4()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getNameAssignment_2()); } + (rule__ExternFunctionDeclaration__NameAssignment_2) + { after(grammarAccess.getExternFunctionDeclarationAccess().getNameAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } - -rule__Let__Group_2__0 +rule__ExternFunctionDeclaration__Group__3 @init { int stackSize = keepStackSize(); } : - rule__Let__Group_2__0__Impl - rule__Let__Group_2__1 + rule__ExternFunctionDeclaration__Group__3__Impl + rule__ExternFunctionDeclaration__Group__4 ; finally { restoreStackSize(stackSize); } -rule__Let__Group_2__0__Impl +rule__ExternFunctionDeclaration__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getCommaKeyword_2_0()); } - Comma - { after(grammarAccess.getLetAccess().getCommaKeyword_2_0()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListAssignment_3()); } + (rule__ExternFunctionDeclaration__ArgumentListAssignment_3) + { after(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__Let__Group_2__1 +rule__ExternFunctionDeclaration__Group__4 @init { int stackSize = keepStackSize(); } : - rule__Let__Group_2__1__Impl + rule__ExternFunctionDeclaration__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__Let__Group_2__1__Impl +rule__ExternFunctionDeclaration__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getBindingsAssignment_2_1()); } - (rule__Let__BindingsAssignment_2_1) - { after(grammarAccess.getLetAccess().getBindingsAssignment_2_1()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); } + RULE_FULL_STOP + { after(grammarAccess.getExternFunctionDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); } ) ; finally { @@ -4401,215 +4707,215 @@ finally { } -rule__LetBinding__Group__0 +rule__ExternAggregationOperatorDeclaration__Group__0 @init { int stackSize = keepStackSize(); } : - rule__LetBinding__Group__0__Impl - rule__LetBinding__Group__1 + rule__ExternAggregationOperatorDeclaration__Group__0__Impl + rule__ExternAggregationOperatorDeclaration__Group__1 ; finally { restoreStackSize(stackSize); } -rule__LetBinding__Group__0__Impl +rule__ExternAggregationOperatorDeclaration__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetBindingAccess().getVariableAssignment_0()); } - (rule__LetBinding__VariableAssignment_0) - { after(grammarAccess.getLetBindingAccess().getVariableAssignment_0()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getExternKeyword_0()); } + Extern + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getExternKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LetBinding__Group__1 +rule__ExternAggregationOperatorDeclaration__Group__1 @init { int stackSize = keepStackSize(); } : - rule__LetBinding__Group__1__Impl - rule__LetBinding__Group__2 + rule__ExternAggregationOperatorDeclaration__Group__1__Impl + rule__ExternAggregationOperatorDeclaration__Group__2 ; finally { restoreStackSize(stackSize); } -rule__LetBinding__Group__1__Impl +rule__ExternAggregationOperatorDeclaration__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1()); } - EqualsSign - { after(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeAssignment_1()); } + (rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1) + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__LetBinding__Group__2 +rule__ExternAggregationOperatorDeclaration__Group__2 @init { int stackSize = keepStackSize(); } : - rule__LetBinding__Group__2__Impl + rule__ExternAggregationOperatorDeclaration__Group__2__Impl + rule__ExternAggregationOperatorDeclaration__Group__3 ; finally { restoreStackSize(stackSize); } -rule__LetBinding__Group__2__Impl +rule__ExternAggregationOperatorDeclaration__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetBindingAccess().getValueAssignment_2()); } - (rule__LetBinding__ValueAssignment_2) - { after(grammarAccess.getLetBindingAccess().getValueAssignment_2()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameAssignment_2()); } + (rule__ExternAggregationOperatorDeclaration__NameAssignment_2) + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ImplicationExpression__Group__0 +rule__ExternAggregationOperatorDeclaration__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ImplicationExpression__Group__0__Impl - rule__ImplicationExpression__Group__1 + rule__ExternAggregationOperatorDeclaration__Group__3__Impl + rule__ExternAggregationOperatorDeclaration__Group__4 ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__Group__0__Impl +rule__ExternAggregationOperatorDeclaration__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0()); } - ruleDisjunctiveExpression - { after(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getLeftCurlyBracketKeyword_3()); } + LeftCurlyBracket + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getLeftCurlyBracketKeyword_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__Group__1 +rule__ExternAggregationOperatorDeclaration__Group__4 @init { int stackSize = keepStackSize(); } : - rule__ImplicationExpression__Group__1__Impl + rule__ExternAggregationOperatorDeclaration__Group__4__Impl + rule__ExternAggregationOperatorDeclaration__Group__5 ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__Group__1__Impl +rule__ExternAggregationOperatorDeclaration__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getImplicationExpressionAccess().getGroup_1()); } - (rule__ImplicationExpression__Group_1__0)? - { after(grammarAccess.getImplicationExpressionAccess().getGroup_1()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeAssignment_4()); } + (rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4) + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeAssignment_4()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ImplicationExpression__Group_1__0 +rule__ExternAggregationOperatorDeclaration__Group__5 @init { int stackSize = keepStackSize(); } : - rule__ImplicationExpression__Group_1__0__Impl - rule__ImplicationExpression__Group_1__1 + rule__ExternAggregationOperatorDeclaration__Group__5__Impl + rule__ExternAggregationOperatorDeclaration__Group__6 ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__Group_1__0__Impl +rule__ExternAggregationOperatorDeclaration__Group__5__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0()); } - () - { after(grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getFullStopFullStopFullStopKeyword_5()); } + FullStopFullStopFullStop + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getFullStopFullStopFullStopKeyword_5()); } ) ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__Group_1__1 +rule__ExternAggregationOperatorDeclaration__Group__6 @init { int stackSize = keepStackSize(); } : - rule__ImplicationExpression__Group_1__1__Impl - rule__ImplicationExpression__Group_1__2 + rule__ExternAggregationOperatorDeclaration__Group__6__Impl + rule__ExternAggregationOperatorDeclaration__Group__7 ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__Group_1__1__Impl +rule__ExternAggregationOperatorDeclaration__Group__6__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getImplicationExpressionAccess().getOpAssignment_1_1()); } - (rule__ImplicationExpression__OpAssignment_1_1) - { after(grammarAccess.getImplicationExpressionAccess().getOpAssignment_1_1()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getRightCurlyBracketKeyword_6()); } + RightCurlyBracket + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getRightCurlyBracketKeyword_6()); } ) ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__Group_1__2 +rule__ExternAggregationOperatorDeclaration__Group__7 @init { int stackSize = keepStackSize(); } : - rule__ImplicationExpression__Group_1__2__Impl + rule__ExternAggregationOperatorDeclaration__Group__7__Impl ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__Group_1__2__Impl +rule__ExternAggregationOperatorDeclaration__Group__7__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getImplicationExpressionAccess().getRightAssignment_1_2()); } - (rule__ImplicationExpression__RightAssignment_1_2) - { after(grammarAccess.getImplicationExpressionAccess().getRightAssignment_1_2()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getFULL_STOPTerminalRuleCall_7()); } + RULE_FULL_STOP + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getFULL_STOPTerminalRuleCall_7()); } ) ; finally { @@ -4617,114 +4923,107 @@ finally { } -rule__DisjunctiveExpression__Group__0 +rule__ExternDatatypeDeclaration__Group__0 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group__0__Impl - rule__DisjunctiveExpression__Group__1 + rule__ExternDatatypeDeclaration__Group__0__Impl + rule__ExternDatatypeDeclaration__Group__1 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group__0__Impl +rule__ExternDatatypeDeclaration__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); } - ruleConjunctiveExpression - { after(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); } + { before(grammarAccess.getExternDatatypeDeclarationAccess().getExternKeyword_0()); } + Extern + { after(grammarAccess.getExternDatatypeDeclarationAccess().getExternKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group__1 +rule__ExternDatatypeDeclaration__Group__1 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group__1__Impl + rule__ExternDatatypeDeclaration__Group__1__Impl + rule__ExternDatatypeDeclaration__Group__2 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group__1__Impl +rule__ExternDatatypeDeclaration__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1()); } - (rule__DisjunctiveExpression__Alternatives_1)? - { after(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1()); } + { before(grammarAccess.getExternDatatypeDeclarationAccess().getDatatypeKeyword_1()); } + Datatype + { after(grammarAccess.getExternDatatypeDeclarationAccess().getDatatypeKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__DisjunctiveExpression__Group_1_0__0 +rule__ExternDatatypeDeclaration__Group__2 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_0__0__Impl - rule__DisjunctiveExpression__Group_1_0__1 + rule__ExternDatatypeDeclaration__Group__2__Impl + rule__ExternDatatypeDeclaration__Group__3 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_0__0__Impl +rule__ExternDatatypeDeclaration__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getDisjunctionChildrenAction_1_0_0()); } - () - { after(grammarAccess.getDisjunctiveExpressionAccess().getDisjunctionChildrenAction_1_0_0()); } + { before(grammarAccess.getExternDatatypeDeclarationAccess().getNameAssignment_2()); } + (rule__ExternDatatypeDeclaration__NameAssignment_2) + { after(grammarAccess.getExternDatatypeDeclarationAccess().getNameAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_0__1 +rule__ExternDatatypeDeclaration__Group__3 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_0__1__Impl + rule__ExternDatatypeDeclaration__Group__3__Impl ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_0__1__Impl +rule__ExternDatatypeDeclaration__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); } - (rule__DisjunctiveExpression__Group_1_0_1__0) - { after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); } - ) - ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); } - (rule__DisjunctiveExpression__Group_1_0_1__0)* - { after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); } - ) + { before(grammarAccess.getExternDatatypeDeclarationAccess().getFULL_STOPTerminalRuleCall_3()); } + RULE_FULL_STOP + { after(grammarAccess.getExternDatatypeDeclarationAccess().getFULL_STOPTerminalRuleCall_3()); } ) ; finally { @@ -4732,53 +5031,53 @@ finally { } -rule__DisjunctiveExpression__Group_1_0_1__0 +rule__Expression__Group_2__0 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_0_1__0__Impl - rule__DisjunctiveExpression__Group_1_0_1__1 + rule__Expression__Group_2__0__Impl + rule__Expression__Group_2__1 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_0_1__0__Impl +rule__Expression__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); } - Semicolon - { after(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); } + { before(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_2_0()); } + ruleDisjunctiveExpression + { after(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_0_1__1 +rule__Expression__Group_2__1 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_0_1__1__Impl + rule__Expression__Group_2__1__Impl ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_0_1__1__Impl +rule__Expression__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1()); } - (rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1) - { after(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1()); } + { before(grammarAccess.getExpressionAccess().getGroup_2_1()); } + (rule__Expression__Group_2_1__0)? + { after(grammarAccess.getExpressionAccess().getGroup_2_1()); } ) ; finally { @@ -4786,384 +5085,377 @@ finally { } -rule__DisjunctiveExpression__Group_1_1__0 +rule__Expression__Group_2_1__0 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_1__0__Impl - rule__DisjunctiveExpression__Group_1_1__1 + rule__Expression__Group_2_1__0__Impl + rule__Expression__Group_2_1__1 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__0__Impl +rule__Expression__Group_2_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getCaseConditionAction_1_1_0()); } + { before(grammarAccess.getExpressionAccess().getForallConditionAction_2_1_0()); } () - { after(grammarAccess.getDisjunctiveExpressionAccess().getCaseConditionAction_1_1_0()); } + { after(grammarAccess.getExpressionAccess().getForallConditionAction_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__1 +rule__Expression__Group_2_1__1 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_1__1__Impl - rule__DisjunctiveExpression__Group_1_1__2 + rule__Expression__Group_2_1__1__Impl + rule__Expression__Group_2_1__2 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__1__Impl +rule__Expression__Group_2_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); } - HyphenMinusGreaterThanSign - { after(grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); } + { before(grammarAccess.getExpressionAccess().getEqualsSignGreaterThanSignKeyword_2_1_1()); } + EqualsSignGreaterThanSign + { after(grammarAccess.getExpressionAccess().getEqualsSignGreaterThanSignKeyword_2_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__2 +rule__Expression__Group_2_1__2 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_1__2__Impl - rule__DisjunctiveExpression__Group_1_1__3 + rule__Expression__Group_2_1__2__Impl ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__2__Impl +rule__Expression__Group_2_1__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2()); } - (rule__DisjunctiveExpression__BodyAssignment_1_1_2) - { after(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2()); } + { before(grammarAccess.getExpressionAccess().getBodyAssignment_2_1_2()); } + (rule__Expression__BodyAssignment_2_1_2) + { after(grammarAccess.getExpressionAccess().getBodyAssignment_2_1_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__3 + +rule__ConditionalExpression__Group__0 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_1__3__Impl - rule__DisjunctiveExpression__Group_1_1__4 + rule__ConditionalExpression__Group__0__Impl + rule__ConditionalExpression__Group__1 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__3__Impl +rule__ConditionalExpression__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getSwitchCasesAction_1_1_3()); } - () - { after(grammarAccess.getDisjunctiveExpressionAccess().getSwitchCasesAction_1_1_3()); } + { before(grammarAccess.getConditionalExpressionAccess().getIfKeyword_0()); } + If + { after(grammarAccess.getConditionalExpressionAccess().getIfKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__4 +rule__ConditionalExpression__Group__1 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_1__4__Impl + rule__ConditionalExpression__Group__1__Impl + rule__ConditionalExpression__Group__2 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1__4__Impl +rule__ConditionalExpression__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1_4()); } - (rule__DisjunctiveExpression__Group_1_1_4__0)* - { after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1_4()); } + { before(grammarAccess.getConditionalExpressionAccess().getConditionAssignment_1()); } + (rule__ConditionalExpression__ConditionAssignment_1) + { after(grammarAccess.getConditionalExpressionAccess().getConditionAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__DisjunctiveExpression__Group_1_1_4__0 +rule__ConditionalExpression__Group__2 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_1_4__0__Impl - rule__DisjunctiveExpression__Group_1_1_4__1 + rule__ConditionalExpression__Group__2__Impl + rule__ConditionalExpression__Group__3 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1_4__0__Impl +rule__ConditionalExpression__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); } - Semicolon - { after(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); } + { before(grammarAccess.getConditionalExpressionAccess().getThenKeyword_2()); } + Then + { after(grammarAccess.getConditionalExpressionAccess().getThenKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1_4__1 +rule__ConditionalExpression__Group__3 @init { int stackSize = keepStackSize(); } : - rule__DisjunctiveExpression__Group_1_1_4__1__Impl + rule__ConditionalExpression__Group__3__Impl + rule__ConditionalExpression__Group__4 ; finally { restoreStackSize(stackSize); } -rule__DisjunctiveExpression__Group_1_1_4__1__Impl +rule__ConditionalExpression__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1()); } - (rule__DisjunctiveExpression__CasesAssignment_1_1_4_1) - { after(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1()); } + { before(grammarAccess.getConditionalExpressionAccess().getThenAssignment_3()); } + (rule__ConditionalExpression__ThenAssignment_3) + { after(grammarAccess.getConditionalExpressionAccess().getThenAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } - -rule__Case__Group__0 +rule__ConditionalExpression__Group__4 @init { int stackSize = keepStackSize(); } : - rule__Case__Group__0__Impl - rule__Case__Group__1 + rule__ConditionalExpression__Group__4__Impl + rule__ConditionalExpression__Group__5 ; finally { restoreStackSize(stackSize); } -rule__Case__Group__0__Impl +rule__ConditionalExpression__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCaseAccess().getConditionAssignment_0()); } - (rule__Case__ConditionAssignment_0) - { after(grammarAccess.getCaseAccess().getConditionAssignment_0()); } + { before(grammarAccess.getConditionalExpressionAccess().getElseKeyword_4()); } + Else + { after(grammarAccess.getConditionalExpressionAccess().getElseKeyword_4()); } ) ; finally { restoreStackSize(stackSize); } -rule__Case__Group__1 +rule__ConditionalExpression__Group__5 @init { int stackSize = keepStackSize(); } : - rule__Case__Group__1__Impl - rule__Case__Group__2 + rule__ConditionalExpression__Group__5__Impl ; finally { restoreStackSize(stackSize); } -rule__Case__Group__1__Impl +rule__ConditionalExpression__Group__5__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); } - HyphenMinusGreaterThanSign - { after(grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); } + { before(grammarAccess.getConditionalExpressionAccess().getElseAssignment_5()); } + (rule__ConditionalExpression__ElseAssignment_5) + { after(grammarAccess.getConditionalExpressionAccess().getElseAssignment_5()); } ) ; finally { restoreStackSize(stackSize); } -rule__Case__Group__2 + +rule__LetExpression__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Case__Group__2__Impl + rule__LetExpression__Group__0__Impl + rule__LetExpression__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Case__Group__2__Impl +rule__LetExpression__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCaseAccess().getBodyAssignment_2()); } - (rule__Case__BodyAssignment_2) - { after(grammarAccess.getCaseAccess().getBodyAssignment_2()); } + { before(grammarAccess.getLetExpressionAccess().getLetKeyword_0()); } + Let + { after(grammarAccess.getLetExpressionAccess().getLetKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ConjunctiveExpression__Group__0 +rule__LetExpression__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ConjunctiveExpression__Group__0__Impl - rule__ConjunctiveExpression__Group__1 + rule__LetExpression__Group__1__Impl + rule__LetExpression__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group__0__Impl +rule__LetExpression__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); } - ruleComparisonExpression - { after(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); } + { before(grammarAccess.getLetExpressionAccess().getBindingsAssignment_1()); } + (rule__LetExpression__BindingsAssignment_1) + { after(grammarAccess.getLetExpressionAccess().getBindingsAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group__1 +rule__LetExpression__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ConjunctiveExpression__Group__1__Impl + rule__LetExpression__Group__2__Impl + rule__LetExpression__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group__1__Impl +rule__LetExpression__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1()); } - (rule__ConjunctiveExpression__Group_1__0)? - { after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1()); } + { before(grammarAccess.getLetExpressionAccess().getGroup_2()); } + (rule__LetExpression__Group_2__0)* + { after(grammarAccess.getLetExpressionAccess().getGroup_2()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ConjunctiveExpression__Group_1__0 +rule__LetExpression__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ConjunctiveExpression__Group_1__0__Impl - rule__ConjunctiveExpression__Group_1__1 + rule__LetExpression__Group__3__Impl + rule__LetExpression__Group__4 ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group_1__0__Impl +rule__LetExpression__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getConjunctiveExpressionAccess().getConjunctionChildrenAction_1_0()); } - () - { after(grammarAccess.getConjunctiveExpressionAccess().getConjunctionChildrenAction_1_0()); } + { before(grammarAccess.getLetExpressionAccess().getInKeyword_3()); } + In + { after(grammarAccess.getLetExpressionAccess().getInKeyword_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group_1__1 +rule__LetExpression__Group__4 @init { int stackSize = keepStackSize(); } : - rule__ConjunctiveExpression__Group_1__1__Impl + rule__LetExpression__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group_1__1__Impl +rule__LetExpression__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - ( - { before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } - (rule__ConjunctiveExpression__Group_1_1__0) - { after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } - ) - ( - { before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } - (rule__ConjunctiveExpression__Group_1_1__0)* - { after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } - ) + { before(grammarAccess.getLetExpressionAccess().getBodyAssignment_4()); } + (rule__LetExpression__BodyAssignment_4) + { after(grammarAccess.getLetExpressionAccess().getBodyAssignment_4()); } ) ; finally { @@ -5171,53 +5463,53 @@ finally { } -rule__ConjunctiveExpression__Group_1_1__0 +rule__LetExpression__Group_2__0 @init { int stackSize = keepStackSize(); } : - rule__ConjunctiveExpression__Group_1_1__0__Impl - rule__ConjunctiveExpression__Group_1_1__1 + rule__LetExpression__Group_2__0__Impl + rule__LetExpression__Group_2__1 ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group_1_1__0__Impl +rule__LetExpression__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); } + { before(grammarAccess.getLetExpressionAccess().getCommaKeyword_2_0()); } Comma - { after(grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); } + { after(grammarAccess.getLetExpressionAccess().getCommaKeyword_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group_1_1__1 +rule__LetExpression__Group_2__1 @init { int stackSize = keepStackSize(); } : - rule__ConjunctiveExpression__Group_1_1__1__Impl + rule__LetExpression__Group_2__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ConjunctiveExpression__Group_1_1__1__Impl +rule__LetExpression__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getConjunctiveExpressionAccess().getChildrenAssignment_1_1_1()); } - (rule__ConjunctiveExpression__ChildrenAssignment_1_1_1) - { after(grammarAccess.getConjunctiveExpressionAccess().getChildrenAssignment_1_1_1()); } + { before(grammarAccess.getLetExpressionAccess().getBindingsAssignment_2_1()); } + (rule__LetExpression__BindingsAssignment_2_1) + { after(grammarAccess.getLetExpressionAccess().getBindingsAssignment_2_1()); } ) ; finally { @@ -5225,269 +5517,276 @@ finally { } -rule__ComparisonExpression__Group__0 +rule__LetBinding__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ComparisonExpression__Group__0__Impl - rule__ComparisonExpression__Group__1 + rule__LetBinding__Group__0__Impl + rule__LetBinding__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ComparisonExpression__Group__0__Impl +rule__LetBinding__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); } - ruleAdditiveExpression - { after(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); } + { before(grammarAccess.getLetBindingAccess().getTypeAssignment_0()); } + (rule__LetBinding__TypeAssignment_0)? + { after(grammarAccess.getLetBindingAccess().getTypeAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ComparisonExpression__Group__1 +rule__LetBinding__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ComparisonExpression__Group__1__Impl + rule__LetBinding__Group__1__Impl + rule__LetBinding__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ComparisonExpression__Group__1__Impl +rule__LetBinding__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getComparisonExpressionAccess().getGroup_1()); } - (rule__ComparisonExpression__Group_1__0)? - { after(grammarAccess.getComparisonExpressionAccess().getGroup_1()); } + { before(grammarAccess.getLetBindingAccess().getNameAssignment_1()); } + (rule__LetBinding__NameAssignment_1) + { after(grammarAccess.getLetBindingAccess().getNameAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ComparisonExpression__Group_1__0 +rule__LetBinding__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ComparisonExpression__Group_1__0__Impl - rule__ComparisonExpression__Group_1__1 + rule__LetBinding__Group__2__Impl + rule__LetBinding__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ComparisonExpression__Group_1__0__Impl +rule__LetBinding__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getComparisonExpressionAccess().getComparisonLeftAction_1_0()); } - () - { after(grammarAccess.getComparisonExpressionAccess().getComparisonLeftAction_1_0()); } + { before(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_2()); } + EqualsSign + { after(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ComparisonExpression__Group_1__1 +rule__LetBinding__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ComparisonExpression__Group_1__1__Impl - rule__ComparisonExpression__Group_1__2 + rule__LetBinding__Group__3__Impl ; finally { restoreStackSize(stackSize); } -rule__ComparisonExpression__Group_1__1__Impl +rule__LetBinding__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getComparisonExpressionAccess().getOpAssignment_1_1()); } - (rule__ComparisonExpression__OpAssignment_1_1) - { after(grammarAccess.getComparisonExpressionAccess().getOpAssignment_1_1()); } + { before(grammarAccess.getLetBindingAccess().getValueAssignment_3()); } + (rule__LetBinding__ValueAssignment_3) + { after(grammarAccess.getLetBindingAccess().getValueAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ComparisonExpression__Group_1__2 + +rule__DisjunctiveExpression__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ComparisonExpression__Group_1__2__Impl + rule__DisjunctiveExpression__Group__0__Impl + rule__DisjunctiveExpression__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ComparisonExpression__Group_1__2__Impl +rule__DisjunctiveExpression__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getComparisonExpressionAccess().getRightAssignment_1_2()); } - (rule__ComparisonExpression__RightAssignment_1_2) - { after(grammarAccess.getComparisonExpressionAccess().getRightAssignment_1_2()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); } + ruleConjunctiveExpression + { after(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__AdditiveExpression__Group__0 +rule__DisjunctiveExpression__Group__1 @init { int stackSize = keepStackSize(); } : - rule__AdditiveExpression__Group__0__Impl - rule__AdditiveExpression__Group__1 + rule__DisjunctiveExpression__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__AdditiveExpression__Group__0__Impl +rule__DisjunctiveExpression__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); } - ruleMultiplicativeExpression - { after(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1()); } + (rule__DisjunctiveExpression__Alternatives_1)? + { after(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__AdditiveExpression__Group__1 + +rule__DisjunctiveExpression__Group_1_0__0 @init { int stackSize = keepStackSize(); } : - rule__AdditiveExpression__Group__1__Impl + rule__DisjunctiveExpression__Group_1_0__0__Impl + rule__DisjunctiveExpression__Group_1_0__1 ; finally { restoreStackSize(stackSize); } -rule__AdditiveExpression__Group__1__Impl +rule__DisjunctiveExpression__Group_1_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAdditiveExpressionAccess().getGroup_1()); } - (rule__AdditiveExpression__Group_1__0)* - { after(grammarAccess.getAdditiveExpressionAccess().getGroup_1()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getDisjunctionChildrenAction_1_0_0()); } + () + { after(grammarAccess.getDisjunctiveExpressionAccess().getDisjunctionChildrenAction_1_0_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__AdditiveExpression__Group_1__0 +rule__DisjunctiveExpression__Group_1_0__1 @init { int stackSize = keepStackSize(); } : - rule__AdditiveExpression__Group_1__0__Impl - rule__AdditiveExpression__Group_1__1 + rule__DisjunctiveExpression__Group_1_0__1__Impl ; finally { restoreStackSize(stackSize); } -rule__AdditiveExpression__Group_1__0__Impl +rule__DisjunctiveExpression__Group_1_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAdditiveExpressionAccess().getBinaryExpressionLeftAction_1_0()); } - () - { after(grammarAccess.getAdditiveExpressionAccess().getBinaryExpressionLeftAction_1_0()); } + ( + { before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); } + (rule__DisjunctiveExpression__Group_1_0_1__0) + { after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); } + ) + ( + { before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); } + (rule__DisjunctiveExpression__Group_1_0_1__0)* + { after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); } + ) ) ; finally { restoreStackSize(stackSize); } -rule__AdditiveExpression__Group_1__1 + +rule__DisjunctiveExpression__Group_1_0_1__0 @init { int stackSize = keepStackSize(); } : - rule__AdditiveExpression__Group_1__1__Impl - rule__AdditiveExpression__Group_1__2 + rule__DisjunctiveExpression__Group_1_0_1__0__Impl + rule__DisjunctiveExpression__Group_1_0_1__1 ; finally { restoreStackSize(stackSize); } -rule__AdditiveExpression__Group_1__1__Impl +rule__DisjunctiveExpression__Group_1_0_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAdditiveExpressionAccess().getOpAssignment_1_1()); } - (rule__AdditiveExpression__OpAssignment_1_1) - { after(grammarAccess.getAdditiveExpressionAccess().getOpAssignment_1_1()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); } + Semicolon + { after(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__AdditiveExpression__Group_1__2 +rule__DisjunctiveExpression__Group_1_0_1__1 @init { int stackSize = keepStackSize(); } : - rule__AdditiveExpression__Group_1__2__Impl + rule__DisjunctiveExpression__Group_1_0_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__AdditiveExpression__Group_1__2__Impl +rule__DisjunctiveExpression__Group_1_0_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAdditiveExpressionAccess().getRightAssignment_1_2()); } - (rule__AdditiveExpression__RightAssignment_1_2) - { after(grammarAccess.getAdditiveExpressionAccess().getRightAssignment_1_2()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1()); } + (rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1) + { after(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1()); } ) ; finally { @@ -5495,134 +5794,134 @@ finally { } -rule__MultiplicativeExpression__Group__0 +rule__DisjunctiveExpression__Group_1_1__0 @init { int stackSize = keepStackSize(); } : - rule__MultiplicativeExpression__Group__0__Impl - rule__MultiplicativeExpression__Group__1 + rule__DisjunctiveExpression__Group_1_1__0__Impl + rule__DisjunctiveExpression__Group_1_1__1 ; finally { restoreStackSize(stackSize); } -rule__MultiplicativeExpression__Group__0__Impl +rule__DisjunctiveExpression__Group_1_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); } - ruleExponentialExpression - { after(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getCaseConditionAction_1_1_0()); } + () + { after(grammarAccess.getDisjunctiveExpressionAccess().getCaseConditionAction_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MultiplicativeExpression__Group__1 +rule__DisjunctiveExpression__Group_1_1__1 @init { int stackSize = keepStackSize(); } : - rule__MultiplicativeExpression__Group__1__Impl + rule__DisjunctiveExpression__Group_1_1__1__Impl + rule__DisjunctiveExpression__Group_1_1__2 ; finally { restoreStackSize(stackSize); } -rule__MultiplicativeExpression__Group__1__Impl +rule__DisjunctiveExpression__Group_1_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMultiplicativeExpressionAccess().getGroup_1()); } - (rule__MultiplicativeExpression__Group_1__0)* - { after(grammarAccess.getMultiplicativeExpressionAccess().getGroup_1()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); } + HyphenMinusGreaterThanSign + { after(grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__MultiplicativeExpression__Group_1__0 +rule__DisjunctiveExpression__Group_1_1__2 @init { int stackSize = keepStackSize(); } : - rule__MultiplicativeExpression__Group_1__0__Impl - rule__MultiplicativeExpression__Group_1__1 + rule__DisjunctiveExpression__Group_1_1__2__Impl + rule__DisjunctiveExpression__Group_1_1__3 ; finally { restoreStackSize(stackSize); } -rule__MultiplicativeExpression__Group_1__0__Impl +rule__DisjunctiveExpression__Group_1_1__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMultiplicativeExpressionAccess().getBinaryExpressionLeftAction_1_0()); } - () - { after(grammarAccess.getMultiplicativeExpressionAccess().getBinaryExpressionLeftAction_1_0()); } -) + { before(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2()); } + (rule__DisjunctiveExpression__BodyAssignment_1_1_2) + { after(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2()); } +) ; finally { restoreStackSize(stackSize); } -rule__MultiplicativeExpression__Group_1__1 +rule__DisjunctiveExpression__Group_1_1__3 @init { int stackSize = keepStackSize(); } : - rule__MultiplicativeExpression__Group_1__1__Impl - rule__MultiplicativeExpression__Group_1__2 + rule__DisjunctiveExpression__Group_1_1__3__Impl + rule__DisjunctiveExpression__Group_1_1__4 ; finally { restoreStackSize(stackSize); } -rule__MultiplicativeExpression__Group_1__1__Impl +rule__DisjunctiveExpression__Group_1_1__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMultiplicativeExpressionAccess().getOpAssignment_1_1()); } - (rule__MultiplicativeExpression__OpAssignment_1_1) - { after(grammarAccess.getMultiplicativeExpressionAccess().getOpAssignment_1_1()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getSwitchCasesAction_1_1_3()); } + () + { after(grammarAccess.getDisjunctiveExpressionAccess().getSwitchCasesAction_1_1_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__MultiplicativeExpression__Group_1__2 +rule__DisjunctiveExpression__Group_1_1__4 @init { int stackSize = keepStackSize(); } : - rule__MultiplicativeExpression__Group_1__2__Impl + rule__DisjunctiveExpression__Group_1_1__4__Impl ; finally { restoreStackSize(stackSize); } -rule__MultiplicativeExpression__Group_1__2__Impl +rule__DisjunctiveExpression__Group_1_1__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2()); } - (rule__MultiplicativeExpression__RightAssignment_1_2) - { after(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1_4()); } + (rule__DisjunctiveExpression__Group_1_1_4__0)* + { after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1_4()); } ) ; finally { @@ -5630,53 +5929,53 @@ finally { } -rule__ExponentialExpression__Group__0 +rule__DisjunctiveExpression__Group_1_1_4__0 @init { int stackSize = keepStackSize(); } : - rule__ExponentialExpression__Group__0__Impl - rule__ExponentialExpression__Group__1 + rule__DisjunctiveExpression__Group_1_1_4__0__Impl + rule__DisjunctiveExpression__Group_1_1_4__1 ; finally { restoreStackSize(stackSize); } -rule__ExponentialExpression__Group__0__Impl +rule__DisjunctiveExpression__Group_1_1_4__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); } - ruleCastExpression - { after(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); } + Semicolon + { after(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExponentialExpression__Group__1 +rule__DisjunctiveExpression__Group_1_1_4__1 @init { int stackSize = keepStackSize(); } : - rule__ExponentialExpression__Group__1__Impl + rule__DisjunctiveExpression__Group_1_1_4__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ExponentialExpression__Group__1__Impl +rule__DisjunctiveExpression__Group_1_1_4__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExponentialExpressionAccess().getGroup_1()); } - (rule__ExponentialExpression__Group_1__0)? - { after(grammarAccess.getExponentialExpressionAccess().getGroup_1()); } + { before(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1()); } + (rule__DisjunctiveExpression__CasesAssignment_1_1_4_1) + { after(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1()); } ) ; finally { @@ -5684,80 +5983,80 @@ finally { } -rule__ExponentialExpression__Group_1__0 +rule__Case__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ExponentialExpression__Group_1__0__Impl - rule__ExponentialExpression__Group_1__1 + rule__Case__Group__0__Impl + rule__Case__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ExponentialExpression__Group_1__0__Impl +rule__Case__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExponentialExpressionAccess().getBinaryExpressionLeftAction_1_0()); } - () - { after(grammarAccess.getExponentialExpressionAccess().getBinaryExpressionLeftAction_1_0()); } + { before(grammarAccess.getCaseAccess().getConditionAssignment_0()); } + (rule__Case__ConditionAssignment_0) + { after(grammarAccess.getCaseAccess().getConditionAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExponentialExpression__Group_1__1 +rule__Case__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ExponentialExpression__Group_1__1__Impl - rule__ExponentialExpression__Group_1__2 + rule__Case__Group__1__Impl + rule__Case__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ExponentialExpression__Group_1__1__Impl +rule__Case__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1()); } - (rule__ExponentialExpression__OpAssignment_1_1) - { after(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1()); } + { before(grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); } + HyphenMinusGreaterThanSign + { after(grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExponentialExpression__Group_1__2 +rule__Case__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ExponentialExpression__Group_1__2__Impl + rule__Case__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__ExponentialExpression__Group_1__2__Impl +rule__Case__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2()); } - (rule__ExponentialExpression__RightAssignment_1_2) - { after(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2()); } + { before(grammarAccess.getCaseAccess().getBodyAssignment_2()); } + (rule__Case__BodyAssignment_2) + { after(grammarAccess.getCaseAccess().getBodyAssignment_2()); } ) ; finally { @@ -5765,53 +6064,53 @@ finally { } -rule__CastExpression__Group__0 +rule__ConjunctiveExpression__Group__0 @init { int stackSize = keepStackSize(); } : - rule__CastExpression__Group__0__Impl - rule__CastExpression__Group__1 + rule__ConjunctiveExpression__Group__0__Impl + rule__ConjunctiveExpression__Group__1 ; finally { restoreStackSize(stackSize); } -rule__CastExpression__Group__0__Impl +rule__ConjunctiveExpression__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); } - ruleUnaryExpression - { after(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); } + { before(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); } + ruleComparisonExpression + { after(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__CastExpression__Group__1 +rule__ConjunctiveExpression__Group__1 @init { int stackSize = keepStackSize(); } : - rule__CastExpression__Group__1__Impl + rule__ConjunctiveExpression__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__CastExpression__Group__1__Impl +rule__ConjunctiveExpression__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCastExpressionAccess().getGroup_1()); } - (rule__CastExpression__Group_1__0)? - { after(grammarAccess.getCastExpressionAccess().getGroup_1()); } + { before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1()); } + (rule__ConjunctiveExpression__Group_1__0)? + { after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1()); } ) ; finally { @@ -5819,161 +6118,168 @@ finally { } -rule__CastExpression__Group_1__0 +rule__ConjunctiveExpression__Group_1__0 @init { int stackSize = keepStackSize(); } : - rule__CastExpression__Group_1__0__Impl - rule__CastExpression__Group_1__1 + rule__ConjunctiveExpression__Group_1__0__Impl + rule__ConjunctiveExpression__Group_1__1 ; finally { restoreStackSize(stackSize); } -rule__CastExpression__Group_1__0__Impl +rule__ConjunctiveExpression__Group_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); } + { before(grammarAccess.getConjunctiveExpressionAccess().getConjunctionChildrenAction_1_0()); } () - { after(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); } + { after(grammarAccess.getConjunctiveExpressionAccess().getConjunctionChildrenAction_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__CastExpression__Group_1__1 +rule__ConjunctiveExpression__Group_1__1 @init { int stackSize = keepStackSize(); } : - rule__CastExpression__Group_1__1__Impl - rule__CastExpression__Group_1__2 + rule__ConjunctiveExpression__Group_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__CastExpression__Group_1__1__Impl +rule__ConjunctiveExpression__Group_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); } - As - { after(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); } + ( + { before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } + (rule__ConjunctiveExpression__Group_1_1__0) + { after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } + ) + ( + { before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } + (rule__ConjunctiveExpression__Group_1_1__0)* + { after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } + ) ) ; finally { restoreStackSize(stackSize); } -rule__CastExpression__Group_1__2 + +rule__ConjunctiveExpression__Group_1_1__0 @init { int stackSize = keepStackSize(); } : - rule__CastExpression__Group_1__2__Impl + rule__ConjunctiveExpression__Group_1_1__0__Impl + rule__ConjunctiveExpression__Group_1_1__1 ; finally { restoreStackSize(stackSize); } -rule__CastExpression__Group_1__2__Impl +rule__ConjunctiveExpression__Group_1_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCastExpressionAccess().getTypeAssignment_1_2()); } - (rule__CastExpression__TypeAssignment_1_2) - { after(grammarAccess.getCastExpressionAccess().getTypeAssignment_1_2()); } + { before(grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); } + Comma + { after(grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__UnaryExpression__Group_1__0 +rule__ConjunctiveExpression__Group_1_1__1 @init { int stackSize = keepStackSize(); } : - rule__UnaryExpression__Group_1__0__Impl - rule__UnaryExpression__Group_1__1 + rule__ConjunctiveExpression__Group_1_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__UnaryExpression__Group_1__0__Impl +rule__ConjunctiveExpression__Group_1_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnaryExpressionAccess().getUnaryExpressionAction_1_0()); } - () - { after(grammarAccess.getUnaryExpressionAccess().getUnaryExpressionAction_1_0()); } + { before(grammarAccess.getConjunctiveExpressionAccess().getChildrenAssignment_1_1_1()); } + (rule__ConjunctiveExpression__ChildrenAssignment_1_1_1) + { after(grammarAccess.getConjunctiveExpressionAccess().getChildrenAssignment_1_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__UnaryExpression__Group_1__1 + +rule__ComparisonExpression__Group__0 @init { int stackSize = keepStackSize(); } : - rule__UnaryExpression__Group_1__1__Impl - rule__UnaryExpression__Group_1__2 + rule__ComparisonExpression__Group__0__Impl + rule__ComparisonExpression__Group__1 ; finally { restoreStackSize(stackSize); } -rule__UnaryExpression__Group_1__1__Impl +rule__ComparisonExpression__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1()); } - (rule__UnaryExpression__OpAssignment_1_1) - { after(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1()); } + { before(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); } + ruleAdditiveExpression + { after(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__UnaryExpression__Group_1__2 +rule__ComparisonExpression__Group__1 @init { int stackSize = keepStackSize(); } : - rule__UnaryExpression__Group_1__2__Impl + rule__ComparisonExpression__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__UnaryExpression__Group_1__2__Impl +rule__ComparisonExpression__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2()); } - (rule__UnaryExpression__BodyAssignment_1_2) - { after(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2()); } + { before(grammarAccess.getComparisonExpressionAccess().getGroup_1()); } + (rule__ComparisonExpression__Group_1__0)? + { after(grammarAccess.getComparisonExpressionAccess().getGroup_1()); } ) ; finally { @@ -5981,350 +6287,1484 @@ finally { } -rule__LocalVariables__Group__0 +rule__ComparisonExpression__Group_1__0 @init { int stackSize = keepStackSize(); } : - rule__LocalVariables__Group__0__Impl - rule__LocalVariables__Group__1 + rule__ComparisonExpression__Group_1__0__Impl + rule__ComparisonExpression__Group_1__1 ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group__0__Impl +rule__ComparisonExpression__Group_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0()); } + { before(grammarAccess.getComparisonExpressionAccess().getBinaryExpressionLeftAction_1_0()); } () - { after(grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0()); } + { after(grammarAccess.getComparisonExpressionAccess().getBinaryExpressionLeftAction_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group__1 +rule__ComparisonExpression__Group_1__1 @init { int stackSize = keepStackSize(); } : - rule__LocalVariables__Group__1__Impl - rule__LocalVariables__Group__2 + rule__ComparisonExpression__Group_1__1__Impl + rule__ComparisonExpression__Group_1__2 ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group__1__Impl +rule__ComparisonExpression__Group_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1()); } - LeftSquareBracket - { after(grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1()); } + { before(grammarAccess.getComparisonExpressionAccess().getOpAssignment_1_1()); } + (rule__ComparisonExpression__OpAssignment_1_1) + { after(grammarAccess.getComparisonExpressionAccess().getOpAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ComparisonExpression__Group_1__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ComparisonExpression__Group_1__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ComparisonExpression__Group_1__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getComparisonExpressionAccess().getRightAssignment_1_2()); } + (rule__ComparisonExpression__RightAssignment_1_2) + { after(grammarAccess.getComparisonExpressionAccess().getRightAssignment_1_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group__2 + +rule__AdditiveExpression__Group__0 @init { int stackSize = keepStackSize(); } : - rule__LocalVariables__Group__2__Impl - rule__LocalVariables__Group__3 + rule__AdditiveExpression__Group__0__Impl + rule__AdditiveExpression__Group__1 ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group__2__Impl +rule__AdditiveExpression__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); } + ruleMultiplicativeExpression + { after(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AdditiveExpression__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__AdditiveExpression__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__AdditiveExpression__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAdditiveExpressionAccess().getGroup_1()); } + (rule__AdditiveExpression__Group_1__0)* + { after(grammarAccess.getAdditiveExpressionAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__AdditiveExpression__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__AdditiveExpression__Group_1__0__Impl + rule__AdditiveExpression__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__AdditiveExpression__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAdditiveExpressionAccess().getBinaryExpressionLeftAction_1_0()); } + () + { after(grammarAccess.getAdditiveExpressionAccess().getBinaryExpressionLeftAction_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AdditiveExpression__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__AdditiveExpression__Group_1__1__Impl + rule__AdditiveExpression__Group_1__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__AdditiveExpression__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAdditiveExpressionAccess().getOpAssignment_1_1()); } + (rule__AdditiveExpression__OpAssignment_1_1) + { after(grammarAccess.getAdditiveExpressionAccess().getOpAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AdditiveExpression__Group_1__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__AdditiveExpression__Group_1__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__AdditiveExpression__Group_1__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAdditiveExpressionAccess().getRightAssignment_1_2()); } + (rule__AdditiveExpression__RightAssignment_1_2) + { after(grammarAccess.getAdditiveExpressionAccess().getRightAssignment_1_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__MultiplicativeExpression__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplicativeExpression__Group__0__Impl + rule__MultiplicativeExpression__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplicativeExpression__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); } + ruleExponentialExpression + { after(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplicativeExpression__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplicativeExpression__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplicativeExpression__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplicativeExpressionAccess().getGroup_1()); } + (rule__MultiplicativeExpression__Group_1__0)* + { after(grammarAccess.getMultiplicativeExpressionAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__MultiplicativeExpression__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplicativeExpression__Group_1__0__Impl + rule__MultiplicativeExpression__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplicativeExpression__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplicativeExpressionAccess().getBinaryExpressionLeftAction_1_0()); } + () + { after(grammarAccess.getMultiplicativeExpressionAccess().getBinaryExpressionLeftAction_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplicativeExpression__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplicativeExpression__Group_1__1__Impl + rule__MultiplicativeExpression__Group_1__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplicativeExpression__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplicativeExpressionAccess().getOpAssignment_1_1()); } + (rule__MultiplicativeExpression__OpAssignment_1_1) + { after(grammarAccess.getMultiplicativeExpressionAccess().getOpAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplicativeExpression__Group_1__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__MultiplicativeExpression__Group_1__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__MultiplicativeExpression__Group_1__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2()); } + (rule__MultiplicativeExpression__RightAssignment_1_2) + { after(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ExponentialExpression__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ExponentialExpression__Group__0__Impl + rule__ExponentialExpression__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ExponentialExpression__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); } + ruleCastExpression + { after(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ExponentialExpression__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ExponentialExpression__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ExponentialExpression__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getExponentialExpressionAccess().getGroup_1()); } + (rule__ExponentialExpression__Group_1__0)? + { after(grammarAccess.getExponentialExpressionAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ExponentialExpression__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ExponentialExpression__Group_1__0__Impl + rule__ExponentialExpression__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ExponentialExpression__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getExponentialExpressionAccess().getBinaryExpressionLeftAction_1_0()); } + () + { after(grammarAccess.getExponentialExpressionAccess().getBinaryExpressionLeftAction_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ExponentialExpression__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ExponentialExpression__Group_1__1__Impl + rule__ExponentialExpression__Group_1__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ExponentialExpression__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1()); } + (rule__ExponentialExpression__OpAssignment_1_1) + { after(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ExponentialExpression__Group_1__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ExponentialExpression__Group_1__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ExponentialExpression__Group_1__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2()); } + (rule__ExponentialExpression__RightAssignment_1_2) + { after(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__CastExpression__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__CastExpression__Group__0__Impl + rule__CastExpression__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__CastExpression__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); } + ruleUnaryExpression + { after(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CastExpression__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__CastExpression__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__CastExpression__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCastExpressionAccess().getGroup_1()); } + (rule__CastExpression__Group_1__0)? + { after(grammarAccess.getCastExpressionAccess().getGroup_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__CastExpression__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__CastExpression__Group_1__0__Impl + rule__CastExpression__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__CastExpression__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); } + () + { after(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CastExpression__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__CastExpression__Group_1__1__Impl + rule__CastExpression__Group_1__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__CastExpression__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); } + As + { after(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__CastExpression__Group_1__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__CastExpression__Group_1__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__CastExpression__Group_1__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCastExpressionAccess().getTargetTypeAssignment_1_2()); } + (rule__CastExpression__TargetTypeAssignment_1_2) + { after(grammarAccess.getCastExpressionAccess().getTargetTypeAssignment_1_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__UnaryExpression__Group_1__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__UnaryExpression__Group_1__0__Impl + rule__UnaryExpression__Group_1__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryExpression__Group_1__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getUnaryExpressionAccess().getUnaryExpressionAction_1_0()); } + () + { after(grammarAccess.getUnaryExpressionAccess().getUnaryExpressionAction_1_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryExpression__Group_1__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__UnaryExpression__Group_1__1__Impl + rule__UnaryExpression__Group_1__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryExpression__Group_1__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1()); } + (rule__UnaryExpression__OpAssignment_1_1) + { after(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryExpression__Group_1__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__UnaryExpression__Group_1__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__UnaryExpression__Group_1__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2()); } + (rule__UnaryExpression__BodyAssignment_1_2) + { after(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__Aggregation__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__Aggregation__Group__0__Impl + rule__Aggregation__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAggregationAccess().getOpAssignment_0()); } + (rule__Aggregation__OpAssignment_0) + { after(grammarAccess.getAggregationAccess().getOpAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__Aggregation__Group__1__Impl + rule__Aggregation__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); } + LeftCurlyBracket + { after(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__Aggregation__Group__2__Impl + rule__Aggregation__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAggregationAccess().getValueAssignment_2()); } + (rule__Aggregation__ValueAssignment_2) + { after(grammarAccess.getAggregationAccess().getValueAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__Aggregation__Group__3__Impl + rule__Aggregation__Group__4 +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); } + VerticalLine + { after(grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__4 + @init { + int stackSize = keepStackSize(); + } +: + rule__Aggregation__Group__4__Impl + rule__Aggregation__Group__5 +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__4__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAggregationAccess().getConditionAssignment_4()); } + (rule__Aggregation__ConditionAssignment_4) + { after(grammarAccess.getAggregationAccess().getConditionAssignment_4()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__5 + @init { + int stackSize = keepStackSize(); + } +: + rule__Aggregation__Group__5__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__Aggregation__Group__5__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); } + RightCurlyBracket + { after(grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__Count__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__Count__Group__0__Impl + rule__Count__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__Count__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCountAccess().getCountKeyword_0()); } + Count + { after(grammarAccess.getCountAccess().getCountKeyword_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Count__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__Count__Group__1__Impl + rule__Count__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__Count__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); } + LeftCurlyBracket + { after(grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Count__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__Count__Group__2__Impl + rule__Count__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__Count__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCountAccess().getConditionAssignment_2()); } + (rule__Count__ConditionAssignment_2) + { after(grammarAccess.getCountAccess().getConditionAssignment_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Count__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__Count__Group__3__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__Count__Group__3__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); } + RightCurlyBracket + { after(grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__AtomicExpression__Group_4__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__AtomicExpression__Group_4__0__Impl + rule__AtomicExpression__Group_4__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__AtomicExpression__Group_4__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); } + LeftParenthesis + { after(grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AtomicExpression__Group_4__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__AtomicExpression__Group_4__1__Impl + rule__AtomicExpression__Group_4__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__AtomicExpression__Group_4__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); } + ruleExpression + { after(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__AtomicExpression__Group_4__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__AtomicExpression__Group_4__2__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__AtomicExpression__Group_4__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getAtomicExpressionAccess().getRightParenthesisKeyword_4_2()); } + RightParenthesis + { after(grammarAccess.getAtomicExpressionAccess().getRightParenthesisKeyword_4_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__Call__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__Call__Group__0__Impl + rule__Call__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__Call__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallAccess().getFunctorAssignment_0()); } + (rule__Call__FunctorAssignment_0) + { after(grammarAccess.getCallAccess().getFunctorAssignment_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__Call__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__Call__Group__1__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__Call__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getCallAccess().getArgumentListAssignment_1()); } + (rule__Call__ArgumentListAssignment_1) + { after(grammarAccess.getCallAccess().getArgumentListAssignment_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + + +rule__ArgumentList__Group__0 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArgumentList__Group__0__Impl + rule__ArgumentList__Group__1 +; +finally { + restoreStackSize(stackSize); +} + +rule__ArgumentList__Group__0__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArgumentListAccess().getArgumentListAction_0()); } + () + { after(grammarAccess.getArgumentListAccess().getArgumentListAction_0()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArgumentList__Group__1 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArgumentList__Group__1__Impl + rule__ArgumentList__Group__2 +; +finally { + restoreStackSize(stackSize); +} + +rule__ArgumentList__Group__1__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); } + LeftParenthesis + { after(grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArgumentList__Group__2 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArgumentList__Group__2__Impl + rule__ArgumentList__Group__3 +; +finally { + restoreStackSize(stackSize); +} + +rule__ArgumentList__Group__2__Impl + @init { + int stackSize = keepStackSize(); + } +: +( + { before(grammarAccess.getArgumentListAccess().getGroup_2()); } + (rule__ArgumentList__Group_2__0)? + { after(grammarAccess.getArgumentListAccess().getGroup_2()); } +) +; +finally { + restoreStackSize(stackSize); +} + +rule__ArgumentList__Group__3 + @init { + int stackSize = keepStackSize(); + } +: + rule__ArgumentList__Group__3__Impl +; +finally { + restoreStackSize(stackSize); +} + +rule__ArgumentList__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getGroup_2()); } - (rule__LocalVariables__Group_2__0)? - { after(grammarAccess.getLocalVariablesAccess().getGroup_2()); } + { before(grammarAccess.getArgumentListAccess().getRightParenthesisKeyword_3()); } + RightParenthesis + { after(grammarAccess.getArgumentListAccess().getRightParenthesisKeyword_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group__3 + +rule__ArgumentList__Group_2__0 @init { int stackSize = keepStackSize(); } : - rule__LocalVariables__Group__3__Impl + rule__ArgumentList__Group_2__0__Impl + rule__ArgumentList__Group_2__1 ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group__3__Impl +rule__ArgumentList__Group_2__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3()); } - RightSquareBracket - { after(grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3()); } + { before(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0()); } + (rule__ArgumentList__ArgumentsAssignment_2_0) + { after(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__LocalVariables__Group_2__0 +rule__ArgumentList__Group_2__1 @init { int stackSize = keepStackSize(); } : - rule__LocalVariables__Group_2__0__Impl - rule__LocalVariables__Group_2__1 + rule__ArgumentList__Group_2__1__Impl ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group_2__0__Impl +rule__ArgumentList__Group_2__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_0()); } - (rule__LocalVariables__VariablesAssignment_2_0) - { after(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_0()); } + { before(grammarAccess.getArgumentListAccess().getGroup_2_1()); } + (rule__ArgumentList__Group_2_1__0)* + { after(grammarAccess.getArgumentListAccess().getGroup_2_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group_2__1 + +rule__ArgumentList__Group_2_1__0 @init { int stackSize = keepStackSize(); } : - rule__LocalVariables__Group_2__1__Impl + rule__ArgumentList__Group_2_1__0__Impl + rule__ArgumentList__Group_2_1__1 ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group_2__1__Impl +rule__ArgumentList__Group_2_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getGroup_2_1()); } - (rule__LocalVariables__Group_2_1__0)* - { after(grammarAccess.getLocalVariablesAccess().getGroup_2_1()); } + { before(grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); } + Comma + { after(grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__LocalVariables__Group_2_1__0 +rule__ArgumentList__Group_2_1__1 @init { int stackSize = keepStackSize(); } : - rule__LocalVariables__Group_2_1__0__Impl - rule__LocalVariables__Group_2_1__1 + rule__ArgumentList__Group_2_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group_2_1__0__Impl +rule__ArgumentList__Group_2_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0()); } - Comma - { after(grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0()); } + { before(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1()); } + (rule__ArgumentList__ArgumentsAssignment_2_1_1) + { after(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group_2_1__1 + +rule__StarArgument__Group__0 @init { int stackSize = keepStackSize(); } : - rule__LocalVariables__Group_2_1__1__Impl + rule__StarArgument__Group__0__Impl + rule__StarArgument__Group__1 ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__Group_2_1__1__Impl +rule__StarArgument__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_1_1()); } - (rule__LocalVariables__VariablesAssignment_2_1_1) - { after(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_1_1()); } + { before(grammarAccess.getStarArgumentAccess().getStarArgumentAction_0()); } + () + { after(grammarAccess.getStarArgumentAccess().getStarArgumentAction_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__QuantifiedExpression__Group__0 +rule__StarArgument__Group__1 @init { int stackSize = keepStackSize(); } : - rule__QuantifiedExpression__Group__0__Impl - rule__QuantifiedExpression__Group__1 + rule__StarArgument__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__0__Impl +rule__StarArgument__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getQuantifierAssignment_0()); } - (rule__QuantifiedExpression__QuantifierAssignment_0) - { after(grammarAccess.getQuantifiedExpressionAccess().getQuantifierAssignment_0()); } + { before(grammarAccess.getStarArgumentAccess().getAsteriskKeyword_1()); } + Asterisk + { after(grammarAccess.getStarArgumentAccess().getAsteriskKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__1 + +rule__TypedVariableArgument__Group__0 @init { int stackSize = keepStackSize(); } : - rule__QuantifiedExpression__Group__1__Impl - rule__QuantifiedExpression__Group__2 + rule__TypedVariableArgument__Group__0__Impl + rule__TypedVariableArgument__Group__1 ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__1__Impl +rule__TypedVariableArgument__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesAssignment_1()); } - (rule__QuantifiedExpression__LocalVariablesAssignment_1)? - { after(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesAssignment_1()); } + { before(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceAssignment_0()); } + (rule__TypedVariableArgument__TypeReferenceAssignment_0) + { after(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__2 +rule__TypedVariableArgument__Group__1 @init { int stackSize = keepStackSize(); } : - rule__QuantifiedExpression__Group__2__Impl - rule__QuantifiedExpression__Group__3 + rule__TypedVariableArgument__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__2__Impl +rule__TypedVariableArgument__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2()); } - LeftCurlyBracket - { after(grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2()); } + { before(grammarAccess.getTypedVariableArgumentAccess().getNameAssignment_1()); } + (rule__TypedVariableArgument__NameAssignment_1) + { after(grammarAccess.getTypedVariableArgumentAccess().getNameAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__3 + +rule__TypedStarArgument__Group__0 @init { int stackSize = keepStackSize(); } : - rule__QuantifiedExpression__Group__3__Impl - rule__QuantifiedExpression__Group__4 + rule__TypedStarArgument__Group__0__Impl + rule__TypedStarArgument__Group__1 ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__3__Impl +rule__TypedStarArgument__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getBodyAssignment_3()); } - (rule__QuantifiedExpression__BodyAssignment_3) - { after(grammarAccess.getQuantifiedExpressionAccess().getBodyAssignment_3()); } + { before(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceAssignment_0()); } + (rule__TypedStarArgument__TypeReferenceAssignment_0) + { after(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__4 +rule__TypedStarArgument__Group__1 @init { int stackSize = keepStackSize(); } : - rule__QuantifiedExpression__Group__4__Impl + rule__TypedStarArgument__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__Group__4__Impl +rule__TypedStarArgument__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4()); } - RightCurlyBracket - { after(grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4()); } + { before(grammarAccess.getTypedStarArgumentAccess().getAsteriskKeyword_1()); } + Asterisk + { after(grammarAccess.getTypedStarArgumentAccess().getAsteriskKeyword_1()); } ) ; finally { @@ -6332,377 +7772,377 @@ finally { } -rule__Aggregation__Group__0 +rule__Reference__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Aggregation__Group__0__Impl - rule__Aggregation__Group__1 + rule__Reference__Group__0__Impl + rule__Reference__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__0__Impl +rule__Reference__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getOpAssignment_0()); } - (rule__Aggregation__OpAssignment_0) - { after(grammarAccess.getAggregationAccess().getOpAssignment_0()); } + { before(grammarAccess.getReferenceAccess().getComponentsAssignment_0()); } + (rule__Reference__ComponentsAssignment_0) + { after(grammarAccess.getReferenceAccess().getComponentsAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__1 +rule__Reference__Group__1 @init { int stackSize = keepStackSize(); } : - rule__Aggregation__Group__1__Impl - rule__Aggregation__Group__2 + rule__Reference__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__1__Impl +rule__Reference__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getLocalVariablesAssignment_1()); } - (rule__Aggregation__LocalVariablesAssignment_1)? - { after(grammarAccess.getAggregationAccess().getLocalVariablesAssignment_1()); } + { before(grammarAccess.getReferenceAccess().getGroup_1()); } + (rule__Reference__Group_1__0)* + { after(grammarAccess.getReferenceAccess().getGroup_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__2 + +rule__Reference__Group_1__0 @init { int stackSize = keepStackSize(); } : - rule__Aggregation__Group__2__Impl - rule__Aggregation__Group__3 + rule__Reference__Group_1__0__Impl + rule__Reference__Group_1__1 ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__2__Impl +rule__Reference__Group_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2()); } - LeftCurlyBracket - { after(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2()); } + { before(grammarAccess.getReferenceAccess().getFullStopKeyword_1_0()); } + FullStop + { after(grammarAccess.getReferenceAccess().getFullStopKeyword_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__3 +rule__Reference__Group_1__1 @init { int stackSize = keepStackSize(); } : - rule__Aggregation__Group__3__Impl - rule__Aggregation__Group__4 + rule__Reference__Group_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__3__Impl +rule__Reference__Group_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getBodyAssignment_3()); } - (rule__Aggregation__BodyAssignment_3) - { after(grammarAccess.getAggregationAccess().getBodyAssignment_3()); } + { before(grammarAccess.getReferenceAccess().getComponentsAssignment_1_1()); } + (rule__Reference__ComponentsAssignment_1_1) + { after(grammarAccess.getReferenceAccess().getComponentsAssignment_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__4 + +rule__PathComponent__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Aggregation__Group__4__Impl - rule__Aggregation__Group__5 + rule__PathComponent__Group__0__Impl + rule__PathComponent__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__4__Impl +rule__PathComponent__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getGroup_4()); } - (rule__Aggregation__Group_4__0)? - { after(grammarAccess.getAggregationAccess().getGroup_4()); } + { before(grammarAccess.getPathComponentAccess().getInverseAssignment_0()); } + (rule__PathComponent__InverseAssignment_0)? + { after(grammarAccess.getPathComponentAccess().getInverseAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__5 +rule__PathComponent__Group__1 @init { int stackSize = keepStackSize(); } : - rule__Aggregation__Group__5__Impl + rule__PathComponent__Group__1__Impl + rule__PathComponent__Group__2 ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group__5__Impl +rule__PathComponent__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); } - RightCurlyBracket - { after(grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); } + { before(grammarAccess.getPathComponentAccess().getSymbolAssignment_1()); } + (rule__PathComponent__SymbolAssignment_1) + { after(grammarAccess.getPathComponentAccess().getSymbolAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__Aggregation__Group_4__0 +rule__PathComponent__Group__2 @init { int stackSize = keepStackSize(); } : - rule__Aggregation__Group_4__0__Impl - rule__Aggregation__Group_4__1 + rule__PathComponent__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group_4__0__Impl +rule__PathComponent__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0()); } - VerticalLine - { after(grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0()); } + { before(grammarAccess.getPathComponentAccess().getAlternatives_2()); } + (rule__PathComponent__Alternatives_2)? + { after(grammarAccess.getPathComponentAccess().getAlternatives_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group_4__1 + +rule__Interval__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Aggregation__Group_4__1__Impl + rule__Interval__Group__0__Impl + rule__Interval__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Aggregation__Group_4__1__Impl +rule__Interval__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getConditionAssignment_4_1()); } - (rule__Aggregation__ConditionAssignment_4_1) - { after(grammarAccess.getAggregationAccess().getConditionAssignment_4_1()); } + { before(grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); } + LeftSquareBracket + { after(grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__AtomicExpression__Group_4__0 +rule__Interval__Group__1 @init { int stackSize = keepStackSize(); } : - rule__AtomicExpression__Group_4__0__Impl - rule__AtomicExpression__Group_4__1 + rule__Interval__Group__1__Impl + rule__Interval__Group__2 ; finally { restoreStackSize(stackSize); } -rule__AtomicExpression__Group_4__0__Impl +rule__Interval__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); } - LeftParenthesis - { after(grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); } + { before(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1()); } + (rule__Interval__LowerBoundAssignment_1) + { after(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__AtomicExpression__Group_4__1 +rule__Interval__Group__2 @init { int stackSize = keepStackSize(); } : - rule__AtomicExpression__Group_4__1__Impl - rule__AtomicExpression__Group_4__2 + rule__Interval__Group__2__Impl + rule__Interval__Group__3 ; finally { restoreStackSize(stackSize); } -rule__AtomicExpression__Group_4__1__Impl +rule__Interval__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); } - ruleExpression - { after(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); } + { before(grammarAccess.getIntervalAccess().getCommaKeyword_2()); } + Comma + { after(grammarAccess.getIntervalAccess().getCommaKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__AtomicExpression__Group_4__2 +rule__Interval__Group__3 @init { int stackSize = keepStackSize(); } : - rule__AtomicExpression__Group_4__2__Impl + rule__Interval__Group__3__Impl + rule__Interval__Group__4 ; finally { restoreStackSize(stackSize); } -rule__AtomicExpression__Group_4__2__Impl +rule__Interval__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAtomicExpressionAccess().getRightParenthesisKeyword_4_2()); } - RightParenthesis - { after(grammarAccess.getAtomicExpressionAccess().getRightParenthesisKeyword_4_2()); } + { before(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3()); } + (rule__Interval__UpperBoundAssignment_3) + { after(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } - -rule__Call__Group__0 +rule__Interval__Group__4 @init { int stackSize = keepStackSize(); } : - rule__Call__Group__0__Impl - rule__Call__Group__1 + rule__Interval__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__Call__Group__0__Impl +rule__Interval__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCallAccess().getFunctorAssignment_0()); } - (rule__Call__FunctorAssignment_0) - { after(grammarAccess.getCallAccess().getFunctorAssignment_0()); } + { before(grammarAccess.getIntervalAccess().getRightSquareBracketKeyword_4()); } + RightSquareBracket + { after(grammarAccess.getIntervalAccess().getRightSquareBracketKeyword_4()); } ) ; finally { restoreStackSize(stackSize); } -rule__Call__Group__1 + +rule__InfinityLiteral__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Call__Group__1__Impl - rule__Call__Group__2 + rule__InfinityLiteral__Group__0__Impl + rule__InfinityLiteral__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Call__Group__1__Impl +rule__InfinityLiteral__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCallAccess().getAlternatives_1()); } - (rule__Call__Alternatives_1)? - { after(grammarAccess.getCallAccess().getAlternatives_1()); } + { before(grammarAccess.getInfinityLiteralAccess().getInfinityLiteralAction_0()); } + () + { after(grammarAccess.getInfinityLiteralAccess().getInfinityLiteralAction_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Call__Group__2 +rule__InfinityLiteral__Group__1 @init { int stackSize = keepStackSize(); } : - rule__Call__Group__2__Impl + rule__InfinityLiteral__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__Call__Group__2__Impl +rule__InfinityLiteral__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCallAccess().getArgumentListAssignment_2()); } - (rule__Call__ArgumentListAssignment_2) - { after(grammarAccess.getCallAccess().getArgumentListAssignment_2()); } + { before(grammarAccess.getInfinityLiteralAccess().getInfKeyword_1()); } + Inf + { after(grammarAccess.getInfinityLiteralAccess().getInfKeyword_1()); } ) ; finally { @@ -6710,269 +8150,269 @@ finally { } -rule__ArgumentList__Group__0 +rule__EmptyLiteral__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ArgumentList__Group__0__Impl - rule__ArgumentList__Group__1 + rule__EmptyLiteral__Group__0__Impl + rule__EmptyLiteral__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group__0__Impl +rule__EmptyLiteral__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getArgumentListAction_0()); } + { before(grammarAccess.getEmptyLiteralAccess().getEmptyLiteralAction_0()); } () - { after(grammarAccess.getArgumentListAccess().getArgumentListAction_0()); } + { after(grammarAccess.getEmptyLiteralAccess().getEmptyLiteralAction_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group__1 +rule__EmptyLiteral__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ArgumentList__Group__1__Impl - rule__ArgumentList__Group__2 + rule__EmptyLiteral__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group__1__Impl +rule__EmptyLiteral__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); } - LeftParenthesis - { after(grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); } + { before(grammarAccess.getEmptyLiteralAccess().getEmptyKeyword_1()); } + Empty + { after(grammarAccess.getEmptyLiteralAccess().getEmptyKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group__2 + +rule__ClassDeclaration__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ArgumentList__Group__2__Impl - rule__ArgumentList__Group__3 + rule__ClassDeclaration__Group__0__Impl + rule__ClassDeclaration__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group__2__Impl +rule__ClassDeclaration__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getGroup_2()); } - (rule__ArgumentList__Group_2__0)? - { after(grammarAccess.getArgumentListAccess().getGroup_2()); } + { before(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); } + (rule__ClassDeclaration__UnorderedGroup_0) + { after(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group__3 +rule__ClassDeclaration__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ArgumentList__Group__3__Impl + rule__ClassDeclaration__Group__1__Impl + rule__ClassDeclaration__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group__3__Impl +rule__ClassDeclaration__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getRightParenthesisKeyword_3()); } - RightParenthesis - { after(grammarAccess.getArgumentListAccess().getRightParenthesisKeyword_3()); } + { before(grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); } + Class + { after(grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ArgumentList__Group_2__0 +rule__ClassDeclaration__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ArgumentList__Group_2__0__Impl - rule__ArgumentList__Group_2__1 + rule__ClassDeclaration__Group__2__Impl + rule__ClassDeclaration__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group_2__0__Impl +rule__ClassDeclaration__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0()); } - (rule__ArgumentList__ArgumentsAssignment_2_0) - { after(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0()); } + { before(grammarAccess.getClassDeclarationAccess().getNameAssignment_2()); } + (rule__ClassDeclaration__NameAssignment_2) + { after(grammarAccess.getClassDeclarationAccess().getNameAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group_2__1 +rule__ClassDeclaration__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ArgumentList__Group_2__1__Impl + rule__ClassDeclaration__Group__3__Impl + rule__ClassDeclaration__Group__4 ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group_2__1__Impl +rule__ClassDeclaration__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getGroup_2_1()); } - (rule__ArgumentList__Group_2_1__0)* - { after(grammarAccess.getArgumentListAccess().getGroup_2_1()); } + { before(grammarAccess.getClassDeclarationAccess().getGroup_3()); } + (rule__ClassDeclaration__Group_3__0)? + { after(grammarAccess.getClassDeclarationAccess().getGroup_3()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ArgumentList__Group_2_1__0 +rule__ClassDeclaration__Group__4 @init { int stackSize = keepStackSize(); } : - rule__ArgumentList__Group_2_1__0__Impl - rule__ArgumentList__Group_2_1__1 + rule__ClassDeclaration__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group_2_1__0__Impl +rule__ClassDeclaration__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); } - Comma - { after(grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); } + { before(grammarAccess.getClassDeclarationAccess().getAlternatives_4()); } + (rule__ClassDeclaration__Alternatives_4) + { after(grammarAccess.getClassDeclarationAccess().getAlternatives_4()); } ) ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group_2_1__1 + +rule__ClassDeclaration__Group_3__0 @init { int stackSize = keepStackSize(); } : - rule__ArgumentList__Group_2_1__1__Impl + rule__ClassDeclaration__Group_3__0__Impl + rule__ClassDeclaration__Group_3__1 ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__Group_2_1__1__Impl +rule__ClassDeclaration__Group_3__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1()); } - (rule__ArgumentList__ArgumentsAssignment_2_1_1) - { after(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1()); } + { before(grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); } + Extends + { after(grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__StarArgument__Group__0 +rule__ClassDeclaration__Group_3__1 @init { int stackSize = keepStackSize(); } : - rule__StarArgument__Group__0__Impl - rule__StarArgument__Group__1 + rule__ClassDeclaration__Group_3__1__Impl + rule__ClassDeclaration__Group_3__2 ; finally { restoreStackSize(stackSize); } -rule__StarArgument__Group__0__Impl +rule__ClassDeclaration__Group_3__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getStarArgumentAccess().getStarArgumentAction_0()); } - () - { after(grammarAccess.getStarArgumentAccess().getStarArgumentAction_0()); } + { before(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_1()); } + (rule__ClassDeclaration__SupertypesAssignment_3_1) + { after(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__StarArgument__Group__1 +rule__ClassDeclaration__Group_3__2 @init { int stackSize = keepStackSize(); } : - rule__StarArgument__Group__1__Impl + rule__ClassDeclaration__Group_3__2__Impl ; finally { restoreStackSize(stackSize); } -rule__StarArgument__Group__1__Impl +rule__ClassDeclaration__Group_3__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getStarArgumentAccess().getAsteriskKeyword_1()); } - Asterisk - { after(grammarAccess.getStarArgumentAccess().getAsteriskKeyword_1()); } + { before(grammarAccess.getClassDeclarationAccess().getGroup_3_2()); } + (rule__ClassDeclaration__Group_3_2__0)* + { after(grammarAccess.getClassDeclarationAccess().getGroup_3_2()); } ) ; finally { @@ -6980,53 +8420,53 @@ finally { } -rule__TypedArgument__Group__0 +rule__ClassDeclaration__Group_3_2__0 @init { int stackSize = keepStackSize(); } : - rule__TypedArgument__Group__0__Impl - rule__TypedArgument__Group__1 + rule__ClassDeclaration__Group_3_2__0__Impl + rule__ClassDeclaration__Group_3_2__1 ; finally { restoreStackSize(stackSize); } -rule__TypedArgument__Group__0__Impl +rule__ClassDeclaration__Group_3_2__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getTypedArgumentAccess().getTypeAssignment_0()); } - (rule__TypedArgument__TypeAssignment_0) - { after(grammarAccess.getTypedArgumentAccess().getTypeAssignment_0()); } + { before(grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); } + Comma + { after(grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__TypedArgument__Group__1 +rule__ClassDeclaration__Group_3_2__1 @init { int stackSize = keepStackSize(); } : - rule__TypedArgument__Group__1__Impl + rule__ClassDeclaration__Group_3_2__1__Impl ; finally { restoreStackSize(stackSize); } -rule__TypedArgument__Group__1__Impl +rule__ClassDeclaration__Group_3_2__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getTypedArgumentAccess().getVariableAssignment_1()); } - (rule__TypedArgument__VariableAssignment_1) - { after(grammarAccess.getTypedArgumentAccess().getVariableAssignment_1()); } + { before(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_2_1()); } + (rule__ClassDeclaration__SupertypesAssignment_3_2_1) + { after(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_2_1()); } ) ; finally { @@ -7034,242 +8474,242 @@ finally { } -rule__TypedStarArgument__Group__0 +rule__ClassDeclaration__Group_4_0__0 @init { int stackSize = keepStackSize(); } : - rule__TypedStarArgument__Group__0__Impl - rule__TypedStarArgument__Group__1 + rule__ClassDeclaration__Group_4_0__0__Impl + rule__ClassDeclaration__Group_4_0__1 ; finally { restoreStackSize(stackSize); } -rule__TypedStarArgument__Group__0__Impl +rule__ClassDeclaration__Group_4_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getTypedStarArgumentAccess().getTypeAssignment_0()); } - (rule__TypedStarArgument__TypeAssignment_0) - { after(grammarAccess.getTypedStarArgumentAccess().getTypeAssignment_0()); } + { before(grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); } + LeftCurlyBracket + { after(grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__TypedStarArgument__Group__1 +rule__ClassDeclaration__Group_4_0__1 @init { int stackSize = keepStackSize(); } : - rule__TypedStarArgument__Group__1__Impl + rule__ClassDeclaration__Group_4_0__1__Impl + rule__ClassDeclaration__Group_4_0__2 ; finally { restoreStackSize(stackSize); } -rule__TypedStarArgument__Group__1__Impl +rule__ClassDeclaration__Group_4_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getTypedStarArgumentAccess().getAsteriskKeyword_1()); } - Asterisk - { after(grammarAccess.getTypedStarArgumentAccess().getAsteriskKeyword_1()); } + { before(grammarAccess.getClassDeclarationAccess().getFieldsAssignment_4_0_1()); } + (rule__ClassDeclaration__FieldsAssignment_4_0_1)* + { after(grammarAccess.getClassDeclarationAccess().getFieldsAssignment_4_0_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__Interval__Group__0 +rule__ClassDeclaration__Group_4_0__2 @init { int stackSize = keepStackSize(); } : - rule__Interval__Group__0__Impl - rule__Interval__Group__1 + rule__ClassDeclaration__Group_4_0__2__Impl ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__0__Impl +rule__ClassDeclaration__Group_4_0__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); } - LeftSquareBracket - { after(grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); } + { before(grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); } + RightCurlyBracket + { after(grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__1 + +rule__Field__Group__0 @init { int stackSize = keepStackSize(); } : - rule__Interval__Group__1__Impl - rule__Interval__Group__2 + rule__Field__Group__0__Impl + rule__Field__Group__1 ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__1__Impl +rule__Field__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1()); } - (rule__Interval__LowerBoundAssignment_1) - { after(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1()); } + { before(grammarAccess.getFieldAccess().getAlternatives_0()); } + (rule__Field__Alternatives_0)? + { after(grammarAccess.getFieldAccess().getAlternatives_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__2 +rule__Field__Group__1 @init { int stackSize = keepStackSize(); } : - rule__Interval__Group__2__Impl - rule__Interval__Group__3 + rule__Field__Group__1__Impl + rule__Field__Group__2 ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__2__Impl +rule__Field__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIntervalAccess().getFullStopFullStopKeyword_2()); } - FullStopFullStop - { after(grammarAccess.getIntervalAccess().getFullStopFullStopKeyword_2()); } + { before(grammarAccess.getFieldAccess().getTypeAssignment_1()); } + (rule__Field__TypeAssignment_1) + { after(grammarAccess.getFieldAccess().getTypeAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__3 +rule__Field__Group__2 @init { int stackSize = keepStackSize(); } : - rule__Interval__Group__3__Impl - rule__Interval__Group__4 + rule__Field__Group__2__Impl + rule__Field__Group__3 ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__3__Impl +rule__Field__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3()); } - (rule__Interval__UpperBoundAssignment_3) - { after(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3()); } + { before(grammarAccess.getFieldAccess().getMultiplicityAssignment_2()); } + (rule__Field__MultiplicityAssignment_2)? + { after(grammarAccess.getFieldAccess().getMultiplicityAssignment_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__4 +rule__Field__Group__3 @init { int stackSize = keepStackSize(); } : - rule__Interval__Group__4__Impl + rule__Field__Group__3__Impl + rule__Field__Group__4 ; finally { restoreStackSize(stackSize); } -rule__Interval__Group__4__Impl +rule__Field__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIntervalAccess().getRightSquareBracketKeyword_4()); } - RightSquareBracket - { after(grammarAccess.getIntervalAccess().getRightSquareBracketKeyword_4()); } + { before(grammarAccess.getFieldAccess().getNameAssignment_3()); } + (rule__Field__NameAssignment_3) + { after(grammarAccess.getFieldAccess().getNameAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } - -rule__InfinityLiteral__Group__0 +rule__Field__Group__4 @init { int stackSize = keepStackSize(); } : - rule__InfinityLiteral__Group__0__Impl - rule__InfinityLiteral__Group__1 + rule__Field__Group__4__Impl + rule__Field__Group__5 ; finally { restoreStackSize(stackSize); } -rule__InfinityLiteral__Group__0__Impl +rule__Field__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getInfinityLiteralAccess().getInfinityLiteralAction_0()); } - () - { after(grammarAccess.getInfinityLiteralAccess().getInfinityLiteralAction_0()); } + { before(grammarAccess.getFieldAccess().getGroup_4()); } + (rule__Field__Group_4__0)? + { after(grammarAccess.getFieldAccess().getGroup_4()); } ) ; finally { restoreStackSize(stackSize); } -rule__InfinityLiteral__Group__1 +rule__Field__Group__5 @init { int stackSize = keepStackSize(); } : - rule__InfinityLiteral__Group__1__Impl + rule__Field__Group__5__Impl ; finally { restoreStackSize(stackSize); } -rule__InfinityLiteral__Group__1__Impl +rule__Field__Group__5__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getInfinityLiteralAccess().getInfKeyword_1()); } - Inf - { after(grammarAccess.getInfinityLiteralAccess().getInfKeyword_1()); } + { before(grammarAccess.getFieldAccess().getSemicolonKeyword_5()); } + (Semicolon)? + { after(grammarAccess.getFieldAccess().getSemicolonKeyword_5()); } ) ; finally { @@ -7277,53 +8717,53 @@ finally { } -rule__EmptyIntervalLiteral__Group__0 +rule__Field__Group_4__0 @init { int stackSize = keepStackSize(); } : - rule__EmptyIntervalLiteral__Group__0__Impl - rule__EmptyIntervalLiteral__Group__1 + rule__Field__Group_4__0__Impl + rule__Field__Group_4__1 ; finally { restoreStackSize(stackSize); } -rule__EmptyIntervalLiteral__Group__0__Impl +rule__Field__Group_4__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getEmptyIntervalLiteralAccess().getEmptyIntervalLiteralAction_0()); } - () - { after(grammarAccess.getEmptyIntervalLiteralAccess().getEmptyIntervalLiteralAction_0()); } + { before(grammarAccess.getFieldAccess().getOppositeKeyword_4_0()); } + Opposite + { after(grammarAccess.getFieldAccess().getOppositeKeyword_4_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__EmptyIntervalLiteral__Group__1 +rule__Field__Group_4__1 @init { int stackSize = keepStackSize(); } : - rule__EmptyIntervalLiteral__Group__1__Impl + rule__Field__Group_4__1__Impl ; finally { restoreStackSize(stackSize); } -rule__EmptyIntervalLiteral__Group__1__Impl +rule__Field__Group_4__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getEmptyIntervalLiteralAccess().getEmptyKeyword_1()); } - Empty - { after(grammarAccess.getEmptyIntervalLiteralAccess().getEmptyKeyword_1()); } + { before(grammarAccess.getFieldAccess().getOppositeAssignment_4_1()); } + (rule__Field__OppositeAssignment_4_1) + { after(grammarAccess.getFieldAccess().getOppositeAssignment_4_1()); } ) ; finally { @@ -7331,701 +8771,701 @@ finally { } -rule__ClassDefinition__Group__0 +rule__UnboundedMultiplicity__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group__0__Impl - rule__ClassDefinition__Group__1 + rule__UnboundedMultiplicity__Group__0__Impl + rule__UnboundedMultiplicity__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__0__Impl +rule__UnboundedMultiplicity__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getAbstractAssignment_0()); } - (rule__ClassDefinition__AbstractAssignment_0)? - { after(grammarAccess.getClassDefinitionAccess().getAbstractAssignment_0()); } + { before(grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction_0()); } + () + { after(grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__1 +rule__UnboundedMultiplicity__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group__1__Impl - rule__ClassDefinition__Group__2 + rule__UnboundedMultiplicity__Group__1__Impl + rule__UnboundedMultiplicity__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__1__Impl +rule__UnboundedMultiplicity__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getClassKeyword_1()); } - Class - { after(grammarAccess.getClassDefinitionAccess().getClassKeyword_1()); } + { before(grammarAccess.getUnboundedMultiplicityAccess().getLeftSquareBracketKeyword_1()); } + LeftSquareBracket + { after(grammarAccess.getUnboundedMultiplicityAccess().getLeftSquareBracketKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__2 +rule__UnboundedMultiplicity__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group__2__Impl - rule__ClassDefinition__Group__3 + rule__UnboundedMultiplicity__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__2__Impl +rule__UnboundedMultiplicity__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getNameAssignment_2()); } - (rule__ClassDefinition__NameAssignment_2) - { after(grammarAccess.getClassDefinitionAccess().getNameAssignment_2()); } + { before(grammarAccess.getUnboundedMultiplicityAccess().getRightSquareBracketKeyword_2()); } + RightSquareBracket + { after(grammarAccess.getUnboundedMultiplicityAccess().getRightSquareBracketKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__3 + +rule__ExactMultiplicity__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group__3__Impl - rule__ClassDefinition__Group__4 + rule__ExactMultiplicity__Group__0__Impl + rule__ExactMultiplicity__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__3__Impl +rule__ExactMultiplicity__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getGroup_3()); } - (rule__ClassDefinition__Group_3__0)? - { after(grammarAccess.getClassDefinitionAccess().getGroup_3()); } + { before(grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); } + LeftSquareBracket + { after(grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__4 +rule__ExactMultiplicity__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group__4__Impl - rule__ClassDefinition__Group__5 + rule__ExactMultiplicity__Group__1__Impl + rule__ExactMultiplicity__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__4__Impl +rule__ExactMultiplicity__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getLeftCurlyBracketKeyword_4()); } - LeftCurlyBracket - { after(grammarAccess.getClassDefinitionAccess().getLeftCurlyBracketKeyword_4()); } + { before(grammarAccess.getExactMultiplicityAccess().getValueAssignment_1()); } + (rule__ExactMultiplicity__ValueAssignment_1) + { after(grammarAccess.getExactMultiplicityAccess().getValueAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__5 +rule__ExactMultiplicity__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group__5__Impl - rule__ClassDefinition__Group__6 + rule__ExactMultiplicity__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__5__Impl +rule__ExactMultiplicity__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getMembersAssignment_5()); } - (rule__ClassDefinition__MembersAssignment_5)* - { after(grammarAccess.getClassDefinitionAccess().getMembersAssignment_5()); } + { before(grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); } + RightSquareBracket + { after(grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__6 + +rule__BoundedMultiplicity__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group__6__Impl + rule__BoundedMultiplicity__Group__0__Impl + rule__BoundedMultiplicity__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group__6__Impl +rule__BoundedMultiplicity__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getRightCurlyBracketKeyword_6()); } - RightCurlyBracket - { after(grammarAccess.getClassDefinitionAccess().getRightCurlyBracketKeyword_6()); } + { before(grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); } + LeftSquareBracket + { after(grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ClassDefinition__Group_3__0 +rule__BoundedMultiplicity__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group_3__0__Impl - rule__ClassDefinition__Group_3__1 + rule__BoundedMultiplicity__Group__1__Impl + rule__BoundedMultiplicity__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group_3__0__Impl +rule__BoundedMultiplicity__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getExtendsKeyword_3_0()); } - Extends - { after(grammarAccess.getClassDefinitionAccess().getExtendsKeyword_3_0()); } + { before(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1()); } + (rule__BoundedMultiplicity__LowerBoundAssignment_1) + { after(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group_3__1 +rule__BoundedMultiplicity__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group_3__1__Impl - rule__ClassDefinition__Group_3__2 + rule__BoundedMultiplicity__Group__2__Impl + rule__BoundedMultiplicity__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group_3__1__Impl +rule__BoundedMultiplicity__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_1()); } - (rule__ClassDefinition__SuperclassesAssignment_3_1) - { after(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_1()); } + { before(grammarAccess.getBoundedMultiplicityAccess().getCommaKeyword_2()); } + Comma + { after(grammarAccess.getBoundedMultiplicityAccess().getCommaKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group_3__2 +rule__BoundedMultiplicity__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group_3__2__Impl + rule__BoundedMultiplicity__Group__3__Impl + rule__BoundedMultiplicity__Group__4 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group_3__2__Impl +rule__BoundedMultiplicity__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getGroup_3_2()); } - (rule__ClassDefinition__Group_3_2__0)* - { after(grammarAccess.getClassDefinitionAccess().getGroup_3_2()); } + { before(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3()); } + (rule__BoundedMultiplicity__UpperBoundAssignment_3) + { after(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ClassDefinition__Group_3_2__0 +rule__BoundedMultiplicity__Group__4 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group_3_2__0__Impl - rule__ClassDefinition__Group_3_2__1 + rule__BoundedMultiplicity__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group_3_2__0__Impl +rule__BoundedMultiplicity__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getCommaKeyword_3_2_0()); } - Comma - { after(grammarAccess.getClassDefinitionAccess().getCommaKeyword_3_2_0()); } + { before(grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); } + RightSquareBracket + { after(grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group_3_2__1 + +rule__EnumDeclaration__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ClassDefinition__Group_3_2__1__Impl + rule__EnumDeclaration__Group__0__Impl + rule__EnumDeclaration__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__Group_3_2__1__Impl +rule__EnumDeclaration__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_2_1()); } - (rule__ClassDefinition__SuperclassesAssignment_3_2_1) - { after(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_2_1()); } + { before(grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); } + Enum + { after(grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__MemberDefinition__Group__0 +rule__EnumDeclaration__Group__1 @init { int stackSize = keepStackSize(); } : - rule__MemberDefinition__Group__0__Impl - rule__MemberDefinition__Group__1 + rule__EnumDeclaration__Group__1__Impl + rule__EnumDeclaration__Group__2 ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__0__Impl +rule__EnumDeclaration__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getContainmentAssignment_0()); } - (rule__MemberDefinition__ContainmentAssignment_0)? - { after(grammarAccess.getMemberDefinitionAccess().getContainmentAssignment_0()); } + { before(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1()); } + (rule__EnumDeclaration__NameAssignment_1) + { after(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__1 +rule__EnumDeclaration__Group__2 @init { int stackSize = keepStackSize(); } : - rule__MemberDefinition__Group__1__Impl - rule__MemberDefinition__Group__2 + rule__EnumDeclaration__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__1__Impl +rule__EnumDeclaration__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getTypeAssignment_1()); } - (rule__MemberDefinition__TypeAssignment_1) - { after(grammarAccess.getMemberDefinitionAccess().getTypeAssignment_1()); } + { before(grammarAccess.getEnumDeclarationAccess().getAlternatives_2()); } + (rule__EnumDeclaration__Alternatives_2) + { after(grammarAccess.getEnumDeclarationAccess().getAlternatives_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__2 + +rule__EnumDeclaration__Group_2_0__0 @init { int stackSize = keepStackSize(); } : - rule__MemberDefinition__Group__2__Impl - rule__MemberDefinition__Group__3 + rule__EnumDeclaration__Group_2_0__0__Impl + rule__EnumDeclaration__Group_2_0__1 ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__2__Impl +rule__EnumDeclaration__Group_2_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getMultiplicityAssignment_2()); } - (rule__MemberDefinition__MultiplicityAssignment_2)? - { after(grammarAccess.getMemberDefinitionAccess().getMultiplicityAssignment_2()); } + { before(grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); } + LeftCurlyBracket + { after(grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__3 +rule__EnumDeclaration__Group_2_0__1 @init { int stackSize = keepStackSize(); } : - rule__MemberDefinition__Group__3__Impl - rule__MemberDefinition__Group__4 + rule__EnumDeclaration__Group_2_0__1__Impl + rule__EnumDeclaration__Group_2_0__2 ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__3__Impl +rule__EnumDeclaration__Group_2_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getNameAssignment_3()); } - (rule__MemberDefinition__NameAssignment_3) - { after(grammarAccess.getMemberDefinitionAccess().getNameAssignment_3()); } + { before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1()); } + (rule__EnumDeclaration__Group_2_0_1__0)? + { after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__4 +rule__EnumDeclaration__Group_2_0__2 @init { int stackSize = keepStackSize(); } : - rule__MemberDefinition__Group__4__Impl - rule__MemberDefinition__Group__5 + rule__EnumDeclaration__Group_2_0__2__Impl ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__4__Impl +rule__EnumDeclaration__Group_2_0__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getGroup_4()); } - (rule__MemberDefinition__Group_4__0)? - { after(grammarAccess.getMemberDefinitionAccess().getGroup_4()); } + { before(grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); } + RightCurlyBracket + { after(grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__5 + +rule__EnumDeclaration__Group_2_0_1__0 @init { int stackSize = keepStackSize(); } : - rule__MemberDefinition__Group__5__Impl + rule__EnumDeclaration__Group_2_0_1__0__Impl + rule__EnumDeclaration__Group_2_0_1__1 ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group__5__Impl +rule__EnumDeclaration__Group_2_0_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getSemicolonKeyword_5()); } - (Semicolon)? - { after(grammarAccess.getMemberDefinitionAccess().getSemicolonKeyword_5()); } + { before(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0()); } + (rule__EnumDeclaration__LiteralsAssignment_2_0_1_0) + { after(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__MemberDefinition__Group_4__0 +rule__EnumDeclaration__Group_2_0_1__1 @init { int stackSize = keepStackSize(); } : - rule__MemberDefinition__Group_4__0__Impl - rule__MemberDefinition__Group_4__1 + rule__EnumDeclaration__Group_2_0_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group_4__0__Impl +rule__EnumDeclaration__Group_2_0_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getOppositeKeyword_4_0()); } - Opposite - { after(grammarAccess.getMemberDefinitionAccess().getOppositeKeyword_4_0()); } + { before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1()); } + (rule__EnumDeclaration__Group_2_0_1_1__0)* + { after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group_4__1 + +rule__EnumDeclaration__Group_2_0_1_1__0 @init { int stackSize = keepStackSize(); } : - rule__MemberDefinition__Group_4__1__Impl + rule__EnumDeclaration__Group_2_0_1_1__0__Impl + rule__EnumDeclaration__Group_2_0_1_1__1 ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__Group_4__1__Impl +rule__EnumDeclaration__Group_2_0_1_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getOppositeAssignment_4_1()); } - (rule__MemberDefinition__OppositeAssignment_4_1) - { after(grammarAccess.getMemberDefinitionAccess().getOppositeAssignment_4_1()); } + { before(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); } + (Comma)? + { after(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ManyMultiplicity__Group__0 +rule__EnumDeclaration__Group_2_0_1_1__1 @init { int stackSize = keepStackSize(); } : - rule__ManyMultiplicity__Group__0__Impl - rule__ManyMultiplicity__Group__1 + rule__EnumDeclaration__Group_2_0_1_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ManyMultiplicity__Group__0__Impl +rule__EnumDeclaration__Group_2_0_1_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getManyMultiplicityAccess().getManyMultiplicityAction_0()); } - () - { after(grammarAccess.getManyMultiplicityAccess().getManyMultiplicityAction_0()); } + { before(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1()); } + (rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1) + { after(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ManyMultiplicity__Group__1 + +rule__ExactScope__Group__0 @init { int stackSize = keepStackSize(); } : - rule__ManyMultiplicity__Group__1__Impl - rule__ManyMultiplicity__Group__2 + rule__ExactScope__Group__0__Impl + rule__ExactScope__Group__1 ; finally { restoreStackSize(stackSize); } -rule__ManyMultiplicity__Group__1__Impl +rule__ExactScope__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getManyMultiplicityAccess().getLeftSquareBracketKeyword_1()); } - LeftSquareBracket - { after(grammarAccess.getManyMultiplicityAccess().getLeftSquareBracketKeyword_1()); } + { before(grammarAccess.getExactScopeAccess().getScopeKeyword_0()); } + Scope + { after(grammarAccess.getExactScopeAccess().getScopeKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ManyMultiplicity__Group__2 +rule__ExactScope__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ManyMultiplicity__Group__2__Impl + rule__ExactScope__Group__1__Impl + rule__ExactScope__Group__2 ; finally { restoreStackSize(stackSize); } -rule__ManyMultiplicity__Group__2__Impl +rule__ExactScope__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getManyMultiplicityAccess().getRightSquareBracketKeyword_2()); } - RightSquareBracket - { after(grammarAccess.getManyMultiplicityAccess().getRightSquareBracketKeyword_2()); } + { before(grammarAccess.getExactScopeAccess().getTypeAssignment_1()); } + (rule__ExactScope__TypeAssignment_1) + { after(grammarAccess.getExactScopeAccess().getTypeAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ExactMultiplicity__Group__0 +rule__ExactScope__Group__2 @init { int stackSize = keepStackSize(); } : - rule__ExactMultiplicity__Group__0__Impl - rule__ExactMultiplicity__Group__1 + rule__ExactScope__Group__2__Impl + rule__ExactScope__Group__3 ; finally { restoreStackSize(stackSize); } -rule__ExactMultiplicity__Group__0__Impl +rule__ExactScope__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); } - LeftSquareBracket - { after(grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); } + { before(grammarAccess.getExactScopeAccess().getEqualsSignEqualsSignKeyword_2()); } + EqualsSignEqualsSign + { after(grammarAccess.getExactScopeAccess().getEqualsSignEqualsSignKeyword_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExactMultiplicity__Group__1 +rule__ExactScope__Group__3 @init { int stackSize = keepStackSize(); } : - rule__ExactMultiplicity__Group__1__Impl - rule__ExactMultiplicity__Group__2 + rule__ExactScope__Group__3__Impl + rule__ExactScope__Group__4 ; finally { restoreStackSize(stackSize); } -rule__ExactMultiplicity__Group__1__Impl +rule__ExactScope__Group__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactMultiplicityAccess().getMultiplicityAssignment_1()); } - (rule__ExactMultiplicity__MultiplicityAssignment_1) - { after(grammarAccess.getExactMultiplicityAccess().getMultiplicityAssignment_1()); } + { before(grammarAccess.getExactScopeAccess().getSizeAssignment_3()); } + (rule__ExactScope__SizeAssignment_3) + { after(grammarAccess.getExactScopeAccess().getSizeAssignment_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExactMultiplicity__Group__2 +rule__ExactScope__Group__4 @init { int stackSize = keepStackSize(); } : - rule__ExactMultiplicity__Group__2__Impl + rule__ExactScope__Group__4__Impl ; finally { restoreStackSize(stackSize); } -rule__ExactMultiplicity__Group__2__Impl +rule__ExactScope__Group__4__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); } - RightSquareBracket - { after(grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); } + { before(grammarAccess.getExactScopeAccess().getFULL_STOPTerminalRuleCall_4()); } + RULE_FULL_STOP + { after(grammarAccess.getExactScopeAccess().getFULL_STOPTerminalRuleCall_4()); } ) ; finally { @@ -8033,242 +9473,242 @@ finally { } -rule__BoundedMultiplicity__Group__0 +rule__BoundedScope__Group__0 @init { int stackSize = keepStackSize(); } : - rule__BoundedMultiplicity__Group__0__Impl - rule__BoundedMultiplicity__Group__1 + rule__BoundedScope__Group__0__Impl + rule__BoundedScope__Group__1 ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__0__Impl +rule__BoundedScope__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); } - LeftSquareBracket - { after(grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); } + { before(grammarAccess.getBoundedScopeAccess().getScopeKeyword_0()); } + Scope + { after(grammarAccess.getBoundedScopeAccess().getScopeKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__1 +rule__BoundedScope__Group__1 @init { int stackSize = keepStackSize(); } : - rule__BoundedMultiplicity__Group__1__Impl - rule__BoundedMultiplicity__Group__2 + rule__BoundedScope__Group__1__Impl + rule__BoundedScope__Group__2 ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__1__Impl +rule__BoundedScope__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1()); } - (rule__BoundedMultiplicity__LowerBoundAssignment_1) - { after(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1()); } + { before(grammarAccess.getBoundedScopeAccess().getAlternatives_1()); } + (rule__BoundedScope__Alternatives_1) + { after(grammarAccess.getBoundedScopeAccess().getAlternatives_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__2 +rule__BoundedScope__Group__2 @init { int stackSize = keepStackSize(); } : - rule__BoundedMultiplicity__Group__2__Impl - rule__BoundedMultiplicity__Group__3 + rule__BoundedScope__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__2__Impl +rule__BoundedScope__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedMultiplicityAccess().getFullStopFullStopKeyword_2()); } - FullStopFullStop - { after(grammarAccess.getBoundedMultiplicityAccess().getFullStopFullStopKeyword_2()); } + { before(grammarAccess.getBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); } + RULE_FULL_STOP + { after(grammarAccess.getBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__3 + +rule__BoundedScope__Group_1_0__0 @init { int stackSize = keepStackSize(); } : - rule__BoundedMultiplicity__Group__3__Impl - rule__BoundedMultiplicity__Group__4 + rule__BoundedScope__Group_1_0__0__Impl + rule__BoundedScope__Group_1_0__1 ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__3__Impl +rule__BoundedScope__Group_1_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3()); } - (rule__BoundedMultiplicity__UpperBoundAssignment_3) - { after(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3()); } + { before(grammarAccess.getBoundedScopeAccess().getGroup_1_0_0()); } + (rule__BoundedScope__Group_1_0_0__0)? + { after(grammarAccess.getBoundedScopeAccess().getGroup_1_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__4 +rule__BoundedScope__Group_1_0__1 @init { int stackSize = keepStackSize(); } : - rule__BoundedMultiplicity__Group__4__Impl + rule__BoundedScope__Group_1_0__1__Impl + rule__BoundedScope__Group_1_0__2 ; finally { restoreStackSize(stackSize); } -rule__BoundedMultiplicity__Group__4__Impl +rule__BoundedScope__Group_1_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); } - RightSquareBracket - { after(grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); } + { before(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_0_1()); } + (rule__BoundedScope__TypeAssignment_1_0_1) + { after(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_0_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ExactScopeDefinition__Group__0 +rule__BoundedScope__Group_1_0__2 @init { int stackSize = keepStackSize(); } : - rule__ExactScopeDefinition__Group__0__Impl - rule__ExactScopeDefinition__Group__1 + rule__BoundedScope__Group_1_0__2__Impl + rule__BoundedScope__Group_1_0__3 ; finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__Group__0__Impl +rule__BoundedScope__Group_1_0__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactScopeDefinitionAccess().getScopeKeyword_0()); } - Scope - { after(grammarAccess.getExactScopeDefinitionAccess().getScopeKeyword_0()); } + { before(grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_2()); } + LessThanSignEqualsSign + { after(grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__Group__1 +rule__BoundedScope__Group_1_0__3 @init { int stackSize = keepStackSize(); } : - rule__ExactScopeDefinition__Group__1__Impl - rule__ExactScopeDefinition__Group__2 + rule__BoundedScope__Group_1_0__3__Impl ; finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__Group__1__Impl +rule__BoundedScope__Group_1_0__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactScopeDefinitionAccess().getTypeAssignment_1()); } - (rule__ExactScopeDefinition__TypeAssignment_1) - { after(grammarAccess.getExactScopeDefinitionAccess().getTypeAssignment_1()); } + { before(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_0_3()); } + (rule__BoundedScope__UpperBoundAssignment_1_0_3) + { after(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_0_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__Group__2 + +rule__BoundedScope__Group_1_0_0__0 @init { int stackSize = keepStackSize(); } : - rule__ExactScopeDefinition__Group__2__Impl - rule__ExactScopeDefinition__Group__3 + rule__BoundedScope__Group_1_0_0__0__Impl + rule__BoundedScope__Group_1_0_0__1 ; finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__Group__2__Impl +rule__BoundedScope__Group_1_0_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactScopeDefinitionAccess().getEqualsSignEqualsSignKeyword_2()); } - EqualsSignEqualsSign - { after(grammarAccess.getExactScopeDefinitionAccess().getEqualsSignEqualsSignKeyword_2()); } + { before(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_0_0_0()); } + (rule__BoundedScope__LowerBoundAssignment_1_0_0_0) + { after(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_0_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__Group__3 +rule__BoundedScope__Group_1_0_0__1 @init { int stackSize = keepStackSize(); } : - rule__ExactScopeDefinition__Group__3__Impl + rule__BoundedScope__Group_1_0_0__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__Group__3__Impl +rule__BoundedScope__Group_1_0_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactScopeDefinitionAccess().getExactScopeAssignment_3()); } - (rule__ExactScopeDefinition__ExactScopeAssignment_3) - { after(grammarAccess.getExactScopeDefinitionAccess().getExactScopeAssignment_3()); } + { before(grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); } + LessThanSignEqualsSign + { after(grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); } ) ; finally { @@ -8276,161 +9716,161 @@ finally { } -rule__BoundedScopeDefinition__Group__0 +rule__BoundedScope__Group_1_1__0 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group__0__Impl - rule__BoundedScopeDefinition__Group__1 + rule__BoundedScope__Group_1_1__0__Impl + rule__BoundedScope__Group_1_1__1 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group__0__Impl +rule__BoundedScope__Group_1_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getScopeKeyword_0()); } - Scope - { after(grammarAccess.getBoundedScopeDefinitionAccess().getScopeKeyword_0()); } + { before(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_1_0()); } + (rule__BoundedScope__UpperBoundAssignment_1_1_0) + { after(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group__1 +rule__BoundedScope__Group_1_1__1 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group__1__Impl + rule__BoundedScope__Group_1_1__1__Impl + rule__BoundedScope__Group_1_1__2 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group__1__Impl +rule__BoundedScope__Group_1_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getAlternatives_1()); } - (rule__BoundedScopeDefinition__Alternatives_1) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getAlternatives_1()); } + { before(grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } + GreaterThanSignEqualsSign + { after(grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__BoundedScopeDefinition__Group_1_0__0 +rule__BoundedScope__Group_1_1__2 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_0__0__Impl - rule__BoundedScopeDefinition__Group_1_0__1 + rule__BoundedScope__Group_1_1__2__Impl + rule__BoundedScope__Group_1_1__3 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0__0__Impl +rule__BoundedScope__Group_1_1__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0_0()); } - (rule__BoundedScopeDefinition__Group_1_0_0__0)? - { after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0_0()); } + { before(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_1_2()); } + (rule__BoundedScope__TypeAssignment_1_1_2) + { after(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_1_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0__1 +rule__BoundedScope__Group_1_1__3 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_0__1__Impl - rule__BoundedScopeDefinition__Group_1_0__2 + rule__BoundedScope__Group_1_1__3__Impl ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0__1__Impl +rule__BoundedScope__Group_1_1__3__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_0_1()); } - (rule__BoundedScopeDefinition__TypeAssignment_1_0_1) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_0_1()); } + { before(grammarAccess.getBoundedScopeAccess().getGroup_1_1_3()); } + (rule__BoundedScope__Group_1_1_3__0)? + { after(grammarAccess.getBoundedScopeAccess().getGroup_1_1_3()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0__2 + +rule__BoundedScope__Group_1_1_3__0 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_0__2__Impl - rule__BoundedScopeDefinition__Group_1_0__3 + rule__BoundedScope__Group_1_1_3__0__Impl + rule__BoundedScope__Group_1_1_3__1 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0__2__Impl +rule__BoundedScope__Group_1_1_3__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_2()); } - LessThanSignEqualsSign - { after(grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_2()); } + { before(grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); } + GreaterThanSignEqualsSign + { after(grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0__3 +rule__BoundedScope__Group_1_1_3__1 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_0__3__Impl + rule__BoundedScope__Group_1_1_3__1__Impl ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0__3__Impl +rule__BoundedScope__Group_1_1_3__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_0_3()); } - (rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_0_3()); } + { before(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_1_3_1()); } + (rule__BoundedScope__LowerBoundAssignment_1_1_3_1) + { after(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_1_3_1()); } ) ; finally { @@ -8438,161 +9878,161 @@ finally { } -rule__BoundedScopeDefinition__Group_1_0_0__0 +rule__LowerBoundedScope__Group__0 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_0_0__0__Impl - rule__BoundedScopeDefinition__Group_1_0_0__1 + rule__LowerBoundedScope__Group__0__Impl + rule__LowerBoundedScope__Group__1 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0_0__0__Impl +rule__LowerBoundedScope__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0_0()); } - (rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getScopeKeyword_0()); } + Scope + { after(grammarAccess.getLowerBoundedScopeAccess().getScopeKeyword_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0_0__1 +rule__LowerBoundedScope__Group__1 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_0_0__1__Impl + rule__LowerBoundedScope__Group__1__Impl + rule__LowerBoundedScope__Group__2 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_0_0__1__Impl +rule__LowerBoundedScope__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); } - LessThanSignEqualsSign - { after(grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getAlternatives_1()); } + (rule__LowerBoundedScope__Alternatives_1) + { after(grammarAccess.getLowerBoundedScopeAccess().getAlternatives_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__BoundedScopeDefinition__Group_1_1__0 +rule__LowerBoundedScope__Group__2 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_1__0__Impl - rule__BoundedScopeDefinition__Group_1_1__1 + rule__LowerBoundedScope__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1__0__Impl +rule__LowerBoundedScope__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_1_0()); } - (rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_1_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); } + RULE_FULL_STOP + { after(grammarAccess.getLowerBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1__1 + +rule__LowerBoundedScope__Group_1_0__0 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_1__1__Impl - rule__BoundedScopeDefinition__Group_1_1__2 + rule__LowerBoundedScope__Group_1_0__0__Impl + rule__LowerBoundedScope__Group_1_0__1 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1__1__Impl +rule__LowerBoundedScope__Group_1_0__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } - GreaterThanSignEqualsSign - { after(grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_0_0()); } + (rule__LowerBoundedScope__LowerBoundAssignment_1_0_0) + { after(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1__2 +rule__LowerBoundedScope__Group_1_0__1 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_1__2__Impl - rule__BoundedScopeDefinition__Group_1_1__3 + rule__LowerBoundedScope__Group_1_0__1__Impl + rule__LowerBoundedScope__Group_1_0__2 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1__2__Impl +rule__LowerBoundedScope__Group_1_0__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_1_2()); } - (rule__BoundedScopeDefinition__TypeAssignment_1_1_2) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_1_2()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_1()); } + LessThanSignEqualsSign + { after(grammarAccess.getLowerBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1__3 +rule__LowerBoundedScope__Group_1_0__2 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_1__3__Impl + rule__LowerBoundedScope__Group_1_0__2__Impl ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1__3__Impl +rule__LowerBoundedScope__Group_1_0__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1_3()); } - (rule__BoundedScopeDefinition__Group_1_1_3__0)? - { after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1_3()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_0_2()); } + (rule__LowerBoundedScope__TypeAssignment_1_0_2) + { after(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_0_2()); } ) ; finally { @@ -8600,570 +10040,637 @@ finally { } -rule__BoundedScopeDefinition__Group_1_1_3__0 +rule__LowerBoundedScope__Group_1_1__0 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_1_3__0__Impl - rule__BoundedScopeDefinition__Group_1_1_3__1 + rule__LowerBoundedScope__Group_1_1__0__Impl + rule__LowerBoundedScope__Group_1_1__1 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1_3__0__Impl +rule__LowerBoundedScope__Group_1_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); } - GreaterThanSignEqualsSign - { after(grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_1_0()); } + (rule__LowerBoundedScope__TypeAssignment_1_1_0) + { after(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1_3__1 +rule__LowerBoundedScope__Group_1_1__1 @init { int stackSize = keepStackSize(); } : - rule__BoundedScopeDefinition__Group_1_1_3__1__Impl + rule__LowerBoundedScope__Group_1_1__1__Impl + rule__LowerBoundedScope__Group_1_1__2 ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__Group_1_1_3__1__Impl +rule__LowerBoundedScope__Group_1_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_3_1()); } - (rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_3_1()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } + GreaterThanSignEqualsSign + { after(grammarAccess.getLowerBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } ) ; finally { restoreStackSize(stackSize); } - -rule__LowerBoundedScopeDefinition__Group__0 +rule__LowerBoundedScope__Group_1_1__2 @init { int stackSize = keepStackSize(); } : - rule__LowerBoundedScopeDefinition__Group__0__Impl - rule__LowerBoundedScopeDefinition__Group__1 + rule__LowerBoundedScope__Group_1_1__2__Impl ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group__0__Impl +rule__LowerBoundedScope__Group_1_1__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getScopeKeyword_0()); } - Scope - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getScopeKeyword_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_1_2()); } + (rule__LowerBoundedScope__LowerBoundAssignment_1_1_2) + { after(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_1_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group__1 + +rule__ObjectiveDeclaration__Group__0 @init { int stackSize = keepStackSize(); } : - rule__LowerBoundedScopeDefinition__Group__1__Impl + rule__ObjectiveDeclaration__Group__0__Impl + rule__ObjectiveDeclaration__Group__1 ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group__1__Impl +rule__ObjectiveDeclaration__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getAlternatives_1()); } - (rule__LowerBoundedScopeDefinition__Alternatives_1) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getAlternatives_1()); } + { before(grammarAccess.getObjectiveDeclarationAccess().getKindAssignment_0()); } + (rule__ObjectiveDeclaration__KindAssignment_0) + { after(grammarAccess.getObjectiveDeclarationAccess().getKindAssignment_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__LowerBoundedScopeDefinition__Group_1_0__0 +rule__ObjectiveDeclaration__Group__1 @init { int stackSize = keepStackSize(); } : - rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl - rule__LowerBoundedScopeDefinition__Group_1_0__1 + rule__ObjectiveDeclaration__Group__1__Impl + rule__ObjectiveDeclaration__Group__2 ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl +rule__ObjectiveDeclaration__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0()); } - (rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0()); } + { before(grammarAccess.getObjectiveDeclarationAccess().getObjectiveAssignment_1()); } + (rule__ObjectiveDeclaration__ObjectiveAssignment_1) + { after(grammarAccess.getObjectiveDeclarationAccess().getObjectiveAssignment_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_0__1 +rule__ObjectiveDeclaration__Group__2 @init { int stackSize = keepStackSize(); } : - rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl - rule__LowerBoundedScopeDefinition__Group_1_0__2 + rule__ObjectiveDeclaration__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl +rule__ObjectiveDeclaration__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_1()); } - LessThanSignEqualsSign - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_1()); } + { before(grammarAccess.getObjectiveDeclarationAccess().getFULL_STOPTerminalRuleCall_2()); } + RULE_FULL_STOP + { after(grammarAccess.getObjectiveDeclarationAccess().getFULL_STOPTerminalRuleCall_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_0__2 + +rule__Real__Group__0 @init { int stackSize = keepStackSize(); } : - rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl + rule__Real__Group__0__Impl + rule__Real__Group__1 ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl +rule__Real__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_0_2()); } - (rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_0_2()); } + { before(grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); } + RULE_INT + { after(grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__LowerBoundedScopeDefinition__Group_1_1__0 +rule__Real__Group__1 @init { int stackSize = keepStackSize(); } : - rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl - rule__LowerBoundedScopeDefinition__Group_1_1__1 + rule__Real__Group__1__Impl + rule__Real__Group__2 ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl +rule__Real__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_1_0()); } - (rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_1_0()); } + { before(grammarAccess.getRealAccess().getFullStopKeyword_1()); } + FullStop + { after(grammarAccess.getRealAccess().getFullStopKeyword_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_1__1 +rule__Real__Group__2 @init { int stackSize = keepStackSize(); } : - rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl - rule__LowerBoundedScopeDefinition__Group_1_1__2 + rule__Real__Group__2__Impl ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl +rule__Real__Group__2__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } - GreaterThanSignEqualsSign - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } + { before(grammarAccess.getRealAccess().getINTTerminalRuleCall_2()); } + RULE_INT + { after(grammarAccess.getRealAccess().getINTTerminalRuleCall_2()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_1__2 + +rule__QualifiedName__Group__0 @init { int stackSize = keepStackSize(); } : - rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl + rule__QualifiedName__Group__0__Impl + rule__QualifiedName__Group__1 ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl +rule__QualifiedName__Group__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_2()); } - (rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_2()); } + { before(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_0()); } + ruleQualifiedNameSegment + { after(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__ObjectiveDefinition__Group__0 +rule__QualifiedName__Group__1 @init { int stackSize = keepStackSize(); } : - rule__ObjectiveDefinition__Group__0__Impl - rule__ObjectiveDefinition__Group__1 + rule__QualifiedName__Group__1__Impl ; finally { restoreStackSize(stackSize); } -rule__ObjectiveDefinition__Group__0__Impl +rule__QualifiedName__Group__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getObjectiveDefinitionAccess().getKindAssignment_0()); } - (rule__ObjectiveDefinition__KindAssignment_0) - { after(grammarAccess.getObjectiveDefinitionAccess().getKindAssignment_0()); } + { before(grammarAccess.getQualifiedNameAccess().getGroup_1()); } + (rule__QualifiedName__Group_1__0)* + { after(grammarAccess.getQualifiedNameAccess().getGroup_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__ObjectiveDefinition__Group__1 + +rule__QualifiedName__Group_1__0 @init { int stackSize = keepStackSize(); } : - rule__ObjectiveDefinition__Group__1__Impl + rule__QualifiedName__Group_1__0__Impl + rule__QualifiedName__Group_1__1 ; finally { restoreStackSize(stackSize); } -rule__ObjectiveDefinition__Group__1__Impl +rule__QualifiedName__Group_1__0__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getObjectiveDefinitionAccess().getObjectiveAssignment_1()); } - (rule__ObjectiveDefinition__ObjectiveAssignment_1) - { after(grammarAccess.getObjectiveDefinitionAccess().getObjectiveAssignment_1()); } + { before(grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_0()); } + ColonColon + { after(grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_0()); } ) ; finally { restoreStackSize(stackSize); } - -rule__Real__Group__0 +rule__QualifiedName__Group_1__1 @init { int stackSize = keepStackSize(); } : - rule__Real__Group__0__Impl - rule__Real__Group__1 + rule__QualifiedName__Group_1__1__Impl ; finally { restoreStackSize(stackSize); } -rule__Real__Group__0__Impl +rule__QualifiedName__Group_1__1__Impl @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); } - RULE_INT - { after(grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); } + { before(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_1_1()); } + ruleQualifiedNameSegment + { after(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_1_1()); } ) ; finally { restoreStackSize(stackSize); } -rule__Real__Group__1 + +rule__ExternPredicateDeclaration__UnorderedGroup_1 @init { int stackSize = keepStackSize(); + getUnorderedGroupHelper().enter(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); } : - rule__Real__Group__1__Impl + rule__ExternPredicateDeclaration__UnorderedGroup_1__0 + ? ; finally { + getUnorderedGroupHelper().leave(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); restoreStackSize(stackSize); } -rule__Real__Group__1__Impl +rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl @init { int stackSize = keepStackSize(); + boolean selected = false; } : -( - { before(grammarAccess.getRealAccess().getGroup_1()); } - (rule__Real__Group_1__0)? - { after(grammarAccess.getRealAccess().getGroup_1()); } -) + ( + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0); + } + { + selected = true; + } + ( + { before(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalAssignment_1_0()); } + (rule__ExternPredicateDeclaration__FunctionalAssignment_1_0) + { after(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalAssignment_1_0()); } + ) + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1); + } + { + selected = true; + } + ( + { before(grammarAccess.getExternPredicateDeclarationAccess().getErrorAssignment_1_1()); } + (rule__ExternPredicateDeclaration__ErrorAssignment_1_1) + { after(grammarAccess.getExternPredicateDeclarationAccess().getErrorAssignment_1_1()); } + ) + ) + ) + ) ; finally { + if (selected) + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); restoreStackSize(stackSize); } - -rule__Real__Group_1__0 +rule__ExternPredicateDeclaration__UnorderedGroup_1__0 @init { int stackSize = keepStackSize(); } : - rule__Real__Group_1__0__Impl - rule__Real__Group_1__1 + rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl + rule__ExternPredicateDeclaration__UnorderedGroup_1__1? ; finally { restoreStackSize(stackSize); } -rule__Real__Group_1__0__Impl +rule__ExternPredicateDeclaration__UnorderedGroup_1__1 @init { int stackSize = keepStackSize(); } : -( - { before(grammarAccess.getRealAccess().getFullStopKeyword_1_0()); } - FullStop - { after(grammarAccess.getRealAccess().getFullStopKeyword_1_0()); } -) + rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl ; finally { restoreStackSize(stackSize); } -rule__Real__Group_1__1 + +rule__ClassDeclaration__UnorderedGroup_0 @init { int stackSize = keepStackSize(); + getUnorderedGroupHelper().enter(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); } : - rule__Real__Group_1__1__Impl + rule__ClassDeclaration__UnorderedGroup_0__0 + ? ; finally { + getUnorderedGroupHelper().leave(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); restoreStackSize(stackSize); } -rule__Real__Group_1__1__Impl +rule__ClassDeclaration__UnorderedGroup_0__Impl @init { int stackSize = keepStackSize(); + boolean selected = false; } : -( - { before(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1()); } - RULE_INT - { after(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1()); } -) + ( + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0); + } + { + selected = true; + } + ( + { before(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0_0()); } + (rule__ClassDeclaration__AbstractAssignment_0_0) + { after(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0_0()); } + ) + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1); + } + { + selected = true; + } + ( + { before(grammarAccess.getClassDeclarationAccess().getRootAssignment_0_1()); } + (rule__ClassDeclaration__RootAssignment_0_1) + { after(grammarAccess.getClassDeclarationAccess().getRootAssignment_0_1()); } + ) + ) + ) + ) ; finally { + if (selected) + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); restoreStackSize(stackSize); } - -rule__QualifiedName__Group_0__0 +rule__ClassDeclaration__UnorderedGroup_0__0 @init { int stackSize = keepStackSize(); } : - rule__QualifiedName__Group_0__0__Impl - rule__QualifiedName__Group_0__1 + rule__ClassDeclaration__UnorderedGroup_0__Impl + rule__ClassDeclaration__UnorderedGroup_0__1? ; finally { restoreStackSize(stackSize); } -rule__QualifiedName__Group_0__0__Impl +rule__ClassDeclaration__UnorderedGroup_0__1 @init { int stackSize = keepStackSize(); } : -( - { before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_0()); } - RULE_ID - { after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_0()); } -) + rule__ClassDeclaration__UnorderedGroup_0__Impl ; finally { restoreStackSize(stackSize); } -rule__QualifiedName__Group_0__1 + +rule__Problem__NameAssignment_0_1 @init { int stackSize = keepStackSize(); } : - rule__QualifiedName__Group_0__1__Impl + ( + { before(grammarAccess.getProblemAccess().getNameQualifiedNameParserRuleCall_0_1_0()); } + ruleQualifiedName + { after(grammarAccess.getProblemAccess().getNameQualifiedNameParserRuleCall_0_1_0()); } + ) ; finally { restoreStackSize(stackSize); } -rule__QualifiedName__Group_0__1__Impl +rule__Problem__ImportsAssignment_1 @init { int stackSize = keepStackSize(); } : -( - { before(grammarAccess.getQualifiedNameAccess().getGroup_0_1()); } - (rule__QualifiedName__Group_0_1__0)* - { after(grammarAccess.getQualifiedNameAccess().getGroup_0_1()); } -) + ( + { before(grammarAccess.getProblemAccess().getImportsImportParserRuleCall_1_0()); } + ruleImport + { after(grammarAccess.getProblemAccess().getImportsImportParserRuleCall_1_0()); } + ) ; finally { restoreStackSize(stackSize); } - -rule__QualifiedName__Group_0_1__0 +rule__Problem__StatementsAssignment_2 @init { int stackSize = keepStackSize(); } : - rule__QualifiedName__Group_0_1__0__Impl - rule__QualifiedName__Group_0_1__1 + ( + { before(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_2_0()); } + ruleStatement + { after(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_2_0()); } + ) ; finally { restoreStackSize(stackSize); } -rule__QualifiedName__Group_0_1__0__Impl +rule__UriImport__UriAssignment_1 @init { int stackSize = keepStackSize(); } : -( - { before(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_0_1_0()); } - FullStop - { after(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_0_1_0()); } -) + ( + { before(grammarAccess.getUriImportAccess().getUriSTRINGTerminalRuleCall_1_0()); } + RULE_STRING + { after(grammarAccess.getUriImportAccess().getUriSTRINGTerminalRuleCall_1_0()); } + ) ; finally { restoreStackSize(stackSize); } -rule__QualifiedName__Group_0_1__1 +rule__UriImport__AliasAssignment_2_1 @init { int stackSize = keepStackSize(); } : - rule__QualifiedName__Group_0_1__1__Impl + ( + { before(grammarAccess.getUriImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); } + ruleQualifiedName + { after(grammarAccess.getUriImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); } + ) ; finally { restoreStackSize(stackSize); } -rule__QualifiedName__Group_0_1__1__Impl +rule__NamespaceImport__ImportedNamespaceAssignment_1 @init { int stackSize = keepStackSize(); } : -( - { before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_1_1()); } - RULE_ID - { after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_1_1()); } -) + ( + { before(grammarAccess.getNamespaceImportAccess().getImportedNamespaceQualifiedNameParserRuleCall_1_0()); } + ruleQualifiedName + { after(grammarAccess.getNamespaceImportAccess().getImportedNamespaceQualifiedNameParserRuleCall_1_0()); } + ) ; finally { restoreStackSize(stackSize); } - -rule__Problem__StatementsAssignment +rule__NamespaceImport__AliasAssignment_2_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0()); } - ruleStatement - { after(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0()); } + { before(grammarAccess.getNamespaceImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); } + ruleQualifiedName + { after(grammarAccess.getNamespaceImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__AssertionOrDefinition__RangeAssignment_1_0_2 +rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0()); } + { before(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0()); } ruleExpression - { after(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0()); } + { after(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0()); } ) ; finally { @@ -9306,478 +10813,520 @@ finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 +rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0()); } + { before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListArgumentListParserRuleCall_1_0()); } ruleArgumentList - { after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0()); } + { after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListArgumentListParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 +rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } + { before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyExpressionParserRuleCall_3_0()); } ruleExpression - { after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } + { after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyExpressionParserRuleCall_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__HeadAssignment_1 +rule__DefaultAssertion__ExpressionAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0()); } + { before(grammarAccess.getDefaultAssertionAccess().getExpressionCallParserRuleCall_1_0()); } ruleCall - { after(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0()); } + { after(grammarAccess.getDefaultAssertionAccess().getExpressionCallParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__DefaultDefinition__RangeAssignment_3 +rule__DefaultAssertion__RangeAssignment_2_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0()); } + { before(grammarAccess.getDefaultAssertionAccess().getRangeExpressionParserRuleCall_2_1_0()); } ruleExpression - { after(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0()); } + { after(grammarAccess.getDefaultAssertionAccess().getRangeExpressionParserRuleCall_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__TypeAssignment_0 +rule__FunctionDefinition__ResultTypeAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0()); } + { before(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolCrossReference_0_0()); } ( - { before(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); } + { before(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolQualifiedNameParserRuleCall_0_0_1()); } ruleQualifiedName - { after(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); } + { after(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolQualifiedNameParserRuleCall_0_0_1()); } ) - { after(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0()); } + { after(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolCrossReference_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__HeadAssignment_1 +rule__FunctionDefinition__HeadAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0()); } + { before(grammarAccess.getFunctionDefinitionAccess().getHeadCallParserRuleCall_1_0()); } ruleCall - { after(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0()); } + { after(grammarAccess.getFunctionDefinitionAccess().getHeadCallParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MetricDefinition__BodyAssignment_3 +rule__FunctionDefinition__BodyAssignment_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } + { before(grammarAccess.getFunctionDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } ruleExpression - { after(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } + { after(grammarAccess.getFunctionDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternPredicateDefinition__NameAssignment_1 +rule__TypeReference__TypeAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0()); } - ruleQualifiedName - { after(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0()); } + { before(grammarAccess.getTypeReferenceAccess().getTypeSymbolCrossReference_0_0()); } + ( + { before(grammarAccess.getTypeReferenceAccess().getTypeSymbolQualifiedNameParserRuleCall_0_0_1()); } + ruleQualifiedName + { after(grammarAccess.getTypeReferenceAccess().getTypeSymbolQualifiedNameParserRuleCall_0_0_1()); } + ) + { after(grammarAccess.getTypeReferenceAccess().getTypeSymbolCrossReference_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternPredicateDefinition__ArgumentListAssignment_2 +rule__TypeReference__ForceObjectTypeAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0()); } - ruleArgumentList - { after(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0()); } + { before(grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); } + ( + { before(grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); } + Object + { after(grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); } + ) + { after(grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__TypeAssignment_1 +rule__Attribute__KindAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0()); } - ( - { before(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); } - ruleQualifiedName - { after(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); } - ) - { after(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0()); } + { before(grammarAccess.getAttributeAccess().getKindAttributeKindEnumRuleCall_0_0()); } + ruleAttributeKind + { after(grammarAccess.getAttributeAccess().getKindAttributeKindEnumRuleCall_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__NameAssignment_2 +rule__Attribute__TargetAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); } - ruleQualifiedName - { after(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); } + { before(grammarAccess.getAttributeAccess().getTargetSymbolCrossReference_1_0()); } + ( + { before(grammarAccess.getAttributeAccess().getTargetSymbolQualifiedNameParserRuleCall_1_0_1()); } + ruleQualifiedName + { after(grammarAccess.getAttributeAccess().getTargetSymbolQualifiedNameParserRuleCall_1_0_1()); } + ) + { after(grammarAccess.getAttributeAccess().getTargetSymbolCrossReference_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternMetricDefinition__ArgumentListAssignment_3 +rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0()); } - ruleArgumentList - { after(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); } + ( + { before(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); } + Functional + { after(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); } + ) + { after(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__TypeAssignment_1 +rule__ExternPredicateDeclaration__ErrorAssignment_1_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); } ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); } - ruleQualifiedName - { after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); } + Error + { after(grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); } ) - { after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0()); } + { after(grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__NameAssignment_2 +rule__ExternPredicateDeclaration__NameAssignment_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); } + { before(grammarAccess.getExternPredicateDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } ruleQualifiedName - { after(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); } + { after(grammarAccess.getExternPredicateDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ExternPredicateDeclaration__ArgumentListAssignment_3 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); } + ruleArgumentList + { after(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternAggregatorDefinition__InputTypeAssignment_4 +rule__ExternFunctionDeclaration__ResultTypeAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); } ( - { before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } ruleQualifiedName - { after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1()); } + { after(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } ) - { after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0()); } + { after(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__NameAssignment_2 +rule__ExternFunctionDeclaration__NameAssignment_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } ruleQualifiedName - { after(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); } + { after(grammarAccess.getExternFunctionDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 +rule__ExternFunctionDeclaration__ArgumentListAssignment_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0()); } - ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); } - ruleQualifiedName - { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); } - ) - { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0()); } + { before(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); } + ruleArgumentList + { after(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 +rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); } ( - { before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } ruleQualifiedName - { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); } + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } ) - { after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0()); } + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ExternAggregationOperatorDeclaration__NameAssignment_2 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } + ruleQualifiedName + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Variable__TypeAssignment_0 +rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolCrossReference_4_0()); } ( - { before(grammarAccess.getVariableAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); } + { before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolQualifiedNameParserRuleCall_4_0_1()); } ruleQualifiedName - { after(grammarAccess.getVariableAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); } + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolQualifiedNameParserRuleCall_4_0_1()); } ) - { after(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0()); } + { after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolCrossReference_4_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Variable__NameAssignment_1 +rule__ExternDatatypeDeclaration__NameAssignment_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0()); } - RULE_ID - { after(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0()); } + { before(grammarAccess.getExternDatatypeDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } + ruleQualifiedName + { after(grammarAccess.getExternDatatypeDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__IfElse__ConditionAssignment_1 +rule__Expression__BodyAssignment_2_1_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0()); } - ruleExpression - { after(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0()); } + { before(grammarAccess.getExpressionAccess().getBodyDisjunctiveExpressionParserRuleCall_2_1_2_0()); } + ruleDisjunctiveExpression + { after(grammarAccess.getExpressionAccess().getBodyDisjunctiveExpressionParserRuleCall_2_1_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__IfElse__ThenAssignment_3 +rule__ConditionalExpression__ConditionAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0()); } - ruleExpression - { after(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0()); } + { before(grammarAccess.getConditionalExpressionAccess().getConditionDisjunctiveExpressionParserRuleCall_1_0()); } + ruleDisjunctiveExpression + { after(grammarAccess.getConditionalExpressionAccess().getConditionDisjunctiveExpressionParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__IfElse__ElseAssignment_5 +rule__ConditionalExpression__ThenAssignment_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0()); } + { before(grammarAccess.getConditionalExpressionAccess().getThenExpressionParserRuleCall_3_0()); } ruleExpression - { after(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0()); } + { after(grammarAccess.getConditionalExpressionAccess().getThenExpressionParserRuleCall_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Let__BindingsAssignment_1 +rule__ConditionalExpression__ElseAssignment_5 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0()); } - ruleLetBinding - { after(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0()); } + { before(grammarAccess.getConditionalExpressionAccess().getElseExpressionParserRuleCall_5_0()); } + ruleExpression + { after(grammarAccess.getConditionalExpressionAccess().getElseExpressionParserRuleCall_5_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Let__BindingsAssignment_2_1 +rule__LetExpression__BindingsAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0()); } + { before(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_1_0()); } ruleLetBinding - { after(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0()); } + { after(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Let__BodyAssignment_4 +rule__LetExpression__BindingsAssignment_2_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0()); } - ruleExpression - { after(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0()); } + { before(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_2_1_0()); } + ruleLetBinding + { after(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LetBinding__VariableAssignment_0 +rule__LetExpression__BodyAssignment_4 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0()); } - ruleVariable - { after(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0()); } + { before(grammarAccess.getLetExpressionAccess().getBodyExpressionParserRuleCall_4_0()); } + ruleExpression + { after(grammarAccess.getLetExpressionAccess().getBodyExpressionParserRuleCall_4_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LetBinding__ValueAssignment_2 +rule__LetBinding__TypeAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0()); } - ruleAdditiveExpression - { after(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0()); } + { before(grammarAccess.getLetBindingAccess().getTypeSymbolCrossReference_0_0()); } + ( + { before(grammarAccess.getLetBindingAccess().getTypeSymbolQualifiedNameParserRuleCall_0_0_1()); } + ruleQualifiedName + { after(grammarAccess.getLetBindingAccess().getTypeSymbolQualifiedNameParserRuleCall_0_0_1()); } + ) + { after(grammarAccess.getLetBindingAccess().getTypeSymbolCrossReference_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__OpAssignment_1_1 +rule__LetBinding__NameAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0()); } - ruleImplicationOperator - { after(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0()); } + { before(grammarAccess.getLetBindingAccess().getNameIDTerminalRuleCall_1_0()); } + RULE_ID + { after(grammarAccess.getLetBindingAccess().getNameIDTerminalRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ImplicationExpression__RightAssignment_1_2 +rule__LetBinding__ValueAssignment_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0()); } - ruleImplicationExpression - { after(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0()); } + { before(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_3_0()); } + ruleAdditiveExpression + { after(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_3_0()); } ) ; finally { @@ -9994,19 +11543,19 @@ finally { restoreStackSize(stackSize); } -rule__CastExpression__TypeAssignment_1_2 +rule__CastExpression__TargetTypeAssignment_1_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0()); } + { before(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolCrossReference_1_2_0()); } ( - { before(grammarAccess.getCastExpressionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1()); } + { before(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolQualifiedNameParserRuleCall_1_2_0_1()); } ruleQualifiedName - { after(grammarAccess.getCastExpressionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1()); } + { after(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolQualifiedNameParserRuleCall_1_2_0_1()); } ) - { after(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0()); } + { after(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolCrossReference_1_2_0()); } ) ; finally { @@ -10019,9 +11568,9 @@ rule__UnaryExpression__OpAssignment_1_1 } : ( - { before(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0()); } - ruleUnaryOp - { after(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0()); } + { before(grammarAccess.getUnaryExpressionAccess().getOpUnaryOperatorEnumRuleCall_1_1_0()); } + ruleUnaryOperator + { after(grammarAccess.getUnaryExpressionAccess().getOpUnaryOperatorEnumRuleCall_1_1_0()); } ) ; finally { @@ -10034,593 +11583,608 @@ rule__UnaryExpression__BodyAssignment_1_2 } : ( - { before(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0()); } - ruleAggregationExpression - { after(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0()); } + { before(grammarAccess.getUnaryExpressionAccess().getBodyBracedAggregateExpressionParserRuleCall_1_2_0()); } + ruleBracedAggregateExpression + { after(grammarAccess.getUnaryExpressionAccess().getBodyBracedAggregateExpressionParserRuleCall_1_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__VariablesAssignment_2_0 +rule__Aggregation__OpAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0()); } - ruleVariable - { after(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0()); } + { before(grammarAccess.getAggregationAccess().getOpSymbolCrossReference_0_0()); } + ( + { before(grammarAccess.getAggregationAccess().getOpSymbolQualifiedNameParserRuleCall_0_0_1()); } + ruleQualifiedName + { after(grammarAccess.getAggregationAccess().getOpSymbolQualifiedNameParserRuleCall_0_0_1()); } + ) + { after(grammarAccess.getAggregationAccess().getOpSymbolCrossReference_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LocalVariables__VariablesAssignment_2_1_1 +rule__Aggregation__ValueAssignment_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0()); } - ruleVariable - { after(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0()); } + { before(grammarAccess.getAggregationAccess().getValueExpressionParserRuleCall_2_0()); } + ruleExpression + { after(grammarAccess.getAggregationAccess().getValueExpressionParserRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__QuantifierAssignment_0 +rule__Aggregation__ConditionAssignment_4 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0()); } - ruleQuantifier - { after(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0()); } + { before(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); } + ruleExpression + { after(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__LocalVariablesAssignment_1 +rule__Count__ConditionAssignment_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); } - ruleLocalVariables - { after(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); } + { before(grammarAccess.getCountAccess().getConditionExpressionParserRuleCall_2_0()); } + ruleExpression + { after(grammarAccess.getCountAccess().getConditionExpressionParserRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__QuantifiedExpression__BodyAssignment_3 +rule__Call__FunctorAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0()); } - ruleExpression - { after(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0()); } + { before(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); } + ruleReference + { after(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__OpAssignment_0 +rule__Call__ArgumentListAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0()); } - ( - { before(grammarAccess.getAggregationAccess().getOpNamedElementQualifiedNameParserRuleCall_0_0_1()); } - ruleQualifiedName - { after(grammarAccess.getAggregationAccess().getOpNamedElementQualifiedNameParserRuleCall_0_0_1()); } - ) - { after(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0()); } + { before(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_1_0()); } + ruleArgumentList + { after(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__LocalVariablesAssignment_1 +rule__ArgumentList__ArgumentsAssignment_2_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); } - ruleLocalVariables - { after(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); } + { before(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); } + ruleArgument + { after(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__BodyAssignment_3 +rule__ArgumentList__ArgumentsAssignment_2_1_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0()); } - ruleExpression - { after(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0()); } + { before(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); } + ruleArgument + { after(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Aggregation__ConditionAssignment_4_1 +rule__ExpressionArgument__ExpressionAssignment @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0()); } - ruleExpression - { after(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0()); } + { before(grammarAccess.getExpressionArgumentAccess().getExpressionComparisonExpressionParserRuleCall_0()); } + ruleComparisonExpression + { after(grammarAccess.getExpressionArgumentAccess().getExpressionComparisonExpressionParserRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Call__FunctorAssignment_0 +rule__TypedVariableArgument__TypeReferenceAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); } - ruleReference - { after(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); } + { before(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); } + ruleTypeReference + { after(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Call__TransitiveClosureAssignment_1_0 +rule__TypedVariableArgument__NameAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCallAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0()); } - RULE_TRANSITIVE_CLOSURE - { after(grammarAccess.getCallAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0()); } + { before(grammarAccess.getTypedVariableArgumentAccess().getNameIDTerminalRuleCall_1_0()); } + RULE_ID + { after(grammarAccess.getTypedVariableArgumentAccess().getNameIDTerminalRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Call__ReflexiveTransitiveClosureAssignment_1_1 +rule__TypedStarArgument__TypeReferenceAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCallAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0()); } - RULE_REFLEXIVE_TRANSITIVE_CLOSURE - { after(grammarAccess.getCallAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0()); } + { before(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); } + ruleTypeReference + { after(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Call__ArgumentListAssignment_2 +rule__Reference__ComponentsAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_2_0()); } - ruleArgumentList - { after(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_2_0()); } + { before(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_0_0()); } + rulePathComponent + { after(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__ArgumentsAssignment_2_0 +rule__Reference__ComponentsAssignment_1_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); } - ruleArgument - { after(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); } + { before(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_1_1_0()); } + rulePathComponent + { after(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_1_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ArgumentList__ArgumentsAssignment_2_1_1 +rule__PathComponent__InverseAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); } - ruleArgument - { after(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); } + { before(grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); } + ( + { before(grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); } + Tilde + { after(grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); } + ) + { after(grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExpressionArgument__BodyAssignment +rule__PathComponent__SymbolAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0()); } - ruleComparisonExpression - { after(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0()); } + { before(grammarAccess.getPathComponentAccess().getSymbolSymbolCrossReference_1_0()); } + ( + { before(grammarAccess.getPathComponentAccess().getSymbolSymbolQualifiedNameParserRuleCall_1_0_1()); } + ruleQualifiedName + { after(grammarAccess.getPathComponentAccess().getSymbolSymbolQualifiedNameParserRuleCall_1_0_1()); } + ) + { after(grammarAccess.getPathComponentAccess().getSymbolSymbolCrossReference_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__TypedArgument__TypeAssignment_0 +rule__PathComponent__TransitiveClosureAssignment_2_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getTypedArgumentAccess().getTypeNamedElementCrossReference_0_0()); } - ( - { before(grammarAccess.getTypedArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); } - ruleQualifiedName - { after(grammarAccess.getTypedArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); } - ) - { after(grammarAccess.getTypedArgumentAccess().getTypeNamedElementCrossReference_0_0()); } + { before(grammarAccess.getPathComponentAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0()); } + RULE_TRANSITIVE_CLOSURE + { after(grammarAccess.getPathComponentAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__TypedArgument__VariableAssignment_1 +rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getTypedArgumentAccess().getVariableNamedElementCrossReference_1_0()); } - ( - { before(grammarAccess.getTypedArgumentAccess().getVariableNamedElementQualifiedNameParserRuleCall_1_0_1()); } - ruleQualifiedName - { after(grammarAccess.getTypedArgumentAccess().getVariableNamedElementQualifiedNameParserRuleCall_1_0_1()); } - ) - { after(grammarAccess.getTypedArgumentAccess().getVariableNamedElementCrossReference_1_0()); } + { before(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0()); } + RULE_REFLEXIVE_TRANSITIVE_CLOSURE + { after(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__TypedStarArgument__TypeAssignment_0 +rule__Interval__LowerBoundAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementCrossReference_0_0()); } - ( - { before(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); } - ruleQualifiedName - { after(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); } - ) - { after(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementCrossReference_0_0()); } + { before(grammarAccess.getIntervalAccess().getLowerBoundAdditiveExpressionParserRuleCall_1_0()); } + ruleAdditiveExpression + { after(grammarAccess.getIntervalAccess().getLowerBoundAdditiveExpressionParserRuleCall_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Reference__ReferredAssignment +rule__Interval__UpperBoundAssignment_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getReferenceAccess().getReferredNamedElementCrossReference_0()); } - ( - { before(grammarAccess.getReferenceAccess().getReferredNamedElementQualifiedNameParserRuleCall_0_1()); } - ruleQualifiedName - { after(grammarAccess.getReferenceAccess().getReferredNamedElementQualifiedNameParserRuleCall_0_1()); } - ) - { after(grammarAccess.getReferenceAccess().getReferredNamedElementCrossReference_0()); } + { before(grammarAccess.getIntervalAccess().getUpperBoundAdditiveExpressionParserRuleCall_3_0()); } + ruleAdditiveExpression + { after(grammarAccess.getIntervalAccess().getUpperBoundAdditiveExpressionParserRuleCall_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Interval__LowerBoundAssignment_1 +rule__LogicLiteral__ValueAssignment @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0()); } - ruleExpression - { after(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0()); } + { before(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); } + ruleLogicValue + { after(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__Interval__UpperBoundAssignment_3 +rule__IntLiteral__ValueAssignment @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0()); } - ruleExpression - { after(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0()); } + { before(grammarAccess.getIntLiteralAccess().getValueINTTerminalRuleCall_0()); } + RULE_INT + { after(grammarAccess.getIntLiteralAccess().getValueINTTerminalRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LogicLiteral__ValueAssignment +rule__RealLiteral__ValueAssignment @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); } - ruleLogicValue - { after(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); } + { before(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_0()); } + ruleReal + { after(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__NumericLiteral__ValueAssignment +rule__StringLiteral__ValueAssignment @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0()); } - ruleReal - { after(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0()); } + { before(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_0()); } + RULE_STRING + { after(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__StringLiteral__ValueAssignment +rule__ClassDeclaration__AbstractAssignment_0_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_0()); } - RULE_STRING - { after(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_0()); } + { before(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); } + ( + { before(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); } + Abstract + { after(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); } + ) + { after(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__AbstractAssignment_0 +rule__ClassDeclaration__RootAssignment_0_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); } + { before(grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); } ( - { before(grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); } - Abstract - { after(grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); } + { before(grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); } + Root + { after(grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); } ) - { after(grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); } + { after(grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__NameAssignment_2 +rule__ClassDeclaration__NameAssignment_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getNameIDTerminalRuleCall_2_0()); } + { before(grammarAccess.getClassDeclarationAccess().getNameIDTerminalRuleCall_2_0()); } RULE_ID - { after(grammarAccess.getClassDefinitionAccess().getNameIDTerminalRuleCall_2_0()); } + { after(grammarAccess.getClassDeclarationAccess().getNameIDTerminalRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__SuperclassesAssignment_3_1 +rule__ClassDeclaration__SupertypesAssignment_3_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_1_0()); } + { before(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_1_0()); } ( - { before(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); } + { before(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolQualifiedNameParserRuleCall_3_1_0_1()); } ruleQualifiedName - { after(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); } + { after(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolQualifiedNameParserRuleCall_3_1_0_1()); } ) - { after(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_1_0()); } + { after(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__SuperclassesAssignment_3_2_1 +rule__ClassDeclaration__SupertypesAssignment_3_2_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_2_1_0()); } + { before(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_2_1_0()); } ( - { before(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); } + { before(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolQualifiedNameParserRuleCall_3_2_1_0_1()); } ruleQualifiedName - { after(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); } + { after(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolQualifiedNameParserRuleCall_3_2_1_0_1()); } ) - { after(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_2_1_0()); } + { after(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_2_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ClassDefinition__MembersAssignment_5 +rule__ClassDeclaration__FieldsAssignment_4_0_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getClassDefinitionAccess().getMembersMemberDefinitionParserRuleCall_5_0()); } - ruleMemberDefinition - { after(grammarAccess.getClassDefinitionAccess().getMembersMemberDefinitionParserRuleCall_5_0()); } + { before(grammarAccess.getClassDeclarationAccess().getFieldsFieldParserRuleCall_4_0_1_0()); } + ruleField + { after(grammarAccess.getClassDeclarationAccess().getFieldsFieldParserRuleCall_4_0_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__ContainmentAssignment_0 +rule__Field__ContainmentAssignment_0_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); } + { before(grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); } ( - { before(grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); } + { before(grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); } Contains - { after(grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); } + { after(grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); } + ) + { after(grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__Field__CrossReferenceAssignment_0_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); } + ( + { before(grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); } + Refers + { after(grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); } ) - { after(grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); } + { after(grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__TypeAssignment_1 +rule__Field__TypeAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementCrossReference_1_0()); } + { before(grammarAccess.getFieldAccess().getTypeSymbolCrossReference_1_0()); } ( - { before(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); } + { before(grammarAccess.getFieldAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } ruleQualifiedName - { after(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); } + { after(grammarAccess.getFieldAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } ) - { after(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementCrossReference_1_0()); } + { after(grammarAccess.getFieldAccess().getTypeSymbolCrossReference_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__MultiplicityAssignment_2 +rule__Field__MultiplicityAssignment_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); } + { before(grammarAccess.getFieldAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); } ruleMultiplicity - { after(grammarAccess.getMemberDefinitionAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); } + { after(grammarAccess.getFieldAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__NameAssignment_3 +rule__Field__NameAssignment_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getNameIDTerminalRuleCall_3_0()); } + { before(grammarAccess.getFieldAccess().getNameIDTerminalRuleCall_3_0()); } RULE_ID - { after(grammarAccess.getMemberDefinitionAccess().getNameIDTerminalRuleCall_3_0()); } + { after(grammarAccess.getFieldAccess().getNameIDTerminalRuleCall_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__MemberDefinition__OppositeAssignment_4_1 +rule__Field__OppositeAssignment_4_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementCrossReference_4_1_0()); } + { before(grammarAccess.getFieldAccess().getOppositeSymbolCrossReference_4_1_0()); } ( - { before(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementQualifiedNameParserRuleCall_4_1_0_1()); } + { before(grammarAccess.getFieldAccess().getOppositeSymbolQualifiedNameParserRuleCall_4_1_0_1()); } ruleQualifiedName - { after(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementQualifiedNameParserRuleCall_4_1_0_1()); } + { after(grammarAccess.getFieldAccess().getOppositeSymbolQualifiedNameParserRuleCall_4_1_0_1()); } ) - { after(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementCrossReference_4_1_0()); } + { after(grammarAccess.getFieldAccess().getOppositeSymbolCrossReference_4_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExactMultiplicity__MultiplicityAssignment_1 +rule__ExactMultiplicity__ValueAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0()); } + { before(grammarAccess.getExactMultiplicityAccess().getValueUpperMultiplictyParserRuleCall_1_0()); } ruleUpperMultiplicty - { after(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0()); } + { after(grammarAccess.getExactMultiplicityAccess().getValueUpperMultiplictyParserRuleCall_1_0()); } ) ; finally { @@ -10657,230 +12221,290 @@ finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__TypeAssignment_1 +rule__EnumDeclaration__NameAssignment_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getEnumDeclarationAccess().getNameIDTerminalRuleCall_1_0()); } + RULE_ID + { after(grammarAccess.getEnumDeclarationAccess().getNameIDTerminalRuleCall_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0()); } + ruleEnumLiteral + { after(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0()); } + ruleEnumLiteral + { after(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__EnumLiteral__NameAssignment + @init { + int stackSize = keepStackSize(); + } +: + ( + { before(grammarAccess.getEnumLiteralAccess().getNameIDTerminalRuleCall_0()); } + RULE_ID + { after(grammarAccess.getEnumLiteralAccess().getNameIDTerminalRuleCall_0()); } + ) +; +finally { + restoreStackSize(stackSize); +} + +rule__ExactScope__TypeAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0()); } + { before(grammarAccess.getExactScopeAccess().getTypeSymbolCrossReference_1_0()); } ( - { before(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); } + { before(grammarAccess.getExactScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } ruleQualifiedName - { after(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); } + { after(grammarAccess.getExactScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } ) - { after(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0()); } + { after(grammarAccess.getExactScopeAccess().getTypeSymbolCrossReference_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ExactScopeDefinition__ExactScopeAssignment_3 +rule__ExactScope__SizeAssignment_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getExactScopeDefinitionAccess().getExactScopeINTTerminalRuleCall_3_0()); } + { before(grammarAccess.getExactScopeAccess().getSizeINTTerminalRuleCall_3_0()); } RULE_INT - { after(grammarAccess.getExactScopeDefinitionAccess().getExactScopeINTTerminalRuleCall_3_0()); } + { after(grammarAccess.getExactScopeAccess().getSizeINTTerminalRuleCall_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 +rule__BoundedScope__LowerBoundAssignment_1_0_0_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); } + { before(grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); } RULE_INT - { after(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); } + { after(grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__TypeAssignment_1_0_1 +rule__BoundedScope__TypeAssignment_1_0_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_1_0()); } + { before(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_0_1_0()); } ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1_0_1()); } + { before(grammarAccess.getBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1_0_1()); } ruleQualifiedName - { after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1_0_1()); } + { after(grammarAccess.getBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1_0_1()); } ) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_1_0()); } + { after(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_0_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 +rule__BoundedScope__UpperBoundAssignment_1_0_3 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); } + { before(grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); } RULE_INT - { after(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); } + { after(grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 +rule__BoundedScope__UpperBoundAssignment_1_1_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); } + { before(grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); } RULE_INT - { after(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); } + { after(grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__TypeAssignment_1_1_2 +rule__BoundedScope__TypeAssignment_1_1_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_2_0()); } + { before(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_1_2_0()); } ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_1_2_0_1()); } + { before(grammarAccess.getBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_1_2_0_1()); } ruleQualifiedName - { after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_1_2_0_1()); } + { after(grammarAccess.getBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_1_2_0_1()); } ) - { after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_2_0()); } + { after(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_1_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 +rule__BoundedScope__LowerBoundAssignment_1_1_3_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); } + { before(grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); } RULE_INT - { after(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); } + { after(grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 +rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); } RULE_INT - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); } + { after(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 +rule__LowerBoundedScope__TypeAssignment_1_0_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_2_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_0_2_0()); } ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_2_0_1()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_2_0_1()); } ruleQualifiedName - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_2_0_1()); } + { after(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_2_0_1()); } ) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_2_0()); } + { after(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_0_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 +rule__LowerBoundedScope__TypeAssignment_1_1_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_0_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_1_0_0()); } ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_1_0_0_1()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_1_0_0_1()); } ruleQualifiedName - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_1_0_0_1()); } + { after(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_1_0_0_1()); } ) - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_0_0()); } + { after(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_1_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 +rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); } + { before(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); } RULE_INT - { after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); } + { after(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ObjectiveDefinition__KindAssignment_0 +rule__ObjectiveDeclaration__KindAssignment_0 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0()); } + { before(grammarAccess.getObjectiveDeclarationAccess().getKindObjectiveKindEnumRuleCall_0_0()); } ruleObjectiveKind - { after(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0()); } + { after(grammarAccess.getObjectiveDeclarationAccess().getKindObjectiveKindEnumRuleCall_0_0()); } ) ; finally { restoreStackSize(stackSize); } -rule__ObjectiveDefinition__ObjectiveAssignment_1 +rule__ObjectiveDeclaration__ObjectiveAssignment_1 @init { int stackSize = keepStackSize(); } : ( - { before(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0()); } + { before(grammarAccess.getObjectiveDeclarationAccess().getObjectiveExpressionParserRuleCall_1_0()); } ruleExpression - { after(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0()); } + { after(grammarAccess.getObjectiveDeclarationAccess().getObjectiveExpressionParserRuleCall_1_0()); } ) ; finally { diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.java b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.java index 6af30519..470fd80a 100644 --- a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.java +++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.java @@ -24,79 +24,84 @@ import java.util.ArrayList; @SuppressWarnings("all") public class InternalSolverLanguageParser extends AbstractInternalContentAssistParser { public static final String[] tokenNames = new String[] { - "", "", "", "", "Functional", "Abstract", "Contains", "Datatype", "Maximize", "Minimize", "Opposite", "Current", "Default", "Extends", "Unknown", "Exists", "Extern", "Forall", "Class", "Count", "Empty", "Error", "False", "Scope", "Else", "Must", "Then", "True", "FullStopFullStopFullStop", "Inf", "Let", "May", "ExclamationMarkEqualsSign", "HyphenMinusGreaterThanSign", "FullStopFullStop", "ColonHyphenMinus", "LessThanSignEqualsSign", "EqualsSignEqualsSign", "EqualsSignGreaterThanSign", "GreaterThanSignEqualsSign", "As", "If", "In", "ExclamationMark", "LeftParenthesis", "RightParenthesis", "Asterisk", "PlusSign", "Comma", "HyphenMinus", "FullStop", "Solidus", "Colon", "Semicolon", "LessThanSign", "EqualsSign", "GreaterThanSign", "LeftSquareBracket", "RightSquareBracket", "CircumflexAccent", "LeftCurlyBracket", "VerticalLine", "RightCurlyBracket", "RULE_STRING", "RULE_QUOTED_ID", "RULE_SL_COMMENT", "RULE_TRANSITIVE_CLOSURE", "RULE_REFLEXIVE_TRANSITIVE_CLOSURE", "RULE_FULL_STOP", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER" + "", "", "", "", "Containment", "Functional", "Abstract", "Contains", "Datatype", "Maximize", "Minimize", "Opposite", "Default", "Extends", "Problem", "Unknown", "Extern", "Import", "Object", "Refers", "Class", "Count", "Empty", "Error", "False", "Scope", "Else", "Enum", "Root", "Then", "True", "FullStopFullStopFullStop", "Inf", "Let", "ExclamationMarkEqualsSign", "HyphenMinusGreaterThanSign", "ColonHyphenMinus", "ColonColon", "ColonEqualsSign", "LessThanSignEqualsSign", "EqualsSignEqualsSign", "EqualsSignGreaterThanSign", "GreaterThanSignEqualsSign", "As", "If", "In", "ExclamationMark", "LeftParenthesis", "RightParenthesis", "Asterisk", "PlusSign", "Comma", "HyphenMinus", "FullStop", "Solidus", "Colon", "Semicolon", "LessThanSign", "EqualsSign", "GreaterThanSign", "QuestionMark", "LeftSquareBracket", "RightSquareBracket", "CircumflexAccent", "LeftCurlyBracket", "VerticalLine", "RightCurlyBracket", "Tilde", "RULE_STRING", "RULE_QUOTED_ID", "RULE_SL_COMMENT", "RULE_TRANSITIVE_CLOSURE", "RULE_REFLEXIVE_TRANSITIVE_CLOSURE", "RULE_FULL_STOP", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER" }; - public static final int EqualsSignGreaterThanSign=38; - public static final int True=27; - public static final int Count=19; - public static final int False=22; - public static final int Must=25; - public static final int FullStopFullStopFullStop=28; - public static final int LessThanSign=54; - public static final int Datatype=7; - public static final int LeftParenthesis=44; - public static final int Unknown=14; - public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67; - public static final int FullStopFullStop=34; - public static final int Then=26; + public static final int Enum=27; + public static final int Import=17; + public static final int EqualsSignGreaterThanSign=41; + public static final int True=30; + public static final int Count=21; + public static final int False=24; + public static final int FullStopFullStopFullStop=31; + public static final int LessThanSign=57; + public static final int Datatype=8; + public static final int LeftParenthesis=47; + public static final int Unknown=15; + public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=72; + public static final int Then=29; public static final int Extends=13; - public static final int Forall=17; - public static final int RightSquareBracket=58; - public static final int ExclamationMark=43; - public static final int Opposite=10; - public static final int GreaterThanSign=56; - public static final int RULE_ID=69; - public static final int RULE_QUOTED_ID=64; - public static final int RightParenthesis=45; - public static final int GreaterThanSignEqualsSign=39; - public static final int Functional=4; - public static final int EqualsSignEqualsSign=37; - public static final int VerticalLine=61; - public static final int PlusSign=47; - public static final int RULE_INT=70; - public static final int Contains=6; - public static final int RULE_ML_COMMENT=71; - public static final int RULE_TRANSITIVE_CLOSURE=66; - public static final int Class=18; - public static final int LeftSquareBracket=57; - public static final int RULE_FULL_STOP=68; - public static final int Current=11; - public static final int If=41; - public static final int Inf=29; - public static final int May=31; - public static final int In=42; - public static final int RULE_STRING=63; + public static final int RightSquareBracket=62; + public static final int ExclamationMark=46; + public static final int Opposite=11; + public static final int GreaterThanSign=59; + public static final int Root=28; + public static final int RULE_ID=74; + public static final int RULE_QUOTED_ID=69; + public static final int RightParenthesis=48; + public static final int ColonEqualsSign=38; + public static final int GreaterThanSignEqualsSign=42; + public static final int Functional=5; + public static final int ColonColon=37; + public static final int EqualsSignEqualsSign=40; + public static final int VerticalLine=65; + public static final int PlusSign=50; + public static final int RULE_INT=75; + public static final int Contains=7; + public static final int RULE_ML_COMMENT=76; + public static final int RULE_TRANSITIVE_CLOSURE=71; + public static final int Problem=14; + public static final int Object=18; + public static final int Class=20; + public static final int LeftSquareBracket=61; + public static final int RULE_FULL_STOP=73; + public static final int If=44; + public static final int Refers=19; + public static final int Inf=32; + public static final int In=45; + public static final int RULE_STRING=68; public static final int Extern=16; - public static final int RULE_SL_COMMENT=65; - public static final int Comma=48; - public static final int EqualsSign=55; - public static final int Empty=20; - public static final int As=40; - public static final int HyphenMinus=49; - public static final int Maximize=8; - public static final int LessThanSignEqualsSign=36; - public static final int Solidus=51; - public static final int Colon=52; - public static final int RightCurlyBracket=62; + public static final int RULE_SL_COMMENT=70; + public static final int Comma=51; + public static final int EqualsSign=58; + public static final int Empty=22; + public static final int As=43; + public static final int HyphenMinus=52; + public static final int Maximize=9; + public static final int LessThanSignEqualsSign=39; + public static final int Solidus=54; + public static final int Colon=55; + public static final int RightCurlyBracket=66; public static final int EOF=-1; - public static final int Asterisk=46; - public static final int FullStop=50; - public static final int RULE_WS=72; - public static final int Abstract=5; - public static final int Minimize=9; - public static final int LeftCurlyBracket=60; - public static final int Error=21; - public static final int RULE_ANY_OTHER=73; + public static final int Asterisk=49; + public static final int Containment=4; + public static final int FullStop=53; + public static final int RULE_WS=77; + public static final int Abstract=6; + public static final int Minimize=10; + public static final int LeftCurlyBracket=64; + public static final int Error=23; + public static final int Tilde=67; + public static final int RULE_ANY_OTHER=78; public static final int Default=12; - public static final int ColonHyphenMinus=35; - public static final int CircumflexAccent=59; - public static final int Semicolon=53; - public static final int Scope=23; - public static final int Exists=15; - public static final int Else=24; - public static final int Let=30; - public static final int ExclamationMarkEqualsSign=32; - public static final int HyphenMinusGreaterThanSign=33; + public static final int ColonHyphenMinus=36; + public static final int CircumflexAccent=63; + public static final int Semicolon=56; + public static final int Scope=25; + public static final int QuestionMark=60; + public static final int Else=26; + public static final int Let=33; + public static final int ExclamationMarkEqualsSign=34; + public static final int HyphenMinusGreaterThanSign=35; // delegates // delegators @@ -133,16 +138,19 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP tokenNameToValue.put("LessThanSign", "'<'"); tokenNameToValue.put("EqualsSign", "'='"); tokenNameToValue.put("GreaterThanSign", "'>'"); + tokenNameToValue.put("QuestionMark", "'?'"); tokenNameToValue.put("LeftSquareBracket", "'['"); tokenNameToValue.put("RightSquareBracket", "']'"); tokenNameToValue.put("CircumflexAccent", "'^'"); tokenNameToValue.put("LeftCurlyBracket", "'{'"); tokenNameToValue.put("VerticalLine", "'|'"); tokenNameToValue.put("RightCurlyBracket", "'}'"); + tokenNameToValue.put("Tilde", "'~'"); tokenNameToValue.put("ExclamationMarkEqualsSign", "'!='"); tokenNameToValue.put("HyphenMinusGreaterThanSign", "'->'"); - tokenNameToValue.put("FullStopFullStop", "'..'"); tokenNameToValue.put("ColonHyphenMinus", "':-'"); + tokenNameToValue.put("ColonColon", "'::'"); + tokenNameToValue.put("ColonEqualsSign", "':='"); tokenNameToValue.put("LessThanSignEqualsSign", "'<='"); tokenNameToValue.put("EqualsSignEqualsSign", "'=='"); tokenNameToValue.put("EqualsSignGreaterThanSign", "'=>'"); @@ -153,9 +161,9 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP tokenNameToValue.put("FullStopFullStopFullStop", "'...'"); tokenNameToValue.put("Inf", "'inf'"); tokenNameToValue.put("Let", "'let'"); - tokenNameToValue.put("May", "'may'"); tokenNameToValue.put("Else", "'else'"); - tokenNameToValue.put("Must", "'must'"); + tokenNameToValue.put("Enum", "'enum'"); + tokenNameToValue.put("Root", "'root'"); tokenNameToValue.put("Then", "'then'"); tokenNameToValue.put("True", "'true'"); tokenNameToValue.put("Class", "'class'"); @@ -164,12 +172,13 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP tokenNameToValue.put("Error", "'error'"); tokenNameToValue.put("False", "'false'"); tokenNameToValue.put("Scope", "'scope'"); - tokenNameToValue.put("Exists", "'exists'"); tokenNameToValue.put("Extern", "'extern'"); - tokenNameToValue.put("Forall", "'forall'"); - tokenNameToValue.put("Current", "'current'"); + tokenNameToValue.put("Import", "'import'"); + tokenNameToValue.put("Object", "'object'"); + tokenNameToValue.put("Refers", "'refers'"); tokenNameToValue.put("Default", "'default'"); tokenNameToValue.put("Extends", "'extends'"); + tokenNameToValue.put("Problem", "'problem'"); tokenNameToValue.put("Unknown", "'unknown'"); tokenNameToValue.put("Abstract", "'abstract'"); tokenNameToValue.put("Contains", "'contains'"); @@ -178,6 +187,7 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP tokenNameToValue.put("Minimize", "'minimize'"); tokenNameToValue.put("Opposite", "'opposite'"); tokenNameToValue.put("Functional", "'functional'"); + tokenNameToValue.put("Containment", "'containment'"); } public void setGrammarAccess(SolverLanguageGrammarAccess grammarAccess) { @@ -200,11 +210,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleProblem" - // InternalSolverLanguageParser.g:114:1: entryRuleProblem : ruleProblem EOF ; + // InternalSolverLanguageParser.g:119:1: entryRuleProblem : ruleProblem EOF ; public final void entryRuleProblem() throws RecognitionException { try { - // InternalSolverLanguageParser.g:115:1: ( ruleProblem EOF ) - // InternalSolverLanguageParser.g:116:1: ruleProblem EOF + // InternalSolverLanguageParser.g:120:1: ( ruleProblem EOF ) + // InternalSolverLanguageParser.g:121:1: ruleProblem EOF { before(grammarAccess.getProblemRule()); pushFollow(FOLLOW_1); @@ -230,49 +240,31 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleProblem" - // InternalSolverLanguageParser.g:123:1: ruleProblem : ( ( rule__Problem__StatementsAssignment )* ) ; + // InternalSolverLanguageParser.g:128:1: ruleProblem : ( ( rule__Problem__Group__0 ) ) ; public final void ruleProblem() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:127:2: ( ( ( rule__Problem__StatementsAssignment )* ) ) - // InternalSolverLanguageParser.g:128:2: ( ( rule__Problem__StatementsAssignment )* ) + // InternalSolverLanguageParser.g:132:2: ( ( ( rule__Problem__Group__0 ) ) ) + // InternalSolverLanguageParser.g:133:2: ( ( rule__Problem__Group__0 ) ) { - // InternalSolverLanguageParser.g:128:2: ( ( rule__Problem__StatementsAssignment )* ) - // InternalSolverLanguageParser.g:129:3: ( rule__Problem__StatementsAssignment )* + // InternalSolverLanguageParser.g:133:2: ( ( rule__Problem__Group__0 ) ) + // InternalSolverLanguageParser.g:134:3: ( rule__Problem__Group__0 ) { - before(grammarAccess.getProblemAccess().getStatementsAssignment()); - // InternalSolverLanguageParser.g:130:3: ( rule__Problem__StatementsAssignment )* - loop1: - do { - int alt1=2; - int LA1_0 = input.LA(1); - - if ( ((LA1_0>=Functional && LA1_0<=Abstract)||(LA1_0>=Maximize && LA1_0<=Minimize)||(LA1_0>=Current && LA1_0<=Default)||(LA1_0>=Unknown && LA1_0<=False)||LA1_0==Scope||LA1_0==Must||LA1_0==True||(LA1_0>=Inf && LA1_0<=May)||LA1_0==If||(LA1_0>=ExclamationMark && LA1_0<=LeftParenthesis)||LA1_0==PlusSign||LA1_0==HyphenMinus||LA1_0==LeftSquareBracket||(LA1_0>=RULE_STRING && LA1_0<=RULE_QUOTED_ID)||(LA1_0>=RULE_ID && LA1_0<=RULE_INT)) ) { - alt1=1; - } - - - switch (alt1) { - case 1 : - // InternalSolverLanguageParser.g:130:4: rule__Problem__StatementsAssignment - { - pushFollow(FOLLOW_3); - rule__Problem__StatementsAssignment(); - - state._fsp--; + before(grammarAccess.getProblemAccess().getGroup()); + // InternalSolverLanguageParser.g:135:3: ( rule__Problem__Group__0 ) + // InternalSolverLanguageParser.g:135:4: rule__Problem__Group__0 + { + pushFollow(FOLLOW_2); + rule__Problem__Group__0(); + state._fsp--; - } - break; - default : - break loop1; - } - } while (true); + } - after(grammarAccess.getProblemAccess().getStatementsAssignment()); + after(grammarAccess.getProblemAccess().getGroup()); } @@ -295,11 +287,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleStatement" - // InternalSolverLanguageParser.g:139:1: entryRuleStatement : ruleStatement EOF ; + // InternalSolverLanguageParser.g:144:1: entryRuleStatement : ruleStatement EOF ; public final void entryRuleStatement() throws RecognitionException { try { - // InternalSolverLanguageParser.g:140:1: ( ruleStatement EOF ) - // InternalSolverLanguageParser.g:141:1: ruleStatement EOF + // InternalSolverLanguageParser.g:145:1: ( ruleStatement EOF ) + // InternalSolverLanguageParser.g:146:1: ruleStatement EOF { before(grammarAccess.getStatementRule()); pushFollow(FOLLOW_1); @@ -325,31 +317,31 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleStatement" - // InternalSolverLanguageParser.g:148:1: ruleStatement : ( ( rule__Statement__Group__0 ) ) ; + // InternalSolverLanguageParser.g:153:1: ruleStatement : ( ( rule__Statement__Alternatives ) ) ; public final void ruleStatement() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:152:2: ( ( ( rule__Statement__Group__0 ) ) ) - // InternalSolverLanguageParser.g:153:2: ( ( rule__Statement__Group__0 ) ) + // InternalSolverLanguageParser.g:157:2: ( ( ( rule__Statement__Alternatives ) ) ) + // InternalSolverLanguageParser.g:158:2: ( ( rule__Statement__Alternatives ) ) { - // InternalSolverLanguageParser.g:153:2: ( ( rule__Statement__Group__0 ) ) - // InternalSolverLanguageParser.g:154:3: ( rule__Statement__Group__0 ) + // InternalSolverLanguageParser.g:158:2: ( ( rule__Statement__Alternatives ) ) + // InternalSolverLanguageParser.g:159:3: ( rule__Statement__Alternatives ) { - before(grammarAccess.getStatementAccess().getGroup()); - // InternalSolverLanguageParser.g:155:3: ( rule__Statement__Group__0 ) - // InternalSolverLanguageParser.g:155:4: rule__Statement__Group__0 + before(grammarAccess.getStatementAccess().getAlternatives()); + // InternalSolverLanguageParser.g:160:3: ( rule__Statement__Alternatives ) + // InternalSolverLanguageParser.g:160:4: rule__Statement__Alternatives { pushFollow(FOLLOW_2); - rule__Statement__Group__0(); + rule__Statement__Alternatives(); state._fsp--; } - after(grammarAccess.getStatementAccess().getGroup()); + after(grammarAccess.getStatementAccess().getAlternatives()); } @@ -371,20 +363,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleStatement" - // $ANTLR start "entryRuleAssertionOrDefinition" - // InternalSolverLanguageParser.g:164:1: entryRuleAssertionOrDefinition : ruleAssertionOrDefinition EOF ; - public final void entryRuleAssertionOrDefinition() throws RecognitionException { + // $ANTLR start "entryRuleImport" + // InternalSolverLanguageParser.g:169:1: entryRuleImport : ruleImport EOF ; + public final void entryRuleImport() throws RecognitionException { try { - // InternalSolverLanguageParser.g:165:1: ( ruleAssertionOrDefinition EOF ) - // InternalSolverLanguageParser.g:166:1: ruleAssertionOrDefinition EOF + // InternalSolverLanguageParser.g:170:1: ( ruleImport EOF ) + // InternalSolverLanguageParser.g:171:1: ruleImport EOF { - before(grammarAccess.getAssertionOrDefinitionRule()); + before(grammarAccess.getImportRule()); pushFollow(FOLLOW_1); - ruleAssertionOrDefinition(); + ruleImport(); state._fsp--; - after(grammarAccess.getAssertionOrDefinitionRule()); + after(grammarAccess.getImportRule()); match(input,EOF,FOLLOW_2); } @@ -398,35 +390,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleAssertionOrDefinition" + // $ANTLR end "entryRuleImport" - // $ANTLR start "ruleAssertionOrDefinition" - // InternalSolverLanguageParser.g:173:1: ruleAssertionOrDefinition : ( ( rule__AssertionOrDefinition__Group__0 ) ) ; - public final void ruleAssertionOrDefinition() throws RecognitionException { + // $ANTLR start "ruleImport" + // InternalSolverLanguageParser.g:178:1: ruleImport : ( ( rule__Import__Alternatives ) ) ; + public final void ruleImport() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:177:2: ( ( ( rule__AssertionOrDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:178:2: ( ( rule__AssertionOrDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:182:2: ( ( ( rule__Import__Alternatives ) ) ) + // InternalSolverLanguageParser.g:183:2: ( ( rule__Import__Alternatives ) ) { - // InternalSolverLanguageParser.g:178:2: ( ( rule__AssertionOrDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:179:3: ( rule__AssertionOrDefinition__Group__0 ) + // InternalSolverLanguageParser.g:183:2: ( ( rule__Import__Alternatives ) ) + // InternalSolverLanguageParser.g:184:3: ( rule__Import__Alternatives ) { - before(grammarAccess.getAssertionOrDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:180:3: ( rule__AssertionOrDefinition__Group__0 ) - // InternalSolverLanguageParser.g:180:4: rule__AssertionOrDefinition__Group__0 + before(grammarAccess.getImportAccess().getAlternatives()); + // InternalSolverLanguageParser.g:185:3: ( rule__Import__Alternatives ) + // InternalSolverLanguageParser.g:185:4: rule__Import__Alternatives { pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group__0(); + rule__Import__Alternatives(); state._fsp--; } - after(grammarAccess.getAssertionOrDefinitionAccess().getGroup()); + after(grammarAccess.getImportAccess().getAlternatives()); } @@ -445,23 +437,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleAssertionOrDefinition" + // $ANTLR end "ruleImport" - // $ANTLR start "entryRulePredicateDefinition" - // InternalSolverLanguageParser.g:189:1: entryRulePredicateDefinition : rulePredicateDefinition EOF ; - public final void entryRulePredicateDefinition() throws RecognitionException { + // $ANTLR start "entryRuleUriImport" + // InternalSolverLanguageParser.g:194:1: entryRuleUriImport : ruleUriImport EOF ; + public final void entryRuleUriImport() throws RecognitionException { try { - // InternalSolverLanguageParser.g:190:1: ( rulePredicateDefinition EOF ) - // InternalSolverLanguageParser.g:191:1: rulePredicateDefinition EOF + // InternalSolverLanguageParser.g:195:1: ( ruleUriImport EOF ) + // InternalSolverLanguageParser.g:196:1: ruleUriImport EOF { - before(grammarAccess.getPredicateDefinitionRule()); + before(grammarAccess.getUriImportRule()); pushFollow(FOLLOW_1); - rulePredicateDefinition(); + ruleUriImport(); state._fsp--; - after(grammarAccess.getPredicateDefinitionRule()); + after(grammarAccess.getUriImportRule()); match(input,EOF,FOLLOW_2); } @@ -475,35 +467,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRulePredicateDefinition" + // $ANTLR end "entryRuleUriImport" - // $ANTLR start "rulePredicateDefinition" - // InternalSolverLanguageParser.g:198:1: rulePredicateDefinition : ( ( rule__PredicateDefinition__Group__0 ) ) ; - public final void rulePredicateDefinition() throws RecognitionException { + // $ANTLR start "ruleUriImport" + // InternalSolverLanguageParser.g:203:1: ruleUriImport : ( ( rule__UriImport__Group__0 ) ) ; + public final void ruleUriImport() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:202:2: ( ( ( rule__PredicateDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:203:2: ( ( rule__PredicateDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:207:2: ( ( ( rule__UriImport__Group__0 ) ) ) + // InternalSolverLanguageParser.g:208:2: ( ( rule__UriImport__Group__0 ) ) { - // InternalSolverLanguageParser.g:203:2: ( ( rule__PredicateDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:204:3: ( rule__PredicateDefinition__Group__0 ) + // InternalSolverLanguageParser.g:208:2: ( ( rule__UriImport__Group__0 ) ) + // InternalSolverLanguageParser.g:209:3: ( rule__UriImport__Group__0 ) { - before(grammarAccess.getPredicateDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:205:3: ( rule__PredicateDefinition__Group__0 ) - // InternalSolverLanguageParser.g:205:4: rule__PredicateDefinition__Group__0 + before(grammarAccess.getUriImportAccess().getGroup()); + // InternalSolverLanguageParser.g:210:3: ( rule__UriImport__Group__0 ) + // InternalSolverLanguageParser.g:210:4: rule__UriImport__Group__0 { pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group__0(); + rule__UriImport__Group__0(); state._fsp--; } - after(grammarAccess.getPredicateDefinitionAccess().getGroup()); + after(grammarAccess.getUriImportAccess().getGroup()); } @@ -522,23 +514,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rulePredicateDefinition" + // $ANTLR end "ruleUriImport" - // $ANTLR start "entryRuleUnnamedErrorPrediateDefinition" - // InternalSolverLanguageParser.g:214:1: entryRuleUnnamedErrorPrediateDefinition : ruleUnnamedErrorPrediateDefinition EOF ; - public final void entryRuleUnnamedErrorPrediateDefinition() throws RecognitionException { + // $ANTLR start "entryRuleNamespaceImport" + // InternalSolverLanguageParser.g:219:1: entryRuleNamespaceImport : ruleNamespaceImport EOF ; + public final void entryRuleNamespaceImport() throws RecognitionException { try { - // InternalSolverLanguageParser.g:215:1: ( ruleUnnamedErrorPrediateDefinition EOF ) - // InternalSolverLanguageParser.g:216:1: ruleUnnamedErrorPrediateDefinition EOF + // InternalSolverLanguageParser.g:220:1: ( ruleNamespaceImport EOF ) + // InternalSolverLanguageParser.g:221:1: ruleNamespaceImport EOF { - before(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); + before(grammarAccess.getNamespaceImportRule()); pushFollow(FOLLOW_1); - ruleUnnamedErrorPrediateDefinition(); + ruleNamespaceImport(); state._fsp--; - after(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); + after(grammarAccess.getNamespaceImportRule()); match(input,EOF,FOLLOW_2); } @@ -552,35 +544,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleUnnamedErrorPrediateDefinition" + // $ANTLR end "entryRuleNamespaceImport" - // $ANTLR start "ruleUnnamedErrorPrediateDefinition" - // InternalSolverLanguageParser.g:223:1: ruleUnnamedErrorPrediateDefinition : ( ( rule__UnnamedErrorPrediateDefinition__Group__0 ) ) ; - public final void ruleUnnamedErrorPrediateDefinition() throws RecognitionException { + // $ANTLR start "ruleNamespaceImport" + // InternalSolverLanguageParser.g:228:1: ruleNamespaceImport : ( ( rule__NamespaceImport__Group__0 ) ) ; + public final void ruleNamespaceImport() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:227:2: ( ( ( rule__UnnamedErrorPrediateDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:228:2: ( ( rule__UnnamedErrorPrediateDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:232:2: ( ( ( rule__NamespaceImport__Group__0 ) ) ) + // InternalSolverLanguageParser.g:233:2: ( ( rule__NamespaceImport__Group__0 ) ) { - // InternalSolverLanguageParser.g:228:2: ( ( rule__UnnamedErrorPrediateDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:229:3: ( rule__UnnamedErrorPrediateDefinition__Group__0 ) + // InternalSolverLanguageParser.g:233:2: ( ( rule__NamespaceImport__Group__0 ) ) + // InternalSolverLanguageParser.g:234:3: ( rule__NamespaceImport__Group__0 ) { - before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:230:3: ( rule__UnnamedErrorPrediateDefinition__Group__0 ) - // InternalSolverLanguageParser.g:230:4: rule__UnnamedErrorPrediateDefinition__Group__0 + before(grammarAccess.getNamespaceImportAccess().getGroup()); + // InternalSolverLanguageParser.g:235:3: ( rule__NamespaceImport__Group__0 ) + // InternalSolverLanguageParser.g:235:4: rule__NamespaceImport__Group__0 { pushFollow(FOLLOW_2); - rule__UnnamedErrorPrediateDefinition__Group__0(); + rule__NamespaceImport__Group__0(); state._fsp--; } - after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getGroup()); + after(grammarAccess.getNamespaceImportAccess().getGroup()); } @@ -599,23 +591,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleUnnamedErrorPrediateDefinition" + // $ANTLR end "ruleNamespaceImport" - // $ANTLR start "entryRuleDefaultDefinition" - // InternalSolverLanguageParser.g:239:1: entryRuleDefaultDefinition : ruleDefaultDefinition EOF ; - public final void entryRuleDefaultDefinition() throws RecognitionException { + // $ANTLR start "entryRuleAssertionOrDefinition" + // InternalSolverLanguageParser.g:244:1: entryRuleAssertionOrDefinition : ruleAssertionOrDefinition EOF ; + public final void entryRuleAssertionOrDefinition() throws RecognitionException { try { - // InternalSolverLanguageParser.g:240:1: ( ruleDefaultDefinition EOF ) - // InternalSolverLanguageParser.g:241:1: ruleDefaultDefinition EOF + // InternalSolverLanguageParser.g:245:1: ( ruleAssertionOrDefinition EOF ) + // InternalSolverLanguageParser.g:246:1: ruleAssertionOrDefinition EOF { - before(grammarAccess.getDefaultDefinitionRule()); + before(grammarAccess.getAssertionOrDefinitionRule()); pushFollow(FOLLOW_1); - ruleDefaultDefinition(); + ruleAssertionOrDefinition(); state._fsp--; - after(grammarAccess.getDefaultDefinitionRule()); + after(grammarAccess.getAssertionOrDefinitionRule()); match(input,EOF,FOLLOW_2); } @@ -629,35 +621,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleDefaultDefinition" + // $ANTLR end "entryRuleAssertionOrDefinition" - // $ANTLR start "ruleDefaultDefinition" - // InternalSolverLanguageParser.g:248:1: ruleDefaultDefinition : ( ( rule__DefaultDefinition__Group__0 ) ) ; - public final void ruleDefaultDefinition() throws RecognitionException { + // $ANTLR start "ruleAssertionOrDefinition" + // InternalSolverLanguageParser.g:253:1: ruleAssertionOrDefinition : ( ( rule__AssertionOrDefinition__Group__0 ) ) ; + public final void ruleAssertionOrDefinition() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:252:2: ( ( ( rule__DefaultDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:253:2: ( ( rule__DefaultDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:257:2: ( ( ( rule__AssertionOrDefinition__Group__0 ) ) ) + // InternalSolverLanguageParser.g:258:2: ( ( rule__AssertionOrDefinition__Group__0 ) ) { - // InternalSolverLanguageParser.g:253:2: ( ( rule__DefaultDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:254:3: ( rule__DefaultDefinition__Group__0 ) + // InternalSolverLanguageParser.g:258:2: ( ( rule__AssertionOrDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:259:3: ( rule__AssertionOrDefinition__Group__0 ) { - before(grammarAccess.getDefaultDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:255:3: ( rule__DefaultDefinition__Group__0 ) - // InternalSolverLanguageParser.g:255:4: rule__DefaultDefinition__Group__0 + before(grammarAccess.getAssertionOrDefinitionAccess().getGroup()); + // InternalSolverLanguageParser.g:260:3: ( rule__AssertionOrDefinition__Group__0 ) + // InternalSolverLanguageParser.g:260:4: rule__AssertionOrDefinition__Group__0 { pushFollow(FOLLOW_2); - rule__DefaultDefinition__Group__0(); + rule__AssertionOrDefinition__Group__0(); state._fsp--; } - after(grammarAccess.getDefaultDefinitionAccess().getGroup()); + after(grammarAccess.getAssertionOrDefinitionAccess().getGroup()); } @@ -676,23 +668,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleDefaultDefinition" + // $ANTLR end "ruleAssertionOrDefinition" - // $ANTLR start "entryRuleMetricDefinition" - // InternalSolverLanguageParser.g:264:1: entryRuleMetricDefinition : ruleMetricDefinition EOF ; - public final void entryRuleMetricDefinition() throws RecognitionException { + // $ANTLR start "entryRulePredicateDefinition" + // InternalSolverLanguageParser.g:269:1: entryRulePredicateDefinition : rulePredicateDefinition EOF ; + public final void entryRulePredicateDefinition() throws RecognitionException { try { - // InternalSolverLanguageParser.g:265:1: ( ruleMetricDefinition EOF ) - // InternalSolverLanguageParser.g:266:1: ruleMetricDefinition EOF + // InternalSolverLanguageParser.g:270:1: ( rulePredicateDefinition EOF ) + // InternalSolverLanguageParser.g:271:1: rulePredicateDefinition EOF { - before(grammarAccess.getMetricDefinitionRule()); + before(grammarAccess.getPredicateDefinitionRule()); pushFollow(FOLLOW_1); - ruleMetricDefinition(); + rulePredicateDefinition(); state._fsp--; - after(grammarAccess.getMetricDefinitionRule()); + after(grammarAccess.getPredicateDefinitionRule()); match(input,EOF,FOLLOW_2); } @@ -706,35 +698,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleMetricDefinition" + // $ANTLR end "entryRulePredicateDefinition" - // $ANTLR start "ruleMetricDefinition" - // InternalSolverLanguageParser.g:273:1: ruleMetricDefinition : ( ( rule__MetricDefinition__Group__0 ) ) ; - public final void ruleMetricDefinition() throws RecognitionException { + // $ANTLR start "rulePredicateDefinition" + // InternalSolverLanguageParser.g:278:1: rulePredicateDefinition : ( ( rule__PredicateDefinition__Group__0 ) ) ; + public final void rulePredicateDefinition() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:277:2: ( ( ( rule__MetricDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:278:2: ( ( rule__MetricDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:282:2: ( ( ( rule__PredicateDefinition__Group__0 ) ) ) + // InternalSolverLanguageParser.g:283:2: ( ( rule__PredicateDefinition__Group__0 ) ) { - // InternalSolverLanguageParser.g:278:2: ( ( rule__MetricDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:279:3: ( rule__MetricDefinition__Group__0 ) + // InternalSolverLanguageParser.g:283:2: ( ( rule__PredicateDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:284:3: ( rule__PredicateDefinition__Group__0 ) { - before(grammarAccess.getMetricDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:280:3: ( rule__MetricDefinition__Group__0 ) - // InternalSolverLanguageParser.g:280:4: rule__MetricDefinition__Group__0 + before(grammarAccess.getPredicateDefinitionAccess().getGroup()); + // InternalSolverLanguageParser.g:285:3: ( rule__PredicateDefinition__Group__0 ) + // InternalSolverLanguageParser.g:285:4: rule__PredicateDefinition__Group__0 { pushFollow(FOLLOW_2); - rule__MetricDefinition__Group__0(); + rule__PredicateDefinition__Group__0(); state._fsp--; } - after(grammarAccess.getMetricDefinitionAccess().getGroup()); + after(grammarAccess.getPredicateDefinitionAccess().getGroup()); } @@ -753,23 +745,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleMetricDefinition" + // $ANTLR end "rulePredicateDefinition" - // $ANTLR start "entryRuleExternPredicateDefinition" - // InternalSolverLanguageParser.g:289:1: entryRuleExternPredicateDefinition : ruleExternPredicateDefinition EOF ; - public final void entryRuleExternPredicateDefinition() throws RecognitionException { + // $ANTLR start "entryRuleUnnamedErrorPredicateDefintion" + // InternalSolverLanguageParser.g:294:1: entryRuleUnnamedErrorPredicateDefintion : ruleUnnamedErrorPredicateDefintion EOF ; + public final void entryRuleUnnamedErrorPredicateDefintion() throws RecognitionException { try { - // InternalSolverLanguageParser.g:290:1: ( ruleExternPredicateDefinition EOF ) - // InternalSolverLanguageParser.g:291:1: ruleExternPredicateDefinition EOF + // InternalSolverLanguageParser.g:295:1: ( ruleUnnamedErrorPredicateDefintion EOF ) + // InternalSolverLanguageParser.g:296:1: ruleUnnamedErrorPredicateDefintion EOF { - before(grammarAccess.getExternPredicateDefinitionRule()); + before(grammarAccess.getUnnamedErrorPredicateDefintionRule()); pushFollow(FOLLOW_1); - ruleExternPredicateDefinition(); + ruleUnnamedErrorPredicateDefintion(); state._fsp--; - after(grammarAccess.getExternPredicateDefinitionRule()); + after(grammarAccess.getUnnamedErrorPredicateDefintionRule()); match(input,EOF,FOLLOW_2); } @@ -783,35 +775,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleExternPredicateDefinition" + // $ANTLR end "entryRuleUnnamedErrorPredicateDefintion" - // $ANTLR start "ruleExternPredicateDefinition" - // InternalSolverLanguageParser.g:298:1: ruleExternPredicateDefinition : ( ( rule__ExternPredicateDefinition__Group__0 ) ) ; - public final void ruleExternPredicateDefinition() throws RecognitionException { + // $ANTLR start "ruleUnnamedErrorPredicateDefintion" + // InternalSolverLanguageParser.g:303:1: ruleUnnamedErrorPredicateDefintion : ( ( rule__UnnamedErrorPredicateDefintion__Group__0 ) ) ; + public final void ruleUnnamedErrorPredicateDefintion() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:302:2: ( ( ( rule__ExternPredicateDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:303:2: ( ( rule__ExternPredicateDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:307:2: ( ( ( rule__UnnamedErrorPredicateDefintion__Group__0 ) ) ) + // InternalSolverLanguageParser.g:308:2: ( ( rule__UnnamedErrorPredicateDefintion__Group__0 ) ) { - // InternalSolverLanguageParser.g:303:2: ( ( rule__ExternPredicateDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:304:3: ( rule__ExternPredicateDefinition__Group__0 ) + // InternalSolverLanguageParser.g:308:2: ( ( rule__UnnamedErrorPredicateDefintion__Group__0 ) ) + // InternalSolverLanguageParser.g:309:3: ( rule__UnnamedErrorPredicateDefintion__Group__0 ) { - before(grammarAccess.getExternPredicateDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:305:3: ( rule__ExternPredicateDefinition__Group__0 ) - // InternalSolverLanguageParser.g:305:4: rule__ExternPredicateDefinition__Group__0 + before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getGroup()); + // InternalSolverLanguageParser.g:310:3: ( rule__UnnamedErrorPredicateDefintion__Group__0 ) + // InternalSolverLanguageParser.g:310:4: rule__UnnamedErrorPredicateDefintion__Group__0 { pushFollow(FOLLOW_2); - rule__ExternPredicateDefinition__Group__0(); + rule__UnnamedErrorPredicateDefintion__Group__0(); state._fsp--; } - after(grammarAccess.getExternPredicateDefinitionAccess().getGroup()); + after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getGroup()); } @@ -830,23 +822,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleExternPredicateDefinition" + // $ANTLR end "ruleUnnamedErrorPredicateDefintion" - // $ANTLR start "entryRuleExternMetricDefinition" - // InternalSolverLanguageParser.g:314:1: entryRuleExternMetricDefinition : ruleExternMetricDefinition EOF ; - public final void entryRuleExternMetricDefinition() throws RecognitionException { + // $ANTLR start "entryRuleDefaultAssertion" + // InternalSolverLanguageParser.g:319:1: entryRuleDefaultAssertion : ruleDefaultAssertion EOF ; + public final void entryRuleDefaultAssertion() throws RecognitionException { try { - // InternalSolverLanguageParser.g:315:1: ( ruleExternMetricDefinition EOF ) - // InternalSolverLanguageParser.g:316:1: ruleExternMetricDefinition EOF + // InternalSolverLanguageParser.g:320:1: ( ruleDefaultAssertion EOF ) + // InternalSolverLanguageParser.g:321:1: ruleDefaultAssertion EOF { - before(grammarAccess.getExternMetricDefinitionRule()); + before(grammarAccess.getDefaultAssertionRule()); pushFollow(FOLLOW_1); - ruleExternMetricDefinition(); + ruleDefaultAssertion(); state._fsp--; - after(grammarAccess.getExternMetricDefinitionRule()); + after(grammarAccess.getDefaultAssertionRule()); match(input,EOF,FOLLOW_2); } @@ -860,35 +852,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleExternMetricDefinition" + // $ANTLR end "entryRuleDefaultAssertion" - // $ANTLR start "ruleExternMetricDefinition" - // InternalSolverLanguageParser.g:323:1: ruleExternMetricDefinition : ( ( rule__ExternMetricDefinition__Group__0 ) ) ; - public final void ruleExternMetricDefinition() throws RecognitionException { + // $ANTLR start "ruleDefaultAssertion" + // InternalSolverLanguageParser.g:328:1: ruleDefaultAssertion : ( ( rule__DefaultAssertion__Group__0 ) ) ; + public final void ruleDefaultAssertion() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:327:2: ( ( ( rule__ExternMetricDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:328:2: ( ( rule__ExternMetricDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:332:2: ( ( ( rule__DefaultAssertion__Group__0 ) ) ) + // InternalSolverLanguageParser.g:333:2: ( ( rule__DefaultAssertion__Group__0 ) ) { - // InternalSolverLanguageParser.g:328:2: ( ( rule__ExternMetricDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:329:3: ( rule__ExternMetricDefinition__Group__0 ) + // InternalSolverLanguageParser.g:333:2: ( ( rule__DefaultAssertion__Group__0 ) ) + // InternalSolverLanguageParser.g:334:3: ( rule__DefaultAssertion__Group__0 ) { - before(grammarAccess.getExternMetricDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:330:3: ( rule__ExternMetricDefinition__Group__0 ) - // InternalSolverLanguageParser.g:330:4: rule__ExternMetricDefinition__Group__0 + before(grammarAccess.getDefaultAssertionAccess().getGroup()); + // InternalSolverLanguageParser.g:335:3: ( rule__DefaultAssertion__Group__0 ) + // InternalSolverLanguageParser.g:335:4: rule__DefaultAssertion__Group__0 { pushFollow(FOLLOW_2); - rule__ExternMetricDefinition__Group__0(); + rule__DefaultAssertion__Group__0(); state._fsp--; } - after(grammarAccess.getExternMetricDefinitionAccess().getGroup()); + after(grammarAccess.getDefaultAssertionAccess().getGroup()); } @@ -907,23 +899,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleExternMetricDefinition" + // $ANTLR end "ruleDefaultAssertion" - // $ANTLR start "entryRuleExternAggregatorDefinition" - // InternalSolverLanguageParser.g:339:1: entryRuleExternAggregatorDefinition : ruleExternAggregatorDefinition EOF ; - public final void entryRuleExternAggregatorDefinition() throws RecognitionException { + // $ANTLR start "entryRuleFunctionDefinition" + // InternalSolverLanguageParser.g:344:1: entryRuleFunctionDefinition : ruleFunctionDefinition EOF ; + public final void entryRuleFunctionDefinition() throws RecognitionException { try { - // InternalSolverLanguageParser.g:340:1: ( ruleExternAggregatorDefinition EOF ) - // InternalSolverLanguageParser.g:341:1: ruleExternAggregatorDefinition EOF + // InternalSolverLanguageParser.g:345:1: ( ruleFunctionDefinition EOF ) + // InternalSolverLanguageParser.g:346:1: ruleFunctionDefinition EOF { - before(grammarAccess.getExternAggregatorDefinitionRule()); + before(grammarAccess.getFunctionDefinitionRule()); pushFollow(FOLLOW_1); - ruleExternAggregatorDefinition(); + ruleFunctionDefinition(); state._fsp--; - after(grammarAccess.getExternAggregatorDefinitionRule()); + after(grammarAccess.getFunctionDefinitionRule()); match(input,EOF,FOLLOW_2); } @@ -937,35 +929,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleExternAggregatorDefinition" + // $ANTLR end "entryRuleFunctionDefinition" - // $ANTLR start "ruleExternAggregatorDefinition" - // InternalSolverLanguageParser.g:348:1: ruleExternAggregatorDefinition : ( ( rule__ExternAggregatorDefinition__Group__0 ) ) ; - public final void ruleExternAggregatorDefinition() throws RecognitionException { + // $ANTLR start "ruleFunctionDefinition" + // InternalSolverLanguageParser.g:353:1: ruleFunctionDefinition : ( ( rule__FunctionDefinition__Group__0 ) ) ; + public final void ruleFunctionDefinition() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:352:2: ( ( ( rule__ExternAggregatorDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:353:2: ( ( rule__ExternAggregatorDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:357:2: ( ( ( rule__FunctionDefinition__Group__0 ) ) ) + // InternalSolverLanguageParser.g:358:2: ( ( rule__FunctionDefinition__Group__0 ) ) { - // InternalSolverLanguageParser.g:353:2: ( ( rule__ExternAggregatorDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:354:3: ( rule__ExternAggregatorDefinition__Group__0 ) + // InternalSolverLanguageParser.g:358:2: ( ( rule__FunctionDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:359:3: ( rule__FunctionDefinition__Group__0 ) { - before(grammarAccess.getExternAggregatorDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:355:3: ( rule__ExternAggregatorDefinition__Group__0 ) - // InternalSolverLanguageParser.g:355:4: rule__ExternAggregatorDefinition__Group__0 + before(grammarAccess.getFunctionDefinitionAccess().getGroup()); + // InternalSolverLanguageParser.g:360:3: ( rule__FunctionDefinition__Group__0 ) + // InternalSolverLanguageParser.g:360:4: rule__FunctionDefinition__Group__0 { pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__Group__0(); + rule__FunctionDefinition__Group__0(); state._fsp--; } - after(grammarAccess.getExternAggregatorDefinitionAccess().getGroup()); + after(grammarAccess.getFunctionDefinitionAccess().getGroup()); } @@ -984,23 +976,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleExternAggregatorDefinition" + // $ANTLR end "ruleFunctionDefinition" - // $ANTLR start "entryRuleExternDatatypeDefinition" - // InternalSolverLanguageParser.g:364:1: entryRuleExternDatatypeDefinition : ruleExternDatatypeDefinition EOF ; - public final void entryRuleExternDatatypeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleTypeReference" + // InternalSolverLanguageParser.g:369:1: entryRuleTypeReference : ruleTypeReference EOF ; + public final void entryRuleTypeReference() throws RecognitionException { try { - // InternalSolverLanguageParser.g:365:1: ( ruleExternDatatypeDefinition EOF ) - // InternalSolverLanguageParser.g:366:1: ruleExternDatatypeDefinition EOF + // InternalSolverLanguageParser.g:370:1: ( ruleTypeReference EOF ) + // InternalSolverLanguageParser.g:371:1: ruleTypeReference EOF { - before(grammarAccess.getExternDatatypeDefinitionRule()); + before(grammarAccess.getTypeReferenceRule()); pushFollow(FOLLOW_1); - ruleExternDatatypeDefinition(); + ruleTypeReference(); state._fsp--; - after(grammarAccess.getExternDatatypeDefinitionRule()); + after(grammarAccess.getTypeReferenceRule()); match(input,EOF,FOLLOW_2); } @@ -1014,35 +1006,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleExternDatatypeDefinition" + // $ANTLR end "entryRuleTypeReference" - // $ANTLR start "ruleExternDatatypeDefinition" - // InternalSolverLanguageParser.g:373:1: ruleExternDatatypeDefinition : ( ( rule__ExternDatatypeDefinition__Group__0 ) ) ; - public final void ruleExternDatatypeDefinition() throws RecognitionException { + // $ANTLR start "ruleTypeReference" + // InternalSolverLanguageParser.g:378:1: ruleTypeReference : ( ( rule__TypeReference__Group__0 ) ) ; + public final void ruleTypeReference() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:377:2: ( ( ( rule__ExternDatatypeDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:378:2: ( ( rule__ExternDatatypeDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:382:2: ( ( ( rule__TypeReference__Group__0 ) ) ) + // InternalSolverLanguageParser.g:383:2: ( ( rule__TypeReference__Group__0 ) ) { - // InternalSolverLanguageParser.g:378:2: ( ( rule__ExternDatatypeDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:379:3: ( rule__ExternDatatypeDefinition__Group__0 ) + // InternalSolverLanguageParser.g:383:2: ( ( rule__TypeReference__Group__0 ) ) + // InternalSolverLanguageParser.g:384:3: ( rule__TypeReference__Group__0 ) { - before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:380:3: ( rule__ExternDatatypeDefinition__Group__0 ) - // InternalSolverLanguageParser.g:380:4: rule__ExternDatatypeDefinition__Group__0 + before(grammarAccess.getTypeReferenceAccess().getGroup()); + // InternalSolverLanguageParser.g:385:3: ( rule__TypeReference__Group__0 ) + // InternalSolverLanguageParser.g:385:4: rule__TypeReference__Group__0 { pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group__0(); + rule__TypeReference__Group__0(); state._fsp--; } - after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup()); + after(grammarAccess.getTypeReferenceAccess().getGroup()); } @@ -1061,23 +1053,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleExternDatatypeDefinition" + // $ANTLR end "ruleTypeReference" - // $ANTLR start "entryRuleVariable" - // InternalSolverLanguageParser.g:389:1: entryRuleVariable : ruleVariable EOF ; - public final void entryRuleVariable() throws RecognitionException { + // $ANTLR start "entryRuleAttribute" + // InternalSolverLanguageParser.g:394:1: entryRuleAttribute : ruleAttribute EOF ; + public final void entryRuleAttribute() throws RecognitionException { try { - // InternalSolverLanguageParser.g:390:1: ( ruleVariable EOF ) - // InternalSolverLanguageParser.g:391:1: ruleVariable EOF + // InternalSolverLanguageParser.g:395:1: ( ruleAttribute EOF ) + // InternalSolverLanguageParser.g:396:1: ruleAttribute EOF { - before(grammarAccess.getVariableRule()); + before(grammarAccess.getAttributeRule()); pushFollow(FOLLOW_1); - ruleVariable(); + ruleAttribute(); state._fsp--; - after(grammarAccess.getVariableRule()); + after(grammarAccess.getAttributeRule()); match(input,EOF,FOLLOW_2); } @@ -1091,35 +1083,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleVariable" + // $ANTLR end "entryRuleAttribute" - // $ANTLR start "ruleVariable" - // InternalSolverLanguageParser.g:398:1: ruleVariable : ( ( rule__Variable__Group__0 ) ) ; - public final void ruleVariable() throws RecognitionException { + // $ANTLR start "ruleAttribute" + // InternalSolverLanguageParser.g:403:1: ruleAttribute : ( ( rule__Attribute__Group__0 ) ) ; + public final void ruleAttribute() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:402:2: ( ( ( rule__Variable__Group__0 ) ) ) - // InternalSolverLanguageParser.g:403:2: ( ( rule__Variable__Group__0 ) ) + // InternalSolverLanguageParser.g:407:2: ( ( ( rule__Attribute__Group__0 ) ) ) + // InternalSolverLanguageParser.g:408:2: ( ( rule__Attribute__Group__0 ) ) { - // InternalSolverLanguageParser.g:403:2: ( ( rule__Variable__Group__0 ) ) - // InternalSolverLanguageParser.g:404:3: ( rule__Variable__Group__0 ) + // InternalSolverLanguageParser.g:408:2: ( ( rule__Attribute__Group__0 ) ) + // InternalSolverLanguageParser.g:409:3: ( rule__Attribute__Group__0 ) { - before(grammarAccess.getVariableAccess().getGroup()); - // InternalSolverLanguageParser.g:405:3: ( rule__Variable__Group__0 ) - // InternalSolverLanguageParser.g:405:4: rule__Variable__Group__0 + before(grammarAccess.getAttributeAccess().getGroup()); + // InternalSolverLanguageParser.g:410:3: ( rule__Attribute__Group__0 ) + // InternalSolverLanguageParser.g:410:4: rule__Attribute__Group__0 { pushFollow(FOLLOW_2); - rule__Variable__Group__0(); + rule__Attribute__Group__0(); state._fsp--; } - after(grammarAccess.getVariableAccess().getGroup()); + after(grammarAccess.getAttributeAccess().getGroup()); } @@ -1138,23 +1130,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleVariable" + // $ANTLR end "ruleAttribute" - // $ANTLR start "entryRuleExpression" - // InternalSolverLanguageParser.g:414:1: entryRuleExpression : ruleExpression EOF ; - public final void entryRuleExpression() throws RecognitionException { + // $ANTLR start "entryRuleExternDeclaration" + // InternalSolverLanguageParser.g:419:1: entryRuleExternDeclaration : ruleExternDeclaration EOF ; + public final void entryRuleExternDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:415:1: ( ruleExpression EOF ) - // InternalSolverLanguageParser.g:416:1: ruleExpression EOF + // InternalSolverLanguageParser.g:420:1: ( ruleExternDeclaration EOF ) + // InternalSolverLanguageParser.g:421:1: ruleExternDeclaration EOF { - before(grammarAccess.getExpressionRule()); + before(grammarAccess.getExternDeclarationRule()); pushFollow(FOLLOW_1); - ruleExpression(); + ruleExternDeclaration(); state._fsp--; - after(grammarAccess.getExpressionRule()); + after(grammarAccess.getExternDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -1168,35 +1160,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleExpression" + // $ANTLR end "entryRuleExternDeclaration" - // $ANTLR start "ruleExpression" - // InternalSolverLanguageParser.g:423:1: ruleExpression : ( ( rule__Expression__Alternatives ) ) ; - public final void ruleExpression() throws RecognitionException { + // $ANTLR start "ruleExternDeclaration" + // InternalSolverLanguageParser.g:428:1: ruleExternDeclaration : ( ( rule__ExternDeclaration__Alternatives ) ) ; + public final void ruleExternDeclaration() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:427:2: ( ( ( rule__Expression__Alternatives ) ) ) - // InternalSolverLanguageParser.g:428:2: ( ( rule__Expression__Alternatives ) ) + // InternalSolverLanguageParser.g:432:2: ( ( ( rule__ExternDeclaration__Alternatives ) ) ) + // InternalSolverLanguageParser.g:433:2: ( ( rule__ExternDeclaration__Alternatives ) ) { - // InternalSolverLanguageParser.g:428:2: ( ( rule__Expression__Alternatives ) ) - // InternalSolverLanguageParser.g:429:3: ( rule__Expression__Alternatives ) + // InternalSolverLanguageParser.g:433:2: ( ( rule__ExternDeclaration__Alternatives ) ) + // InternalSolverLanguageParser.g:434:3: ( rule__ExternDeclaration__Alternatives ) { - before(grammarAccess.getExpressionAccess().getAlternatives()); - // InternalSolverLanguageParser.g:430:3: ( rule__Expression__Alternatives ) - // InternalSolverLanguageParser.g:430:4: rule__Expression__Alternatives + before(grammarAccess.getExternDeclarationAccess().getAlternatives()); + // InternalSolverLanguageParser.g:435:3: ( rule__ExternDeclaration__Alternatives ) + // InternalSolverLanguageParser.g:435:4: rule__ExternDeclaration__Alternatives { pushFollow(FOLLOW_2); - rule__Expression__Alternatives(); + rule__ExternDeclaration__Alternatives(); state._fsp--; } - after(grammarAccess.getExpressionAccess().getAlternatives()); + after(grammarAccess.getExternDeclarationAccess().getAlternatives()); } @@ -1215,23 +1207,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleExpression" + // $ANTLR end "ruleExternDeclaration" - // $ANTLR start "entryRuleIfElse" - // InternalSolverLanguageParser.g:439:1: entryRuleIfElse : ruleIfElse EOF ; - public final void entryRuleIfElse() throws RecognitionException { + // $ANTLR start "entryRuleExternPredicateDeclaration" + // InternalSolverLanguageParser.g:444:1: entryRuleExternPredicateDeclaration : ruleExternPredicateDeclaration EOF ; + public final void entryRuleExternPredicateDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:440:1: ( ruleIfElse EOF ) - // InternalSolverLanguageParser.g:441:1: ruleIfElse EOF + // InternalSolverLanguageParser.g:445:1: ( ruleExternPredicateDeclaration EOF ) + // InternalSolverLanguageParser.g:446:1: ruleExternPredicateDeclaration EOF { - before(grammarAccess.getIfElseRule()); + before(grammarAccess.getExternPredicateDeclarationRule()); pushFollow(FOLLOW_1); - ruleIfElse(); + ruleExternPredicateDeclaration(); state._fsp--; - after(grammarAccess.getIfElseRule()); + after(grammarAccess.getExternPredicateDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -1245,35 +1237,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleIfElse" + // $ANTLR end "entryRuleExternPredicateDeclaration" - // $ANTLR start "ruleIfElse" - // InternalSolverLanguageParser.g:448:1: ruleIfElse : ( ( rule__IfElse__Group__0 ) ) ; - public final void ruleIfElse() throws RecognitionException { + // $ANTLR start "ruleExternPredicateDeclaration" + // InternalSolverLanguageParser.g:453:1: ruleExternPredicateDeclaration : ( ( rule__ExternPredicateDeclaration__Group__0 ) ) ; + public final void ruleExternPredicateDeclaration() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:452:2: ( ( ( rule__IfElse__Group__0 ) ) ) - // InternalSolverLanguageParser.g:453:2: ( ( rule__IfElse__Group__0 ) ) + // InternalSolverLanguageParser.g:457:2: ( ( ( rule__ExternPredicateDeclaration__Group__0 ) ) ) + // InternalSolverLanguageParser.g:458:2: ( ( rule__ExternPredicateDeclaration__Group__0 ) ) { - // InternalSolverLanguageParser.g:453:2: ( ( rule__IfElse__Group__0 ) ) - // InternalSolverLanguageParser.g:454:3: ( rule__IfElse__Group__0 ) + // InternalSolverLanguageParser.g:458:2: ( ( rule__ExternPredicateDeclaration__Group__0 ) ) + // InternalSolverLanguageParser.g:459:3: ( rule__ExternPredicateDeclaration__Group__0 ) { - before(grammarAccess.getIfElseAccess().getGroup()); - // InternalSolverLanguageParser.g:455:3: ( rule__IfElse__Group__0 ) - // InternalSolverLanguageParser.g:455:4: rule__IfElse__Group__0 + before(grammarAccess.getExternPredicateDeclarationAccess().getGroup()); + // InternalSolverLanguageParser.g:460:3: ( rule__ExternPredicateDeclaration__Group__0 ) + // InternalSolverLanguageParser.g:460:4: rule__ExternPredicateDeclaration__Group__0 { pushFollow(FOLLOW_2); - rule__IfElse__Group__0(); + rule__ExternPredicateDeclaration__Group__0(); state._fsp--; } - after(grammarAccess.getIfElseAccess().getGroup()); + after(grammarAccess.getExternPredicateDeclarationAccess().getGroup()); } @@ -1292,23 +1284,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleIfElse" + // $ANTLR end "ruleExternPredicateDeclaration" - // $ANTLR start "entryRuleLet" - // InternalSolverLanguageParser.g:464:1: entryRuleLet : ruleLet EOF ; - public final void entryRuleLet() throws RecognitionException { + // $ANTLR start "entryRuleExternFunctionDeclaration" + // InternalSolverLanguageParser.g:469:1: entryRuleExternFunctionDeclaration : ruleExternFunctionDeclaration EOF ; + public final void entryRuleExternFunctionDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:465:1: ( ruleLet EOF ) - // InternalSolverLanguageParser.g:466:1: ruleLet EOF + // InternalSolverLanguageParser.g:470:1: ( ruleExternFunctionDeclaration EOF ) + // InternalSolverLanguageParser.g:471:1: ruleExternFunctionDeclaration EOF { - before(grammarAccess.getLetRule()); + before(grammarAccess.getExternFunctionDeclarationRule()); pushFollow(FOLLOW_1); - ruleLet(); + ruleExternFunctionDeclaration(); state._fsp--; - after(grammarAccess.getLetRule()); + after(grammarAccess.getExternFunctionDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -1322,35 +1314,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleLet" + // $ANTLR end "entryRuleExternFunctionDeclaration" - // $ANTLR start "ruleLet" - // InternalSolverLanguageParser.g:473:1: ruleLet : ( ( rule__Let__Group__0 ) ) ; - public final void ruleLet() throws RecognitionException { + // $ANTLR start "ruleExternFunctionDeclaration" + // InternalSolverLanguageParser.g:478:1: ruleExternFunctionDeclaration : ( ( rule__ExternFunctionDeclaration__Group__0 ) ) ; + public final void ruleExternFunctionDeclaration() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:477:2: ( ( ( rule__Let__Group__0 ) ) ) - // InternalSolverLanguageParser.g:478:2: ( ( rule__Let__Group__0 ) ) + // InternalSolverLanguageParser.g:482:2: ( ( ( rule__ExternFunctionDeclaration__Group__0 ) ) ) + // InternalSolverLanguageParser.g:483:2: ( ( rule__ExternFunctionDeclaration__Group__0 ) ) { - // InternalSolverLanguageParser.g:478:2: ( ( rule__Let__Group__0 ) ) - // InternalSolverLanguageParser.g:479:3: ( rule__Let__Group__0 ) + // InternalSolverLanguageParser.g:483:2: ( ( rule__ExternFunctionDeclaration__Group__0 ) ) + // InternalSolverLanguageParser.g:484:3: ( rule__ExternFunctionDeclaration__Group__0 ) { - before(grammarAccess.getLetAccess().getGroup()); - // InternalSolverLanguageParser.g:480:3: ( rule__Let__Group__0 ) - // InternalSolverLanguageParser.g:480:4: rule__Let__Group__0 + before(grammarAccess.getExternFunctionDeclarationAccess().getGroup()); + // InternalSolverLanguageParser.g:485:3: ( rule__ExternFunctionDeclaration__Group__0 ) + // InternalSolverLanguageParser.g:485:4: rule__ExternFunctionDeclaration__Group__0 { pushFollow(FOLLOW_2); - rule__Let__Group__0(); + rule__ExternFunctionDeclaration__Group__0(); state._fsp--; } - after(grammarAccess.getLetAccess().getGroup()); + after(grammarAccess.getExternFunctionDeclarationAccess().getGroup()); } @@ -1369,23 +1361,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleLet" + // $ANTLR end "ruleExternFunctionDeclaration" - // $ANTLR start "entryRuleLetBinding" - // InternalSolverLanguageParser.g:489:1: entryRuleLetBinding : ruleLetBinding EOF ; - public final void entryRuleLetBinding() throws RecognitionException { + // $ANTLR start "entryRuleExternAggregationOperatorDeclaration" + // InternalSolverLanguageParser.g:494:1: entryRuleExternAggregationOperatorDeclaration : ruleExternAggregationOperatorDeclaration EOF ; + public final void entryRuleExternAggregationOperatorDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:490:1: ( ruleLetBinding EOF ) - // InternalSolverLanguageParser.g:491:1: ruleLetBinding EOF + // InternalSolverLanguageParser.g:495:1: ( ruleExternAggregationOperatorDeclaration EOF ) + // InternalSolverLanguageParser.g:496:1: ruleExternAggregationOperatorDeclaration EOF { - before(grammarAccess.getLetBindingRule()); + before(grammarAccess.getExternAggregationOperatorDeclarationRule()); pushFollow(FOLLOW_1); - ruleLetBinding(); + ruleExternAggregationOperatorDeclaration(); state._fsp--; - after(grammarAccess.getLetBindingRule()); + after(grammarAccess.getExternAggregationOperatorDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -1399,35 +1391,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleLetBinding" + // $ANTLR end "entryRuleExternAggregationOperatorDeclaration" - // $ANTLR start "ruleLetBinding" - // InternalSolverLanguageParser.g:498:1: ruleLetBinding : ( ( rule__LetBinding__Group__0 ) ) ; - public final void ruleLetBinding() throws RecognitionException { + // $ANTLR start "ruleExternAggregationOperatorDeclaration" + // InternalSolverLanguageParser.g:503:1: ruleExternAggregationOperatorDeclaration : ( ( rule__ExternAggregationOperatorDeclaration__Group__0 ) ) ; + public final void ruleExternAggregationOperatorDeclaration() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:502:2: ( ( ( rule__LetBinding__Group__0 ) ) ) - // InternalSolverLanguageParser.g:503:2: ( ( rule__LetBinding__Group__0 ) ) + // InternalSolverLanguageParser.g:507:2: ( ( ( rule__ExternAggregationOperatorDeclaration__Group__0 ) ) ) + // InternalSolverLanguageParser.g:508:2: ( ( rule__ExternAggregationOperatorDeclaration__Group__0 ) ) { - // InternalSolverLanguageParser.g:503:2: ( ( rule__LetBinding__Group__0 ) ) - // InternalSolverLanguageParser.g:504:3: ( rule__LetBinding__Group__0 ) + // InternalSolverLanguageParser.g:508:2: ( ( rule__ExternAggregationOperatorDeclaration__Group__0 ) ) + // InternalSolverLanguageParser.g:509:3: ( rule__ExternAggregationOperatorDeclaration__Group__0 ) { - before(grammarAccess.getLetBindingAccess().getGroup()); - // InternalSolverLanguageParser.g:505:3: ( rule__LetBinding__Group__0 ) - // InternalSolverLanguageParser.g:505:4: rule__LetBinding__Group__0 + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getGroup()); + // InternalSolverLanguageParser.g:510:3: ( rule__ExternAggregationOperatorDeclaration__Group__0 ) + // InternalSolverLanguageParser.g:510:4: rule__ExternAggregationOperatorDeclaration__Group__0 { pushFollow(FOLLOW_2); - rule__LetBinding__Group__0(); + rule__ExternAggregationOperatorDeclaration__Group__0(); state._fsp--; } - after(grammarAccess.getLetBindingAccess().getGroup()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getGroup()); } @@ -1446,23 +1438,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleLetBinding" + // $ANTLR end "ruleExternAggregationOperatorDeclaration" - // $ANTLR start "entryRuleImplicationExpression" - // InternalSolverLanguageParser.g:514:1: entryRuleImplicationExpression : ruleImplicationExpression EOF ; - public final void entryRuleImplicationExpression() throws RecognitionException { + // $ANTLR start "entryRuleExternDatatypeDeclaration" + // InternalSolverLanguageParser.g:519:1: entryRuleExternDatatypeDeclaration : ruleExternDatatypeDeclaration EOF ; + public final void entryRuleExternDatatypeDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:515:1: ( ruleImplicationExpression EOF ) - // InternalSolverLanguageParser.g:516:1: ruleImplicationExpression EOF + // InternalSolverLanguageParser.g:520:1: ( ruleExternDatatypeDeclaration EOF ) + // InternalSolverLanguageParser.g:521:1: ruleExternDatatypeDeclaration EOF { - before(grammarAccess.getImplicationExpressionRule()); + before(grammarAccess.getExternDatatypeDeclarationRule()); pushFollow(FOLLOW_1); - ruleImplicationExpression(); + ruleExternDatatypeDeclaration(); state._fsp--; - after(grammarAccess.getImplicationExpressionRule()); + after(grammarAccess.getExternDatatypeDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -1476,35 +1468,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleImplicationExpression" + // $ANTLR end "entryRuleExternDatatypeDeclaration" - // $ANTLR start "ruleImplicationExpression" - // InternalSolverLanguageParser.g:523:1: ruleImplicationExpression : ( ( rule__ImplicationExpression__Group__0 ) ) ; - public final void ruleImplicationExpression() throws RecognitionException { + // $ANTLR start "ruleExternDatatypeDeclaration" + // InternalSolverLanguageParser.g:528:1: ruleExternDatatypeDeclaration : ( ( rule__ExternDatatypeDeclaration__Group__0 ) ) ; + public final void ruleExternDatatypeDeclaration() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:527:2: ( ( ( rule__ImplicationExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:528:2: ( ( rule__ImplicationExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:532:2: ( ( ( rule__ExternDatatypeDeclaration__Group__0 ) ) ) + // InternalSolverLanguageParser.g:533:2: ( ( rule__ExternDatatypeDeclaration__Group__0 ) ) { - // InternalSolverLanguageParser.g:528:2: ( ( rule__ImplicationExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:529:3: ( rule__ImplicationExpression__Group__0 ) + // InternalSolverLanguageParser.g:533:2: ( ( rule__ExternDatatypeDeclaration__Group__0 ) ) + // InternalSolverLanguageParser.g:534:3: ( rule__ExternDatatypeDeclaration__Group__0 ) { - before(grammarAccess.getImplicationExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:530:3: ( rule__ImplicationExpression__Group__0 ) - // InternalSolverLanguageParser.g:530:4: rule__ImplicationExpression__Group__0 + before(grammarAccess.getExternDatatypeDeclarationAccess().getGroup()); + // InternalSolverLanguageParser.g:535:3: ( rule__ExternDatatypeDeclaration__Group__0 ) + // InternalSolverLanguageParser.g:535:4: rule__ExternDatatypeDeclaration__Group__0 { pushFollow(FOLLOW_2); - rule__ImplicationExpression__Group__0(); + rule__ExternDatatypeDeclaration__Group__0(); state._fsp--; } - after(grammarAccess.getImplicationExpressionAccess().getGroup()); + after(grammarAccess.getExternDatatypeDeclarationAccess().getGroup()); } @@ -1523,23 +1515,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleImplicationExpression" + // $ANTLR end "ruleExternDatatypeDeclaration" - // $ANTLR start "entryRuleDisjunctiveExpression" - // InternalSolverLanguageParser.g:539:1: entryRuleDisjunctiveExpression : ruleDisjunctiveExpression EOF ; - public final void entryRuleDisjunctiveExpression() throws RecognitionException { + // $ANTLR start "entryRuleExpression" + // InternalSolverLanguageParser.g:544:1: entryRuleExpression : ruleExpression EOF ; + public final void entryRuleExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:540:1: ( ruleDisjunctiveExpression EOF ) - // InternalSolverLanguageParser.g:541:1: ruleDisjunctiveExpression EOF + // InternalSolverLanguageParser.g:545:1: ( ruleExpression EOF ) + // InternalSolverLanguageParser.g:546:1: ruleExpression EOF { - before(grammarAccess.getDisjunctiveExpressionRule()); + before(grammarAccess.getExpressionRule()); pushFollow(FOLLOW_1); - ruleDisjunctiveExpression(); + ruleExpression(); state._fsp--; - after(grammarAccess.getDisjunctiveExpressionRule()); + after(grammarAccess.getExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -1553,35 +1545,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleDisjunctiveExpression" + // $ANTLR end "entryRuleExpression" - // $ANTLR start "ruleDisjunctiveExpression" - // InternalSolverLanguageParser.g:548:1: ruleDisjunctiveExpression : ( ( rule__DisjunctiveExpression__Group__0 ) ) ; - public final void ruleDisjunctiveExpression() throws RecognitionException { + // $ANTLR start "ruleExpression" + // InternalSolverLanguageParser.g:553:1: ruleExpression : ( ( rule__Expression__Alternatives ) ) ; + public final void ruleExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:552:2: ( ( ( rule__DisjunctiveExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:553:2: ( ( rule__DisjunctiveExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:557:2: ( ( ( rule__Expression__Alternatives ) ) ) + // InternalSolverLanguageParser.g:558:2: ( ( rule__Expression__Alternatives ) ) { - // InternalSolverLanguageParser.g:553:2: ( ( rule__DisjunctiveExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:554:3: ( rule__DisjunctiveExpression__Group__0 ) + // InternalSolverLanguageParser.g:558:2: ( ( rule__Expression__Alternatives ) ) + // InternalSolverLanguageParser.g:559:3: ( rule__Expression__Alternatives ) { - before(grammarAccess.getDisjunctiveExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:555:3: ( rule__DisjunctiveExpression__Group__0 ) - // InternalSolverLanguageParser.g:555:4: rule__DisjunctiveExpression__Group__0 + before(grammarAccess.getExpressionAccess().getAlternatives()); + // InternalSolverLanguageParser.g:560:3: ( rule__Expression__Alternatives ) + // InternalSolverLanguageParser.g:560:4: rule__Expression__Alternatives { pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group__0(); + rule__Expression__Alternatives(); state._fsp--; } - after(grammarAccess.getDisjunctiveExpressionAccess().getGroup()); + after(grammarAccess.getExpressionAccess().getAlternatives()); } @@ -1600,23 +1592,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleDisjunctiveExpression" + // $ANTLR end "ruleExpression" - // $ANTLR start "entryRuleCase" - // InternalSolverLanguageParser.g:564:1: entryRuleCase : ruleCase EOF ; - public final void entryRuleCase() throws RecognitionException { + // $ANTLR start "entryRuleConditionalExpression" + // InternalSolverLanguageParser.g:569:1: entryRuleConditionalExpression : ruleConditionalExpression EOF ; + public final void entryRuleConditionalExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:565:1: ( ruleCase EOF ) - // InternalSolverLanguageParser.g:566:1: ruleCase EOF + // InternalSolverLanguageParser.g:570:1: ( ruleConditionalExpression EOF ) + // InternalSolverLanguageParser.g:571:1: ruleConditionalExpression EOF { - before(grammarAccess.getCaseRule()); + before(grammarAccess.getConditionalExpressionRule()); pushFollow(FOLLOW_1); - ruleCase(); + ruleConditionalExpression(); state._fsp--; - after(grammarAccess.getCaseRule()); + after(grammarAccess.getConditionalExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -1630,35 +1622,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleCase" + // $ANTLR end "entryRuleConditionalExpression" - // $ANTLR start "ruleCase" - // InternalSolverLanguageParser.g:573:1: ruleCase : ( ( rule__Case__Group__0 ) ) ; - public final void ruleCase() throws RecognitionException { + // $ANTLR start "ruleConditionalExpression" + // InternalSolverLanguageParser.g:578:1: ruleConditionalExpression : ( ( rule__ConditionalExpression__Group__0 ) ) ; + public final void ruleConditionalExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:577:2: ( ( ( rule__Case__Group__0 ) ) ) - // InternalSolverLanguageParser.g:578:2: ( ( rule__Case__Group__0 ) ) + // InternalSolverLanguageParser.g:582:2: ( ( ( rule__ConditionalExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:583:2: ( ( rule__ConditionalExpression__Group__0 ) ) { - // InternalSolverLanguageParser.g:578:2: ( ( rule__Case__Group__0 ) ) - // InternalSolverLanguageParser.g:579:3: ( rule__Case__Group__0 ) + // InternalSolverLanguageParser.g:583:2: ( ( rule__ConditionalExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:584:3: ( rule__ConditionalExpression__Group__0 ) { - before(grammarAccess.getCaseAccess().getGroup()); - // InternalSolverLanguageParser.g:580:3: ( rule__Case__Group__0 ) - // InternalSolverLanguageParser.g:580:4: rule__Case__Group__0 + before(grammarAccess.getConditionalExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:585:3: ( rule__ConditionalExpression__Group__0 ) + // InternalSolverLanguageParser.g:585:4: rule__ConditionalExpression__Group__0 { pushFollow(FOLLOW_2); - rule__Case__Group__0(); + rule__ConditionalExpression__Group__0(); state._fsp--; } - after(grammarAccess.getCaseAccess().getGroup()); + after(grammarAccess.getConditionalExpressionAccess().getGroup()); } @@ -1677,23 +1669,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleCase" + // $ANTLR end "ruleConditionalExpression" - // $ANTLR start "entryRuleConjunctiveExpression" - // InternalSolverLanguageParser.g:589:1: entryRuleConjunctiveExpression : ruleConjunctiveExpression EOF ; - public final void entryRuleConjunctiveExpression() throws RecognitionException { + // $ANTLR start "entryRuleLetExpression" + // InternalSolverLanguageParser.g:594:1: entryRuleLetExpression : ruleLetExpression EOF ; + public final void entryRuleLetExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:590:1: ( ruleConjunctiveExpression EOF ) - // InternalSolverLanguageParser.g:591:1: ruleConjunctiveExpression EOF + // InternalSolverLanguageParser.g:595:1: ( ruleLetExpression EOF ) + // InternalSolverLanguageParser.g:596:1: ruleLetExpression EOF { - before(grammarAccess.getConjunctiveExpressionRule()); + before(grammarAccess.getLetExpressionRule()); pushFollow(FOLLOW_1); - ruleConjunctiveExpression(); + ruleLetExpression(); state._fsp--; - after(grammarAccess.getConjunctiveExpressionRule()); + after(grammarAccess.getLetExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -1707,35 +1699,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleConjunctiveExpression" + // $ANTLR end "entryRuleLetExpression" - // $ANTLR start "ruleConjunctiveExpression" - // InternalSolverLanguageParser.g:598:1: ruleConjunctiveExpression : ( ( rule__ConjunctiveExpression__Group__0 ) ) ; - public final void ruleConjunctiveExpression() throws RecognitionException { + // $ANTLR start "ruleLetExpression" + // InternalSolverLanguageParser.g:603:1: ruleLetExpression : ( ( rule__LetExpression__Group__0 ) ) ; + public final void ruleLetExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:602:2: ( ( ( rule__ConjunctiveExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:603:2: ( ( rule__ConjunctiveExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:607:2: ( ( ( rule__LetExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:608:2: ( ( rule__LetExpression__Group__0 ) ) { - // InternalSolverLanguageParser.g:603:2: ( ( rule__ConjunctiveExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:604:3: ( rule__ConjunctiveExpression__Group__0 ) + // InternalSolverLanguageParser.g:608:2: ( ( rule__LetExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:609:3: ( rule__LetExpression__Group__0 ) { - before(grammarAccess.getConjunctiveExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:605:3: ( rule__ConjunctiveExpression__Group__0 ) - // InternalSolverLanguageParser.g:605:4: rule__ConjunctiveExpression__Group__0 + before(grammarAccess.getLetExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:610:3: ( rule__LetExpression__Group__0 ) + // InternalSolverLanguageParser.g:610:4: rule__LetExpression__Group__0 { pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__Group__0(); + rule__LetExpression__Group__0(); state._fsp--; } - after(grammarAccess.getConjunctiveExpressionAccess().getGroup()); + after(grammarAccess.getLetExpressionAccess().getGroup()); } @@ -1754,23 +1746,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleConjunctiveExpression" + // $ANTLR end "ruleLetExpression" - // $ANTLR start "entryRuleComparisonExpression" - // InternalSolverLanguageParser.g:614:1: entryRuleComparisonExpression : ruleComparisonExpression EOF ; - public final void entryRuleComparisonExpression() throws RecognitionException { + // $ANTLR start "entryRuleLetBinding" + // InternalSolverLanguageParser.g:619:1: entryRuleLetBinding : ruleLetBinding EOF ; + public final void entryRuleLetBinding() throws RecognitionException { try { - // InternalSolverLanguageParser.g:615:1: ( ruleComparisonExpression EOF ) - // InternalSolverLanguageParser.g:616:1: ruleComparisonExpression EOF + // InternalSolverLanguageParser.g:620:1: ( ruleLetBinding EOF ) + // InternalSolverLanguageParser.g:621:1: ruleLetBinding EOF { - before(grammarAccess.getComparisonExpressionRule()); + before(grammarAccess.getLetBindingRule()); pushFollow(FOLLOW_1); - ruleComparisonExpression(); + ruleLetBinding(); state._fsp--; - after(grammarAccess.getComparisonExpressionRule()); + after(grammarAccess.getLetBindingRule()); match(input,EOF,FOLLOW_2); } @@ -1784,35 +1776,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleComparisonExpression" + // $ANTLR end "entryRuleLetBinding" - // $ANTLR start "ruleComparisonExpression" - // InternalSolverLanguageParser.g:623:1: ruleComparisonExpression : ( ( rule__ComparisonExpression__Group__0 ) ) ; - public final void ruleComparisonExpression() throws RecognitionException { + // $ANTLR start "ruleLetBinding" + // InternalSolverLanguageParser.g:628:1: ruleLetBinding : ( ( rule__LetBinding__Group__0 ) ) ; + public final void ruleLetBinding() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:627:2: ( ( ( rule__ComparisonExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:628:2: ( ( rule__ComparisonExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:632:2: ( ( ( rule__LetBinding__Group__0 ) ) ) + // InternalSolverLanguageParser.g:633:2: ( ( rule__LetBinding__Group__0 ) ) { - // InternalSolverLanguageParser.g:628:2: ( ( rule__ComparisonExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:629:3: ( rule__ComparisonExpression__Group__0 ) + // InternalSolverLanguageParser.g:633:2: ( ( rule__LetBinding__Group__0 ) ) + // InternalSolverLanguageParser.g:634:3: ( rule__LetBinding__Group__0 ) { - before(grammarAccess.getComparisonExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:630:3: ( rule__ComparisonExpression__Group__0 ) - // InternalSolverLanguageParser.g:630:4: rule__ComparisonExpression__Group__0 + before(grammarAccess.getLetBindingAccess().getGroup()); + // InternalSolverLanguageParser.g:635:3: ( rule__LetBinding__Group__0 ) + // InternalSolverLanguageParser.g:635:4: rule__LetBinding__Group__0 { pushFollow(FOLLOW_2); - rule__ComparisonExpression__Group__0(); + rule__LetBinding__Group__0(); state._fsp--; } - after(grammarAccess.getComparisonExpressionAccess().getGroup()); + after(grammarAccess.getLetBindingAccess().getGroup()); } @@ -1831,23 +1823,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleComparisonExpression" + // $ANTLR end "ruleLetBinding" - // $ANTLR start "entryRuleAdditiveExpression" - // InternalSolverLanguageParser.g:639:1: entryRuleAdditiveExpression : ruleAdditiveExpression EOF ; - public final void entryRuleAdditiveExpression() throws RecognitionException { + // $ANTLR start "entryRuleDisjunctiveExpression" + // InternalSolverLanguageParser.g:644:1: entryRuleDisjunctiveExpression : ruleDisjunctiveExpression EOF ; + public final void entryRuleDisjunctiveExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:640:1: ( ruleAdditiveExpression EOF ) - // InternalSolverLanguageParser.g:641:1: ruleAdditiveExpression EOF + // InternalSolverLanguageParser.g:645:1: ( ruleDisjunctiveExpression EOF ) + // InternalSolverLanguageParser.g:646:1: ruleDisjunctiveExpression EOF { - before(grammarAccess.getAdditiveExpressionRule()); + before(grammarAccess.getDisjunctiveExpressionRule()); pushFollow(FOLLOW_1); - ruleAdditiveExpression(); + ruleDisjunctiveExpression(); state._fsp--; - after(grammarAccess.getAdditiveExpressionRule()); + after(grammarAccess.getDisjunctiveExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -1861,35 +1853,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleAdditiveExpression" + // $ANTLR end "entryRuleDisjunctiveExpression" - // $ANTLR start "ruleAdditiveExpression" - // InternalSolverLanguageParser.g:648:1: ruleAdditiveExpression : ( ( rule__AdditiveExpression__Group__0 ) ) ; - public final void ruleAdditiveExpression() throws RecognitionException { + // $ANTLR start "ruleDisjunctiveExpression" + // InternalSolverLanguageParser.g:653:1: ruleDisjunctiveExpression : ( ( rule__DisjunctiveExpression__Group__0 ) ) ; + public final void ruleDisjunctiveExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:652:2: ( ( ( rule__AdditiveExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:653:2: ( ( rule__AdditiveExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:657:2: ( ( ( rule__DisjunctiveExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:658:2: ( ( rule__DisjunctiveExpression__Group__0 ) ) { - // InternalSolverLanguageParser.g:653:2: ( ( rule__AdditiveExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:654:3: ( rule__AdditiveExpression__Group__0 ) + // InternalSolverLanguageParser.g:658:2: ( ( rule__DisjunctiveExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:659:3: ( rule__DisjunctiveExpression__Group__0 ) { - before(grammarAccess.getAdditiveExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:655:3: ( rule__AdditiveExpression__Group__0 ) - // InternalSolverLanguageParser.g:655:4: rule__AdditiveExpression__Group__0 + before(grammarAccess.getDisjunctiveExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:660:3: ( rule__DisjunctiveExpression__Group__0 ) + // InternalSolverLanguageParser.g:660:4: rule__DisjunctiveExpression__Group__0 { pushFollow(FOLLOW_2); - rule__AdditiveExpression__Group__0(); + rule__DisjunctiveExpression__Group__0(); state._fsp--; } - after(grammarAccess.getAdditiveExpressionAccess().getGroup()); + after(grammarAccess.getDisjunctiveExpressionAccess().getGroup()); } @@ -1908,23 +1900,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleAdditiveExpression" + // $ANTLR end "ruleDisjunctiveExpression" - // $ANTLR start "entryRuleMultiplicativeExpression" - // InternalSolverLanguageParser.g:664:1: entryRuleMultiplicativeExpression : ruleMultiplicativeExpression EOF ; - public final void entryRuleMultiplicativeExpression() throws RecognitionException { + // $ANTLR start "entryRuleCase" + // InternalSolverLanguageParser.g:669:1: entryRuleCase : ruleCase EOF ; + public final void entryRuleCase() throws RecognitionException { try { - // InternalSolverLanguageParser.g:665:1: ( ruleMultiplicativeExpression EOF ) - // InternalSolverLanguageParser.g:666:1: ruleMultiplicativeExpression EOF + // InternalSolverLanguageParser.g:670:1: ( ruleCase EOF ) + // InternalSolverLanguageParser.g:671:1: ruleCase EOF { - before(grammarAccess.getMultiplicativeExpressionRule()); + before(grammarAccess.getCaseRule()); pushFollow(FOLLOW_1); - ruleMultiplicativeExpression(); + ruleCase(); state._fsp--; - after(grammarAccess.getMultiplicativeExpressionRule()); + after(grammarAccess.getCaseRule()); match(input,EOF,FOLLOW_2); } @@ -1938,35 +1930,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleMultiplicativeExpression" + // $ANTLR end "entryRuleCase" - // $ANTLR start "ruleMultiplicativeExpression" - // InternalSolverLanguageParser.g:673:1: ruleMultiplicativeExpression : ( ( rule__MultiplicativeExpression__Group__0 ) ) ; - public final void ruleMultiplicativeExpression() throws RecognitionException { + // $ANTLR start "ruleCase" + // InternalSolverLanguageParser.g:678:1: ruleCase : ( ( rule__Case__Group__0 ) ) ; + public final void ruleCase() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:677:2: ( ( ( rule__MultiplicativeExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:678:2: ( ( rule__MultiplicativeExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:682:2: ( ( ( rule__Case__Group__0 ) ) ) + // InternalSolverLanguageParser.g:683:2: ( ( rule__Case__Group__0 ) ) { - // InternalSolverLanguageParser.g:678:2: ( ( rule__MultiplicativeExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:679:3: ( rule__MultiplicativeExpression__Group__0 ) + // InternalSolverLanguageParser.g:683:2: ( ( rule__Case__Group__0 ) ) + // InternalSolverLanguageParser.g:684:3: ( rule__Case__Group__0 ) { - before(grammarAccess.getMultiplicativeExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:680:3: ( rule__MultiplicativeExpression__Group__0 ) - // InternalSolverLanguageParser.g:680:4: rule__MultiplicativeExpression__Group__0 + before(grammarAccess.getCaseAccess().getGroup()); + // InternalSolverLanguageParser.g:685:3: ( rule__Case__Group__0 ) + // InternalSolverLanguageParser.g:685:4: rule__Case__Group__0 { pushFollow(FOLLOW_2); - rule__MultiplicativeExpression__Group__0(); + rule__Case__Group__0(); state._fsp--; } - after(grammarAccess.getMultiplicativeExpressionAccess().getGroup()); + after(grammarAccess.getCaseAccess().getGroup()); } @@ -1985,23 +1977,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleMultiplicativeExpression" + // $ANTLR end "ruleCase" - // $ANTLR start "entryRuleExponentialExpression" - // InternalSolverLanguageParser.g:689:1: entryRuleExponentialExpression : ruleExponentialExpression EOF ; - public final void entryRuleExponentialExpression() throws RecognitionException { + // $ANTLR start "entryRuleConjunctiveExpression" + // InternalSolverLanguageParser.g:694:1: entryRuleConjunctiveExpression : ruleConjunctiveExpression EOF ; + public final void entryRuleConjunctiveExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:690:1: ( ruleExponentialExpression EOF ) - // InternalSolverLanguageParser.g:691:1: ruleExponentialExpression EOF + // InternalSolverLanguageParser.g:695:1: ( ruleConjunctiveExpression EOF ) + // InternalSolverLanguageParser.g:696:1: ruleConjunctiveExpression EOF { - before(grammarAccess.getExponentialExpressionRule()); + before(grammarAccess.getConjunctiveExpressionRule()); pushFollow(FOLLOW_1); - ruleExponentialExpression(); + ruleConjunctiveExpression(); state._fsp--; - after(grammarAccess.getExponentialExpressionRule()); + after(grammarAccess.getConjunctiveExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -2015,35 +2007,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleExponentialExpression" + // $ANTLR end "entryRuleConjunctiveExpression" - // $ANTLR start "ruleExponentialExpression" - // InternalSolverLanguageParser.g:698:1: ruleExponentialExpression : ( ( rule__ExponentialExpression__Group__0 ) ) ; - public final void ruleExponentialExpression() throws RecognitionException { + // $ANTLR start "ruleConjunctiveExpression" + // InternalSolverLanguageParser.g:703:1: ruleConjunctiveExpression : ( ( rule__ConjunctiveExpression__Group__0 ) ) ; + public final void ruleConjunctiveExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:702:2: ( ( ( rule__ExponentialExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:703:2: ( ( rule__ExponentialExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:707:2: ( ( ( rule__ConjunctiveExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:708:2: ( ( rule__ConjunctiveExpression__Group__0 ) ) { - // InternalSolverLanguageParser.g:703:2: ( ( rule__ExponentialExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:704:3: ( rule__ExponentialExpression__Group__0 ) + // InternalSolverLanguageParser.g:708:2: ( ( rule__ConjunctiveExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:709:3: ( rule__ConjunctiveExpression__Group__0 ) { - before(grammarAccess.getExponentialExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:705:3: ( rule__ExponentialExpression__Group__0 ) - // InternalSolverLanguageParser.g:705:4: rule__ExponentialExpression__Group__0 + before(grammarAccess.getConjunctiveExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:710:3: ( rule__ConjunctiveExpression__Group__0 ) + // InternalSolverLanguageParser.g:710:4: rule__ConjunctiveExpression__Group__0 { pushFollow(FOLLOW_2); - rule__ExponentialExpression__Group__0(); + rule__ConjunctiveExpression__Group__0(); state._fsp--; } - after(grammarAccess.getExponentialExpressionAccess().getGroup()); + after(grammarAccess.getConjunctiveExpressionAccess().getGroup()); } @@ -2062,23 +2054,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleExponentialExpression" + // $ANTLR end "ruleConjunctiveExpression" - // $ANTLR start "entryRuleCastExpression" - // InternalSolverLanguageParser.g:714:1: entryRuleCastExpression : ruleCastExpression EOF ; - public final void entryRuleCastExpression() throws RecognitionException { + // $ANTLR start "entryRuleComparisonExpression" + // InternalSolverLanguageParser.g:719:1: entryRuleComparisonExpression : ruleComparisonExpression EOF ; + public final void entryRuleComparisonExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:715:1: ( ruleCastExpression EOF ) - // InternalSolverLanguageParser.g:716:1: ruleCastExpression EOF + // InternalSolverLanguageParser.g:720:1: ( ruleComparisonExpression EOF ) + // InternalSolverLanguageParser.g:721:1: ruleComparisonExpression EOF { - before(grammarAccess.getCastExpressionRule()); + before(grammarAccess.getComparisonExpressionRule()); pushFollow(FOLLOW_1); - ruleCastExpression(); + ruleComparisonExpression(); state._fsp--; - after(grammarAccess.getCastExpressionRule()); + after(grammarAccess.getComparisonExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -2092,35 +2084,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleCastExpression" + // $ANTLR end "entryRuleComparisonExpression" - // $ANTLR start "ruleCastExpression" - // InternalSolverLanguageParser.g:723:1: ruleCastExpression : ( ( rule__CastExpression__Group__0 ) ) ; - public final void ruleCastExpression() throws RecognitionException { + // $ANTLR start "ruleComparisonExpression" + // InternalSolverLanguageParser.g:728:1: ruleComparisonExpression : ( ( rule__ComparisonExpression__Group__0 ) ) ; + public final void ruleComparisonExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:727:2: ( ( ( rule__CastExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:728:2: ( ( rule__CastExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:732:2: ( ( ( rule__ComparisonExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:733:2: ( ( rule__ComparisonExpression__Group__0 ) ) { - // InternalSolverLanguageParser.g:728:2: ( ( rule__CastExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:729:3: ( rule__CastExpression__Group__0 ) + // InternalSolverLanguageParser.g:733:2: ( ( rule__ComparisonExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:734:3: ( rule__ComparisonExpression__Group__0 ) { - before(grammarAccess.getCastExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:730:3: ( rule__CastExpression__Group__0 ) - // InternalSolverLanguageParser.g:730:4: rule__CastExpression__Group__0 + before(grammarAccess.getComparisonExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:735:3: ( rule__ComparisonExpression__Group__0 ) + // InternalSolverLanguageParser.g:735:4: rule__ComparisonExpression__Group__0 { pushFollow(FOLLOW_2); - rule__CastExpression__Group__0(); + rule__ComparisonExpression__Group__0(); state._fsp--; } - after(grammarAccess.getCastExpressionAccess().getGroup()); + after(grammarAccess.getComparisonExpressionAccess().getGroup()); } @@ -2139,23 +2131,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleCastExpression" + // $ANTLR end "ruleComparisonExpression" - // $ANTLR start "entryRuleUnaryExpression" - // InternalSolverLanguageParser.g:739:1: entryRuleUnaryExpression : ruleUnaryExpression EOF ; - public final void entryRuleUnaryExpression() throws RecognitionException { + // $ANTLR start "entryRuleAdditiveExpression" + // InternalSolverLanguageParser.g:744:1: entryRuleAdditiveExpression : ruleAdditiveExpression EOF ; + public final void entryRuleAdditiveExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:740:1: ( ruleUnaryExpression EOF ) - // InternalSolverLanguageParser.g:741:1: ruleUnaryExpression EOF + // InternalSolverLanguageParser.g:745:1: ( ruleAdditiveExpression EOF ) + // InternalSolverLanguageParser.g:746:1: ruleAdditiveExpression EOF { - before(grammarAccess.getUnaryExpressionRule()); + before(grammarAccess.getAdditiveExpressionRule()); pushFollow(FOLLOW_1); - ruleUnaryExpression(); + ruleAdditiveExpression(); state._fsp--; - after(grammarAccess.getUnaryExpressionRule()); + after(grammarAccess.getAdditiveExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -2169,35 +2161,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleUnaryExpression" + // $ANTLR end "entryRuleAdditiveExpression" - // $ANTLR start "ruleUnaryExpression" - // InternalSolverLanguageParser.g:748:1: ruleUnaryExpression : ( ( rule__UnaryExpression__Alternatives ) ) ; - public final void ruleUnaryExpression() throws RecognitionException { + // $ANTLR start "ruleAdditiveExpression" + // InternalSolverLanguageParser.g:753:1: ruleAdditiveExpression : ( ( rule__AdditiveExpression__Group__0 ) ) ; + public final void ruleAdditiveExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:752:2: ( ( ( rule__UnaryExpression__Alternatives ) ) ) - // InternalSolverLanguageParser.g:753:2: ( ( rule__UnaryExpression__Alternatives ) ) + // InternalSolverLanguageParser.g:757:2: ( ( ( rule__AdditiveExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:758:2: ( ( rule__AdditiveExpression__Group__0 ) ) { - // InternalSolverLanguageParser.g:753:2: ( ( rule__UnaryExpression__Alternatives ) ) - // InternalSolverLanguageParser.g:754:3: ( rule__UnaryExpression__Alternatives ) + // InternalSolverLanguageParser.g:758:2: ( ( rule__AdditiveExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:759:3: ( rule__AdditiveExpression__Group__0 ) { - before(grammarAccess.getUnaryExpressionAccess().getAlternatives()); - // InternalSolverLanguageParser.g:755:3: ( rule__UnaryExpression__Alternatives ) - // InternalSolverLanguageParser.g:755:4: rule__UnaryExpression__Alternatives + before(grammarAccess.getAdditiveExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:760:3: ( rule__AdditiveExpression__Group__0 ) + // InternalSolverLanguageParser.g:760:4: rule__AdditiveExpression__Group__0 { pushFollow(FOLLOW_2); - rule__UnaryExpression__Alternatives(); + rule__AdditiveExpression__Group__0(); state._fsp--; } - after(grammarAccess.getUnaryExpressionAccess().getAlternatives()); + after(grammarAccess.getAdditiveExpressionAccess().getGroup()); } @@ -2216,23 +2208,177 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleUnaryExpression" + // $ANTLR end "ruleAdditiveExpression" + + + // $ANTLR start "entryRuleMultiplicativeExpression" + // InternalSolverLanguageParser.g:769:1: entryRuleMultiplicativeExpression : ruleMultiplicativeExpression EOF ; + public final void entryRuleMultiplicativeExpression() throws RecognitionException { + try { + // InternalSolverLanguageParser.g:770:1: ( ruleMultiplicativeExpression EOF ) + // InternalSolverLanguageParser.g:771:1: ruleMultiplicativeExpression EOF + { + before(grammarAccess.getMultiplicativeExpressionRule()); + pushFollow(FOLLOW_1); + ruleMultiplicativeExpression(); + + state._fsp--; + + after(grammarAccess.getMultiplicativeExpressionRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleMultiplicativeExpression" + + + // $ANTLR start "ruleMultiplicativeExpression" + // InternalSolverLanguageParser.g:778:1: ruleMultiplicativeExpression : ( ( rule__MultiplicativeExpression__Group__0 ) ) ; + public final void ruleMultiplicativeExpression() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:782:2: ( ( ( rule__MultiplicativeExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:783:2: ( ( rule__MultiplicativeExpression__Group__0 ) ) + { + // InternalSolverLanguageParser.g:783:2: ( ( rule__MultiplicativeExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:784:3: ( rule__MultiplicativeExpression__Group__0 ) + { + before(grammarAccess.getMultiplicativeExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:785:3: ( rule__MultiplicativeExpression__Group__0 ) + // InternalSolverLanguageParser.g:785:4: rule__MultiplicativeExpression__Group__0 + { + pushFollow(FOLLOW_2); + rule__MultiplicativeExpression__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getMultiplicativeExpressionAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleMultiplicativeExpression" + + + // $ANTLR start "entryRuleExponentialExpression" + // InternalSolverLanguageParser.g:794:1: entryRuleExponentialExpression : ruleExponentialExpression EOF ; + public final void entryRuleExponentialExpression() throws RecognitionException { + try { + // InternalSolverLanguageParser.g:795:1: ( ruleExponentialExpression EOF ) + // InternalSolverLanguageParser.g:796:1: ruleExponentialExpression EOF + { + before(grammarAccess.getExponentialExpressionRule()); + pushFollow(FOLLOW_1); + ruleExponentialExpression(); + + state._fsp--; + + after(grammarAccess.getExponentialExpressionRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleExponentialExpression" + + + // $ANTLR start "ruleExponentialExpression" + // InternalSolverLanguageParser.g:803:1: ruleExponentialExpression : ( ( rule__ExponentialExpression__Group__0 ) ) ; + public final void ruleExponentialExpression() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:807:2: ( ( ( rule__ExponentialExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:808:2: ( ( rule__ExponentialExpression__Group__0 ) ) + { + // InternalSolverLanguageParser.g:808:2: ( ( rule__ExponentialExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:809:3: ( rule__ExponentialExpression__Group__0 ) + { + before(grammarAccess.getExponentialExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:810:3: ( rule__ExponentialExpression__Group__0 ) + // InternalSolverLanguageParser.g:810:4: rule__ExponentialExpression__Group__0 + { + pushFollow(FOLLOW_2); + rule__ExponentialExpression__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getExponentialExpressionAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleExponentialExpression" - // $ANTLR start "entryRuleAggregationExpression" - // InternalSolverLanguageParser.g:764:1: entryRuleAggregationExpression : ruleAggregationExpression EOF ; - public final void entryRuleAggregationExpression() throws RecognitionException { + // $ANTLR start "entryRuleCastExpression" + // InternalSolverLanguageParser.g:819:1: entryRuleCastExpression : ruleCastExpression EOF ; + public final void entryRuleCastExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:765:1: ( ruleAggregationExpression EOF ) - // InternalSolverLanguageParser.g:766:1: ruleAggregationExpression EOF + // InternalSolverLanguageParser.g:820:1: ( ruleCastExpression EOF ) + // InternalSolverLanguageParser.g:821:1: ruleCastExpression EOF { - before(grammarAccess.getAggregationExpressionRule()); + before(grammarAccess.getCastExpressionRule()); pushFollow(FOLLOW_1); - ruleAggregationExpression(); + ruleCastExpression(); state._fsp--; - after(grammarAccess.getAggregationExpressionRule()); + after(grammarAccess.getCastExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -2246,35 +2392,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleAggregationExpression" + // $ANTLR end "entryRuleCastExpression" - // $ANTLR start "ruleAggregationExpression" - // InternalSolverLanguageParser.g:773:1: ruleAggregationExpression : ( ( rule__AggregationExpression__Alternatives ) ) ; - public final void ruleAggregationExpression() throws RecognitionException { + // $ANTLR start "ruleCastExpression" + // InternalSolverLanguageParser.g:828:1: ruleCastExpression : ( ( rule__CastExpression__Group__0 ) ) ; + public final void ruleCastExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:777:2: ( ( ( rule__AggregationExpression__Alternatives ) ) ) - // InternalSolverLanguageParser.g:778:2: ( ( rule__AggregationExpression__Alternatives ) ) + // InternalSolverLanguageParser.g:832:2: ( ( ( rule__CastExpression__Group__0 ) ) ) + // InternalSolverLanguageParser.g:833:2: ( ( rule__CastExpression__Group__0 ) ) { - // InternalSolverLanguageParser.g:778:2: ( ( rule__AggregationExpression__Alternatives ) ) - // InternalSolverLanguageParser.g:779:3: ( rule__AggregationExpression__Alternatives ) + // InternalSolverLanguageParser.g:833:2: ( ( rule__CastExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:834:3: ( rule__CastExpression__Group__0 ) { - before(grammarAccess.getAggregationExpressionAccess().getAlternatives()); - // InternalSolverLanguageParser.g:780:3: ( rule__AggregationExpression__Alternatives ) - // InternalSolverLanguageParser.g:780:4: rule__AggregationExpression__Alternatives + before(grammarAccess.getCastExpressionAccess().getGroup()); + // InternalSolverLanguageParser.g:835:3: ( rule__CastExpression__Group__0 ) + // InternalSolverLanguageParser.g:835:4: rule__CastExpression__Group__0 { pushFollow(FOLLOW_2); - rule__AggregationExpression__Alternatives(); + rule__CastExpression__Group__0(); state._fsp--; } - after(grammarAccess.getAggregationExpressionAccess().getAlternatives()); + after(grammarAccess.getCastExpressionAccess().getGroup()); } @@ -2293,23 +2439,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleAggregationExpression" + // $ANTLR end "ruleCastExpression" - // $ANTLR start "entryRuleLocalVariables" - // InternalSolverLanguageParser.g:789:1: entryRuleLocalVariables : ruleLocalVariables EOF ; - public final void entryRuleLocalVariables() throws RecognitionException { + // $ANTLR start "entryRuleUnaryExpression" + // InternalSolverLanguageParser.g:844:1: entryRuleUnaryExpression : ruleUnaryExpression EOF ; + public final void entryRuleUnaryExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:790:1: ( ruleLocalVariables EOF ) - // InternalSolverLanguageParser.g:791:1: ruleLocalVariables EOF + // InternalSolverLanguageParser.g:845:1: ( ruleUnaryExpression EOF ) + // InternalSolverLanguageParser.g:846:1: ruleUnaryExpression EOF { - before(grammarAccess.getLocalVariablesRule()); + before(grammarAccess.getUnaryExpressionRule()); pushFollow(FOLLOW_1); - ruleLocalVariables(); + ruleUnaryExpression(); state._fsp--; - after(grammarAccess.getLocalVariablesRule()); + after(grammarAccess.getUnaryExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -2323,35 +2469,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleLocalVariables" + // $ANTLR end "entryRuleUnaryExpression" - // $ANTLR start "ruleLocalVariables" - // InternalSolverLanguageParser.g:798:1: ruleLocalVariables : ( ( rule__LocalVariables__Group__0 ) ) ; - public final void ruleLocalVariables() throws RecognitionException { + // $ANTLR start "ruleUnaryExpression" + // InternalSolverLanguageParser.g:853:1: ruleUnaryExpression : ( ( rule__UnaryExpression__Alternatives ) ) ; + public final void ruleUnaryExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:802:2: ( ( ( rule__LocalVariables__Group__0 ) ) ) - // InternalSolverLanguageParser.g:803:2: ( ( rule__LocalVariables__Group__0 ) ) + // InternalSolverLanguageParser.g:857:2: ( ( ( rule__UnaryExpression__Alternatives ) ) ) + // InternalSolverLanguageParser.g:858:2: ( ( rule__UnaryExpression__Alternatives ) ) { - // InternalSolverLanguageParser.g:803:2: ( ( rule__LocalVariables__Group__0 ) ) - // InternalSolverLanguageParser.g:804:3: ( rule__LocalVariables__Group__0 ) + // InternalSolverLanguageParser.g:858:2: ( ( rule__UnaryExpression__Alternatives ) ) + // InternalSolverLanguageParser.g:859:3: ( rule__UnaryExpression__Alternatives ) { - before(grammarAccess.getLocalVariablesAccess().getGroup()); - // InternalSolverLanguageParser.g:805:3: ( rule__LocalVariables__Group__0 ) - // InternalSolverLanguageParser.g:805:4: rule__LocalVariables__Group__0 + before(grammarAccess.getUnaryExpressionAccess().getAlternatives()); + // InternalSolverLanguageParser.g:860:3: ( rule__UnaryExpression__Alternatives ) + // InternalSolverLanguageParser.g:860:4: rule__UnaryExpression__Alternatives { pushFollow(FOLLOW_2); - rule__LocalVariables__Group__0(); + rule__UnaryExpression__Alternatives(); state._fsp--; } - after(grammarAccess.getLocalVariablesAccess().getGroup()); + after(grammarAccess.getUnaryExpressionAccess().getAlternatives()); } @@ -2370,23 +2516,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleLocalVariables" + // $ANTLR end "ruleUnaryExpression" - // $ANTLR start "entryRuleQuantifiedExpression" - // InternalSolverLanguageParser.g:814:1: entryRuleQuantifiedExpression : ruleQuantifiedExpression EOF ; - public final void entryRuleQuantifiedExpression() throws RecognitionException { + // $ANTLR start "entryRuleBracedAggregateExpression" + // InternalSolverLanguageParser.g:869:1: entryRuleBracedAggregateExpression : ruleBracedAggregateExpression EOF ; + public final void entryRuleBracedAggregateExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:815:1: ( ruleQuantifiedExpression EOF ) - // InternalSolverLanguageParser.g:816:1: ruleQuantifiedExpression EOF + // InternalSolverLanguageParser.g:870:1: ( ruleBracedAggregateExpression EOF ) + // InternalSolverLanguageParser.g:871:1: ruleBracedAggregateExpression EOF { - before(grammarAccess.getQuantifiedExpressionRule()); + before(grammarAccess.getBracedAggregateExpressionRule()); pushFollow(FOLLOW_1); - ruleQuantifiedExpression(); + ruleBracedAggregateExpression(); state._fsp--; - after(grammarAccess.getQuantifiedExpressionRule()); + after(grammarAccess.getBracedAggregateExpressionRule()); match(input,EOF,FOLLOW_2); } @@ -2400,35 +2546,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleQuantifiedExpression" + // $ANTLR end "entryRuleBracedAggregateExpression" - // $ANTLR start "ruleQuantifiedExpression" - // InternalSolverLanguageParser.g:823:1: ruleQuantifiedExpression : ( ( rule__QuantifiedExpression__Group__0 ) ) ; - public final void ruleQuantifiedExpression() throws RecognitionException { + // $ANTLR start "ruleBracedAggregateExpression" + // InternalSolverLanguageParser.g:878:1: ruleBracedAggregateExpression : ( ( rule__BracedAggregateExpression__Alternatives ) ) ; + public final void ruleBracedAggregateExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:827:2: ( ( ( rule__QuantifiedExpression__Group__0 ) ) ) - // InternalSolverLanguageParser.g:828:2: ( ( rule__QuantifiedExpression__Group__0 ) ) + // InternalSolverLanguageParser.g:882:2: ( ( ( rule__BracedAggregateExpression__Alternatives ) ) ) + // InternalSolverLanguageParser.g:883:2: ( ( rule__BracedAggregateExpression__Alternatives ) ) { - // InternalSolverLanguageParser.g:828:2: ( ( rule__QuantifiedExpression__Group__0 ) ) - // InternalSolverLanguageParser.g:829:3: ( rule__QuantifiedExpression__Group__0 ) + // InternalSolverLanguageParser.g:883:2: ( ( rule__BracedAggregateExpression__Alternatives ) ) + // InternalSolverLanguageParser.g:884:3: ( rule__BracedAggregateExpression__Alternatives ) { - before(grammarAccess.getQuantifiedExpressionAccess().getGroup()); - // InternalSolverLanguageParser.g:830:3: ( rule__QuantifiedExpression__Group__0 ) - // InternalSolverLanguageParser.g:830:4: rule__QuantifiedExpression__Group__0 + before(grammarAccess.getBracedAggregateExpressionAccess().getAlternatives()); + // InternalSolverLanguageParser.g:885:3: ( rule__BracedAggregateExpression__Alternatives ) + // InternalSolverLanguageParser.g:885:4: rule__BracedAggregateExpression__Alternatives { pushFollow(FOLLOW_2); - rule__QuantifiedExpression__Group__0(); + rule__BracedAggregateExpression__Alternatives(); state._fsp--; } - after(grammarAccess.getQuantifiedExpressionAccess().getGroup()); + after(grammarAccess.getBracedAggregateExpressionAccess().getAlternatives()); } @@ -2447,15 +2593,15 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleQuantifiedExpression" + // $ANTLR end "ruleBracedAggregateExpression" // $ANTLR start "entryRuleAggregation" - // InternalSolverLanguageParser.g:839:1: entryRuleAggregation : ruleAggregation EOF ; + // InternalSolverLanguageParser.g:894:1: entryRuleAggregation : ruleAggregation EOF ; public final void entryRuleAggregation() throws RecognitionException { try { - // InternalSolverLanguageParser.g:840:1: ( ruleAggregation EOF ) - // InternalSolverLanguageParser.g:841:1: ruleAggregation EOF + // InternalSolverLanguageParser.g:895:1: ( ruleAggregation EOF ) + // InternalSolverLanguageParser.g:896:1: ruleAggregation EOF { before(grammarAccess.getAggregationRule()); pushFollow(FOLLOW_1); @@ -2481,21 +2627,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleAggregation" - // InternalSolverLanguageParser.g:848:1: ruleAggregation : ( ( rule__Aggregation__Group__0 ) ) ; + // InternalSolverLanguageParser.g:903:1: ruleAggregation : ( ( rule__Aggregation__Group__0 ) ) ; public final void ruleAggregation() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:852:2: ( ( ( rule__Aggregation__Group__0 ) ) ) - // InternalSolverLanguageParser.g:853:2: ( ( rule__Aggregation__Group__0 ) ) + // InternalSolverLanguageParser.g:907:2: ( ( ( rule__Aggregation__Group__0 ) ) ) + // InternalSolverLanguageParser.g:908:2: ( ( rule__Aggregation__Group__0 ) ) { - // InternalSolverLanguageParser.g:853:2: ( ( rule__Aggregation__Group__0 ) ) - // InternalSolverLanguageParser.g:854:3: ( rule__Aggregation__Group__0 ) + // InternalSolverLanguageParser.g:908:2: ( ( rule__Aggregation__Group__0 ) ) + // InternalSolverLanguageParser.g:909:3: ( rule__Aggregation__Group__0 ) { before(grammarAccess.getAggregationAccess().getGroup()); - // InternalSolverLanguageParser.g:855:3: ( rule__Aggregation__Group__0 ) - // InternalSolverLanguageParser.g:855:4: rule__Aggregation__Group__0 + // InternalSolverLanguageParser.g:910:3: ( rule__Aggregation__Group__0 ) + // InternalSolverLanguageParser.g:910:4: rule__Aggregation__Group__0 { pushFollow(FOLLOW_2); rule__Aggregation__Group__0(); @@ -2527,12 +2673,89 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleAggregation" + // $ANTLR start "entryRuleCount" + // InternalSolverLanguageParser.g:919:1: entryRuleCount : ruleCount EOF ; + public final void entryRuleCount() throws RecognitionException { + try { + // InternalSolverLanguageParser.g:920:1: ( ruleCount EOF ) + // InternalSolverLanguageParser.g:921:1: ruleCount EOF + { + before(grammarAccess.getCountRule()); + pushFollow(FOLLOW_1); + ruleCount(); + + state._fsp--; + + after(grammarAccess.getCountRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleCount" + + + // $ANTLR start "ruleCount" + // InternalSolverLanguageParser.g:928:1: ruleCount : ( ( rule__Count__Group__0 ) ) ; + public final void ruleCount() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:932:2: ( ( ( rule__Count__Group__0 ) ) ) + // InternalSolverLanguageParser.g:933:2: ( ( rule__Count__Group__0 ) ) + { + // InternalSolverLanguageParser.g:933:2: ( ( rule__Count__Group__0 ) ) + // InternalSolverLanguageParser.g:934:3: ( rule__Count__Group__0 ) + { + before(grammarAccess.getCountAccess().getGroup()); + // InternalSolverLanguageParser.g:935:3: ( rule__Count__Group__0 ) + // InternalSolverLanguageParser.g:935:4: rule__Count__Group__0 + { + pushFollow(FOLLOW_2); + rule__Count__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getCountAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleCount" + + // $ANTLR start "entryRuleAtomicExpression" - // InternalSolverLanguageParser.g:864:1: entryRuleAtomicExpression : ruleAtomicExpression EOF ; + // InternalSolverLanguageParser.g:944:1: entryRuleAtomicExpression : ruleAtomicExpression EOF ; public final void entryRuleAtomicExpression() throws RecognitionException { try { - // InternalSolverLanguageParser.g:865:1: ( ruleAtomicExpression EOF ) - // InternalSolverLanguageParser.g:866:1: ruleAtomicExpression EOF + // InternalSolverLanguageParser.g:945:1: ( ruleAtomicExpression EOF ) + // InternalSolverLanguageParser.g:946:1: ruleAtomicExpression EOF { before(grammarAccess.getAtomicExpressionRule()); pushFollow(FOLLOW_1); @@ -2558,21 +2781,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleAtomicExpression" - // InternalSolverLanguageParser.g:873:1: ruleAtomicExpression : ( ( rule__AtomicExpression__Alternatives ) ) ; + // InternalSolverLanguageParser.g:953:1: ruleAtomicExpression : ( ( rule__AtomicExpression__Alternatives ) ) ; public final void ruleAtomicExpression() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:877:2: ( ( ( rule__AtomicExpression__Alternatives ) ) ) - // InternalSolverLanguageParser.g:878:2: ( ( rule__AtomicExpression__Alternatives ) ) + // InternalSolverLanguageParser.g:957:2: ( ( ( rule__AtomicExpression__Alternatives ) ) ) + // InternalSolverLanguageParser.g:958:2: ( ( rule__AtomicExpression__Alternatives ) ) { - // InternalSolverLanguageParser.g:878:2: ( ( rule__AtomicExpression__Alternatives ) ) - // InternalSolverLanguageParser.g:879:3: ( rule__AtomicExpression__Alternatives ) + // InternalSolverLanguageParser.g:958:2: ( ( rule__AtomicExpression__Alternatives ) ) + // InternalSolverLanguageParser.g:959:3: ( rule__AtomicExpression__Alternatives ) { before(grammarAccess.getAtomicExpressionAccess().getAlternatives()); - // InternalSolverLanguageParser.g:880:3: ( rule__AtomicExpression__Alternatives ) - // InternalSolverLanguageParser.g:880:4: rule__AtomicExpression__Alternatives + // InternalSolverLanguageParser.g:960:3: ( rule__AtomicExpression__Alternatives ) + // InternalSolverLanguageParser.g:960:4: rule__AtomicExpression__Alternatives { pushFollow(FOLLOW_2); rule__AtomicExpression__Alternatives(); @@ -2605,11 +2828,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleCall" - // InternalSolverLanguageParser.g:889:1: entryRuleCall : ruleCall EOF ; + // InternalSolverLanguageParser.g:969:1: entryRuleCall : ruleCall EOF ; public final void entryRuleCall() throws RecognitionException { try { - // InternalSolverLanguageParser.g:890:1: ( ruleCall EOF ) - // InternalSolverLanguageParser.g:891:1: ruleCall EOF + // InternalSolverLanguageParser.g:970:1: ( ruleCall EOF ) + // InternalSolverLanguageParser.g:971:1: ruleCall EOF { before(grammarAccess.getCallRule()); pushFollow(FOLLOW_1); @@ -2635,21 +2858,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleCall" - // InternalSolverLanguageParser.g:898:1: ruleCall : ( ( rule__Call__Group__0 ) ) ; + // InternalSolverLanguageParser.g:978:1: ruleCall : ( ( rule__Call__Group__0 ) ) ; public final void ruleCall() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:902:2: ( ( ( rule__Call__Group__0 ) ) ) - // InternalSolverLanguageParser.g:903:2: ( ( rule__Call__Group__0 ) ) + // InternalSolverLanguageParser.g:982:2: ( ( ( rule__Call__Group__0 ) ) ) + // InternalSolverLanguageParser.g:983:2: ( ( rule__Call__Group__0 ) ) { - // InternalSolverLanguageParser.g:903:2: ( ( rule__Call__Group__0 ) ) - // InternalSolverLanguageParser.g:904:3: ( rule__Call__Group__0 ) + // InternalSolverLanguageParser.g:983:2: ( ( rule__Call__Group__0 ) ) + // InternalSolverLanguageParser.g:984:3: ( rule__Call__Group__0 ) { before(grammarAccess.getCallAccess().getGroup()); - // InternalSolverLanguageParser.g:905:3: ( rule__Call__Group__0 ) - // InternalSolverLanguageParser.g:905:4: rule__Call__Group__0 + // InternalSolverLanguageParser.g:985:3: ( rule__Call__Group__0 ) + // InternalSolverLanguageParser.g:985:4: rule__Call__Group__0 { pushFollow(FOLLOW_2); rule__Call__Group__0(); @@ -2682,11 +2905,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleArgumentList" - // InternalSolverLanguageParser.g:914:1: entryRuleArgumentList : ruleArgumentList EOF ; + // InternalSolverLanguageParser.g:994:1: entryRuleArgumentList : ruleArgumentList EOF ; public final void entryRuleArgumentList() throws RecognitionException { try { - // InternalSolverLanguageParser.g:915:1: ( ruleArgumentList EOF ) - // InternalSolverLanguageParser.g:916:1: ruleArgumentList EOF + // InternalSolverLanguageParser.g:995:1: ( ruleArgumentList EOF ) + // InternalSolverLanguageParser.g:996:1: ruleArgumentList EOF { before(grammarAccess.getArgumentListRule()); pushFollow(FOLLOW_1); @@ -2712,21 +2935,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleArgumentList" - // InternalSolverLanguageParser.g:923:1: ruleArgumentList : ( ( rule__ArgumentList__Group__0 ) ) ; + // InternalSolverLanguageParser.g:1003:1: ruleArgumentList : ( ( rule__ArgumentList__Group__0 ) ) ; public final void ruleArgumentList() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:927:2: ( ( ( rule__ArgumentList__Group__0 ) ) ) - // InternalSolverLanguageParser.g:928:2: ( ( rule__ArgumentList__Group__0 ) ) + // InternalSolverLanguageParser.g:1007:2: ( ( ( rule__ArgumentList__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1008:2: ( ( rule__ArgumentList__Group__0 ) ) { - // InternalSolverLanguageParser.g:928:2: ( ( rule__ArgumentList__Group__0 ) ) - // InternalSolverLanguageParser.g:929:3: ( rule__ArgumentList__Group__0 ) + // InternalSolverLanguageParser.g:1008:2: ( ( rule__ArgumentList__Group__0 ) ) + // InternalSolverLanguageParser.g:1009:3: ( rule__ArgumentList__Group__0 ) { before(grammarAccess.getArgumentListAccess().getGroup()); - // InternalSolverLanguageParser.g:930:3: ( rule__ArgumentList__Group__0 ) - // InternalSolverLanguageParser.g:930:4: rule__ArgumentList__Group__0 + // InternalSolverLanguageParser.g:1010:3: ( rule__ArgumentList__Group__0 ) + // InternalSolverLanguageParser.g:1010:4: rule__ArgumentList__Group__0 { pushFollow(FOLLOW_2); rule__ArgumentList__Group__0(); @@ -2759,11 +2982,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleArgument" - // InternalSolverLanguageParser.g:939:1: entryRuleArgument : ruleArgument EOF ; + // InternalSolverLanguageParser.g:1019:1: entryRuleArgument : ruleArgument EOF ; public final void entryRuleArgument() throws RecognitionException { try { - // InternalSolverLanguageParser.g:940:1: ( ruleArgument EOF ) - // InternalSolverLanguageParser.g:941:1: ruleArgument EOF + // InternalSolverLanguageParser.g:1020:1: ( ruleArgument EOF ) + // InternalSolverLanguageParser.g:1021:1: ruleArgument EOF { before(grammarAccess.getArgumentRule()); pushFollow(FOLLOW_1); @@ -2789,21 +3012,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleArgument" - // InternalSolverLanguageParser.g:948:1: ruleArgument : ( ( rule__Argument__Alternatives ) ) ; + // InternalSolverLanguageParser.g:1028:1: ruleArgument : ( ( rule__Argument__Alternatives ) ) ; public final void ruleArgument() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:952:2: ( ( ( rule__Argument__Alternatives ) ) ) - // InternalSolverLanguageParser.g:953:2: ( ( rule__Argument__Alternatives ) ) + // InternalSolverLanguageParser.g:1032:2: ( ( ( rule__Argument__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1033:2: ( ( rule__Argument__Alternatives ) ) { - // InternalSolverLanguageParser.g:953:2: ( ( rule__Argument__Alternatives ) ) - // InternalSolverLanguageParser.g:954:3: ( rule__Argument__Alternatives ) + // InternalSolverLanguageParser.g:1033:2: ( ( rule__Argument__Alternatives ) ) + // InternalSolverLanguageParser.g:1034:3: ( rule__Argument__Alternatives ) { before(grammarAccess.getArgumentAccess().getAlternatives()); - // InternalSolverLanguageParser.g:955:3: ( rule__Argument__Alternatives ) - // InternalSolverLanguageParser.g:955:4: rule__Argument__Alternatives + // InternalSolverLanguageParser.g:1035:3: ( rule__Argument__Alternatives ) + // InternalSolverLanguageParser.g:1035:4: rule__Argument__Alternatives { pushFollow(FOLLOW_2); rule__Argument__Alternatives(); @@ -2836,11 +3059,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleExpressionArgument" - // InternalSolverLanguageParser.g:964:1: entryRuleExpressionArgument : ruleExpressionArgument EOF ; + // InternalSolverLanguageParser.g:1044:1: entryRuleExpressionArgument : ruleExpressionArgument EOF ; public final void entryRuleExpressionArgument() throws RecognitionException { try { - // InternalSolverLanguageParser.g:965:1: ( ruleExpressionArgument EOF ) - // InternalSolverLanguageParser.g:966:1: ruleExpressionArgument EOF + // InternalSolverLanguageParser.g:1045:1: ( ruleExpressionArgument EOF ) + // InternalSolverLanguageParser.g:1046:1: ruleExpressionArgument EOF { before(grammarAccess.getExpressionArgumentRule()); pushFollow(FOLLOW_1); @@ -2866,31 +3089,31 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleExpressionArgument" - // InternalSolverLanguageParser.g:973:1: ruleExpressionArgument : ( ( rule__ExpressionArgument__BodyAssignment ) ) ; + // InternalSolverLanguageParser.g:1053:1: ruleExpressionArgument : ( ( rule__ExpressionArgument__ExpressionAssignment ) ) ; public final void ruleExpressionArgument() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:977:2: ( ( ( rule__ExpressionArgument__BodyAssignment ) ) ) - // InternalSolverLanguageParser.g:978:2: ( ( rule__ExpressionArgument__BodyAssignment ) ) + // InternalSolverLanguageParser.g:1057:2: ( ( ( rule__ExpressionArgument__ExpressionAssignment ) ) ) + // InternalSolverLanguageParser.g:1058:2: ( ( rule__ExpressionArgument__ExpressionAssignment ) ) { - // InternalSolverLanguageParser.g:978:2: ( ( rule__ExpressionArgument__BodyAssignment ) ) - // InternalSolverLanguageParser.g:979:3: ( rule__ExpressionArgument__BodyAssignment ) + // InternalSolverLanguageParser.g:1058:2: ( ( rule__ExpressionArgument__ExpressionAssignment ) ) + // InternalSolverLanguageParser.g:1059:3: ( rule__ExpressionArgument__ExpressionAssignment ) { - before(grammarAccess.getExpressionArgumentAccess().getBodyAssignment()); - // InternalSolverLanguageParser.g:980:3: ( rule__ExpressionArgument__BodyAssignment ) - // InternalSolverLanguageParser.g:980:4: rule__ExpressionArgument__BodyAssignment + before(grammarAccess.getExpressionArgumentAccess().getExpressionAssignment()); + // InternalSolverLanguageParser.g:1060:3: ( rule__ExpressionArgument__ExpressionAssignment ) + // InternalSolverLanguageParser.g:1060:4: rule__ExpressionArgument__ExpressionAssignment { pushFollow(FOLLOW_2); - rule__ExpressionArgument__BodyAssignment(); + rule__ExpressionArgument__ExpressionAssignment(); state._fsp--; } - after(grammarAccess.getExpressionArgumentAccess().getBodyAssignment()); + after(grammarAccess.getExpressionArgumentAccess().getExpressionAssignment()); } @@ -2913,11 +3136,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleStarArgument" - // InternalSolverLanguageParser.g:989:1: entryRuleStarArgument : ruleStarArgument EOF ; + // InternalSolverLanguageParser.g:1069:1: entryRuleStarArgument : ruleStarArgument EOF ; public final void entryRuleStarArgument() throws RecognitionException { try { - // InternalSolverLanguageParser.g:990:1: ( ruleStarArgument EOF ) - // InternalSolverLanguageParser.g:991:1: ruleStarArgument EOF + // InternalSolverLanguageParser.g:1070:1: ( ruleStarArgument EOF ) + // InternalSolverLanguageParser.g:1071:1: ruleStarArgument EOF { before(grammarAccess.getStarArgumentRule()); pushFollow(FOLLOW_1); @@ -2943,21 +3166,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleStarArgument" - // InternalSolverLanguageParser.g:998:1: ruleStarArgument : ( ( rule__StarArgument__Group__0 ) ) ; + // InternalSolverLanguageParser.g:1078:1: ruleStarArgument : ( ( rule__StarArgument__Group__0 ) ) ; public final void ruleStarArgument() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1002:2: ( ( ( rule__StarArgument__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1003:2: ( ( rule__StarArgument__Group__0 ) ) + // InternalSolverLanguageParser.g:1082:2: ( ( ( rule__StarArgument__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1083:2: ( ( rule__StarArgument__Group__0 ) ) { - // InternalSolverLanguageParser.g:1003:2: ( ( rule__StarArgument__Group__0 ) ) - // InternalSolverLanguageParser.g:1004:3: ( rule__StarArgument__Group__0 ) + // InternalSolverLanguageParser.g:1083:2: ( ( rule__StarArgument__Group__0 ) ) + // InternalSolverLanguageParser.g:1084:3: ( rule__StarArgument__Group__0 ) { before(grammarAccess.getStarArgumentAccess().getGroup()); - // InternalSolverLanguageParser.g:1005:3: ( rule__StarArgument__Group__0 ) - // InternalSolverLanguageParser.g:1005:4: rule__StarArgument__Group__0 + // InternalSolverLanguageParser.g:1085:3: ( rule__StarArgument__Group__0 ) + // InternalSolverLanguageParser.g:1085:4: rule__StarArgument__Group__0 { pushFollow(FOLLOW_2); rule__StarArgument__Group__0(); @@ -2989,20 +3212,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleStarArgument" - // $ANTLR start "entryRuleTypedArgument" - // InternalSolverLanguageParser.g:1014:1: entryRuleTypedArgument : ruleTypedArgument EOF ; - public final void entryRuleTypedArgument() throws RecognitionException { + // $ANTLR start "entryRuleTypedVariableArgument" + // InternalSolverLanguageParser.g:1094:1: entryRuleTypedVariableArgument : ruleTypedVariableArgument EOF ; + public final void entryRuleTypedVariableArgument() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1015:1: ( ruleTypedArgument EOF ) - // InternalSolverLanguageParser.g:1016:1: ruleTypedArgument EOF + // InternalSolverLanguageParser.g:1095:1: ( ruleTypedVariableArgument EOF ) + // InternalSolverLanguageParser.g:1096:1: ruleTypedVariableArgument EOF { - before(grammarAccess.getTypedArgumentRule()); + before(grammarAccess.getTypedVariableArgumentRule()); pushFollow(FOLLOW_1); - ruleTypedArgument(); + ruleTypedVariableArgument(); state._fsp--; - after(grammarAccess.getTypedArgumentRule()); + after(grammarAccess.getTypedVariableArgumentRule()); match(input,EOF,FOLLOW_2); } @@ -3016,35 +3239,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleTypedArgument" + // $ANTLR end "entryRuleTypedVariableArgument" - // $ANTLR start "ruleTypedArgument" - // InternalSolverLanguageParser.g:1023:1: ruleTypedArgument : ( ( rule__TypedArgument__Group__0 ) ) ; - public final void ruleTypedArgument() throws RecognitionException { + // $ANTLR start "ruleTypedVariableArgument" + // InternalSolverLanguageParser.g:1103:1: ruleTypedVariableArgument : ( ( rule__TypedVariableArgument__Group__0 ) ) ; + public final void ruleTypedVariableArgument() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1027:2: ( ( ( rule__TypedArgument__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1028:2: ( ( rule__TypedArgument__Group__0 ) ) + // InternalSolverLanguageParser.g:1107:2: ( ( ( rule__TypedVariableArgument__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1108:2: ( ( rule__TypedVariableArgument__Group__0 ) ) { - // InternalSolverLanguageParser.g:1028:2: ( ( rule__TypedArgument__Group__0 ) ) - // InternalSolverLanguageParser.g:1029:3: ( rule__TypedArgument__Group__0 ) + // InternalSolverLanguageParser.g:1108:2: ( ( rule__TypedVariableArgument__Group__0 ) ) + // InternalSolverLanguageParser.g:1109:3: ( rule__TypedVariableArgument__Group__0 ) { - before(grammarAccess.getTypedArgumentAccess().getGroup()); - // InternalSolverLanguageParser.g:1030:3: ( rule__TypedArgument__Group__0 ) - // InternalSolverLanguageParser.g:1030:4: rule__TypedArgument__Group__0 + before(grammarAccess.getTypedVariableArgumentAccess().getGroup()); + // InternalSolverLanguageParser.g:1110:3: ( rule__TypedVariableArgument__Group__0 ) + // InternalSolverLanguageParser.g:1110:4: rule__TypedVariableArgument__Group__0 { pushFollow(FOLLOW_2); - rule__TypedArgument__Group__0(); + rule__TypedVariableArgument__Group__0(); state._fsp--; } - after(grammarAccess.getTypedArgumentAccess().getGroup()); + after(grammarAccess.getTypedVariableArgumentAccess().getGroup()); } @@ -3063,15 +3286,15 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleTypedArgument" + // $ANTLR end "ruleTypedVariableArgument" // $ANTLR start "entryRuleTypedStarArgument" - // InternalSolverLanguageParser.g:1039:1: entryRuleTypedStarArgument : ruleTypedStarArgument EOF ; + // InternalSolverLanguageParser.g:1119:1: entryRuleTypedStarArgument : ruleTypedStarArgument EOF ; public final void entryRuleTypedStarArgument() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1040:1: ( ruleTypedStarArgument EOF ) - // InternalSolverLanguageParser.g:1041:1: ruleTypedStarArgument EOF + // InternalSolverLanguageParser.g:1120:1: ( ruleTypedStarArgument EOF ) + // InternalSolverLanguageParser.g:1121:1: ruleTypedStarArgument EOF { before(grammarAccess.getTypedStarArgumentRule()); pushFollow(FOLLOW_1); @@ -3097,21 +3320,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleTypedStarArgument" - // InternalSolverLanguageParser.g:1048:1: ruleTypedStarArgument : ( ( rule__TypedStarArgument__Group__0 ) ) ; + // InternalSolverLanguageParser.g:1128:1: ruleTypedStarArgument : ( ( rule__TypedStarArgument__Group__0 ) ) ; public final void ruleTypedStarArgument() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1052:2: ( ( ( rule__TypedStarArgument__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1053:2: ( ( rule__TypedStarArgument__Group__0 ) ) + // InternalSolverLanguageParser.g:1132:2: ( ( ( rule__TypedStarArgument__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1133:2: ( ( rule__TypedStarArgument__Group__0 ) ) { - // InternalSolverLanguageParser.g:1053:2: ( ( rule__TypedStarArgument__Group__0 ) ) - // InternalSolverLanguageParser.g:1054:3: ( rule__TypedStarArgument__Group__0 ) + // InternalSolverLanguageParser.g:1133:2: ( ( rule__TypedStarArgument__Group__0 ) ) + // InternalSolverLanguageParser.g:1134:3: ( rule__TypedStarArgument__Group__0 ) { before(grammarAccess.getTypedStarArgumentAccess().getGroup()); - // InternalSolverLanguageParser.g:1055:3: ( rule__TypedStarArgument__Group__0 ) - // InternalSolverLanguageParser.g:1055:4: rule__TypedStarArgument__Group__0 + // InternalSolverLanguageParser.g:1135:3: ( rule__TypedStarArgument__Group__0 ) + // InternalSolverLanguageParser.g:1135:4: rule__TypedStarArgument__Group__0 { pushFollow(FOLLOW_2); rule__TypedStarArgument__Group__0(); @@ -3144,11 +3367,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleReference" - // InternalSolverLanguageParser.g:1064:1: entryRuleReference : ruleReference EOF ; + // InternalSolverLanguageParser.g:1144:1: entryRuleReference : ruleReference EOF ; public final void entryRuleReference() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1065:1: ( ruleReference EOF ) - // InternalSolverLanguageParser.g:1066:1: ruleReference EOF + // InternalSolverLanguageParser.g:1145:1: ( ruleReference EOF ) + // InternalSolverLanguageParser.g:1146:1: ruleReference EOF { before(grammarAccess.getReferenceRule()); pushFollow(FOLLOW_1); @@ -3174,31 +3397,31 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleReference" - // InternalSolverLanguageParser.g:1073:1: ruleReference : ( ( rule__Reference__ReferredAssignment ) ) ; + // InternalSolverLanguageParser.g:1153:1: ruleReference : ( ( rule__Reference__Group__0 ) ) ; public final void ruleReference() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1077:2: ( ( ( rule__Reference__ReferredAssignment ) ) ) - // InternalSolverLanguageParser.g:1078:2: ( ( rule__Reference__ReferredAssignment ) ) + // InternalSolverLanguageParser.g:1157:2: ( ( ( rule__Reference__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1158:2: ( ( rule__Reference__Group__0 ) ) { - // InternalSolverLanguageParser.g:1078:2: ( ( rule__Reference__ReferredAssignment ) ) - // InternalSolverLanguageParser.g:1079:3: ( rule__Reference__ReferredAssignment ) + // InternalSolverLanguageParser.g:1158:2: ( ( rule__Reference__Group__0 ) ) + // InternalSolverLanguageParser.g:1159:3: ( rule__Reference__Group__0 ) { - before(grammarAccess.getReferenceAccess().getReferredAssignment()); - // InternalSolverLanguageParser.g:1080:3: ( rule__Reference__ReferredAssignment ) - // InternalSolverLanguageParser.g:1080:4: rule__Reference__ReferredAssignment + before(grammarAccess.getReferenceAccess().getGroup()); + // InternalSolverLanguageParser.g:1160:3: ( rule__Reference__Group__0 ) + // InternalSolverLanguageParser.g:1160:4: rule__Reference__Group__0 { pushFollow(FOLLOW_2); - rule__Reference__ReferredAssignment(); + rule__Reference__Group__0(); state._fsp--; } - after(grammarAccess.getReferenceAccess().getReferredAssignment()); + after(grammarAccess.getReferenceAccess().getGroup()); } @@ -3220,20 +3443,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleReference" - // $ANTLR start "entryRuleInterval" - // InternalSolverLanguageParser.g:1089:1: entryRuleInterval : ruleInterval EOF ; - public final void entryRuleInterval() throws RecognitionException { + // $ANTLR start "entryRulePathComponent" + // InternalSolverLanguageParser.g:1169:1: entryRulePathComponent : rulePathComponent EOF ; + public final void entryRulePathComponent() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1090:1: ( ruleInterval EOF ) - // InternalSolverLanguageParser.g:1091:1: ruleInterval EOF + // InternalSolverLanguageParser.g:1170:1: ( rulePathComponent EOF ) + // InternalSolverLanguageParser.g:1171:1: rulePathComponent EOF { - before(grammarAccess.getIntervalRule()); + before(grammarAccess.getPathComponentRule()); pushFollow(FOLLOW_1); - ruleInterval(); + rulePathComponent(); state._fsp--; - after(grammarAccess.getIntervalRule()); + after(grammarAccess.getPathComponentRule()); match(input,EOF,FOLLOW_2); } @@ -3247,35 +3470,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleInterval" + // $ANTLR end "entryRulePathComponent" - // $ANTLR start "ruleInterval" - // InternalSolverLanguageParser.g:1098:1: ruleInterval : ( ( rule__Interval__Group__0 ) ) ; - public final void ruleInterval() throws RecognitionException { + // $ANTLR start "rulePathComponent" + // InternalSolverLanguageParser.g:1178:1: rulePathComponent : ( ( rule__PathComponent__Group__0 ) ) ; + public final void rulePathComponent() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1102:2: ( ( ( rule__Interval__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1103:2: ( ( rule__Interval__Group__0 ) ) + // InternalSolverLanguageParser.g:1182:2: ( ( ( rule__PathComponent__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1183:2: ( ( rule__PathComponent__Group__0 ) ) { - // InternalSolverLanguageParser.g:1103:2: ( ( rule__Interval__Group__0 ) ) - // InternalSolverLanguageParser.g:1104:3: ( rule__Interval__Group__0 ) + // InternalSolverLanguageParser.g:1183:2: ( ( rule__PathComponent__Group__0 ) ) + // InternalSolverLanguageParser.g:1184:3: ( rule__PathComponent__Group__0 ) { - before(grammarAccess.getIntervalAccess().getGroup()); - // InternalSolverLanguageParser.g:1105:3: ( rule__Interval__Group__0 ) - // InternalSolverLanguageParser.g:1105:4: rule__Interval__Group__0 + before(grammarAccess.getPathComponentAccess().getGroup()); + // InternalSolverLanguageParser.g:1185:3: ( rule__PathComponent__Group__0 ) + // InternalSolverLanguageParser.g:1185:4: rule__PathComponent__Group__0 { pushFollow(FOLLOW_2); - rule__Interval__Group__0(); + rule__PathComponent__Group__0(); state._fsp--; } - after(grammarAccess.getIntervalAccess().getGroup()); + after(grammarAccess.getPathComponentAccess().getGroup()); } @@ -3294,17 +3517,94 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleInterval" + // $ANTLR end "rulePathComponent" - // $ANTLR start "entryRuleLiteral" - // InternalSolverLanguageParser.g:1114:1: entryRuleLiteral : ruleLiteral EOF ; - public final void entryRuleLiteral() throws RecognitionException { + // $ANTLR start "entryRuleInterval" + // InternalSolverLanguageParser.g:1194:1: entryRuleInterval : ruleInterval EOF ; + public final void entryRuleInterval() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1115:1: ( ruleLiteral EOF ) - // InternalSolverLanguageParser.g:1116:1: ruleLiteral EOF + // InternalSolverLanguageParser.g:1195:1: ( ruleInterval EOF ) + // InternalSolverLanguageParser.g:1196:1: ruleInterval EOF { - before(grammarAccess.getLiteralRule()); + before(grammarAccess.getIntervalRule()); + pushFollow(FOLLOW_1); + ruleInterval(); + + state._fsp--; + + after(grammarAccess.getIntervalRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleInterval" + + + // $ANTLR start "ruleInterval" + // InternalSolverLanguageParser.g:1203:1: ruleInterval : ( ( rule__Interval__Group__0 ) ) ; + public final void ruleInterval() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:1207:2: ( ( ( rule__Interval__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1208:2: ( ( rule__Interval__Group__0 ) ) + { + // InternalSolverLanguageParser.g:1208:2: ( ( rule__Interval__Group__0 ) ) + // InternalSolverLanguageParser.g:1209:3: ( rule__Interval__Group__0 ) + { + before(grammarAccess.getIntervalAccess().getGroup()); + // InternalSolverLanguageParser.g:1210:3: ( rule__Interval__Group__0 ) + // InternalSolverLanguageParser.g:1210:4: rule__Interval__Group__0 + { + pushFollow(FOLLOW_2); + rule__Interval__Group__0(); + + state._fsp--; + + + } + + after(grammarAccess.getIntervalAccess().getGroup()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleInterval" + + + // $ANTLR start "entryRuleLiteral" + // InternalSolverLanguageParser.g:1219:1: entryRuleLiteral : ruleLiteral EOF ; + public final void entryRuleLiteral() throws RecognitionException { + try { + // InternalSolverLanguageParser.g:1220:1: ( ruleLiteral EOF ) + // InternalSolverLanguageParser.g:1221:1: ruleLiteral EOF + { + before(grammarAccess.getLiteralRule()); pushFollow(FOLLOW_1); ruleLiteral(); @@ -3328,21 +3628,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleLiteral" - // InternalSolverLanguageParser.g:1123:1: ruleLiteral : ( ( rule__Literal__Alternatives ) ) ; + // InternalSolverLanguageParser.g:1228:1: ruleLiteral : ( ( rule__Literal__Alternatives ) ) ; public final void ruleLiteral() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1127:2: ( ( ( rule__Literal__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1128:2: ( ( rule__Literal__Alternatives ) ) + // InternalSolverLanguageParser.g:1232:2: ( ( ( rule__Literal__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1233:2: ( ( rule__Literal__Alternatives ) ) { - // InternalSolverLanguageParser.g:1128:2: ( ( rule__Literal__Alternatives ) ) - // InternalSolverLanguageParser.g:1129:3: ( rule__Literal__Alternatives ) + // InternalSolverLanguageParser.g:1233:2: ( ( rule__Literal__Alternatives ) ) + // InternalSolverLanguageParser.g:1234:3: ( rule__Literal__Alternatives ) { before(grammarAccess.getLiteralAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1130:3: ( rule__Literal__Alternatives ) - // InternalSolverLanguageParser.g:1130:4: rule__Literal__Alternatives + // InternalSolverLanguageParser.g:1235:3: ( rule__Literal__Alternatives ) + // InternalSolverLanguageParser.g:1235:4: rule__Literal__Alternatives { pushFollow(FOLLOW_2); rule__Literal__Alternatives(); @@ -3375,11 +3675,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleLogicLiteral" - // InternalSolverLanguageParser.g:1139:1: entryRuleLogicLiteral : ruleLogicLiteral EOF ; + // InternalSolverLanguageParser.g:1244:1: entryRuleLogicLiteral : ruleLogicLiteral EOF ; public final void entryRuleLogicLiteral() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1140:1: ( ruleLogicLiteral EOF ) - // InternalSolverLanguageParser.g:1141:1: ruleLogicLiteral EOF + // InternalSolverLanguageParser.g:1245:1: ( ruleLogicLiteral EOF ) + // InternalSolverLanguageParser.g:1246:1: ruleLogicLiteral EOF { before(grammarAccess.getLogicLiteralRule()); pushFollow(FOLLOW_1); @@ -3405,21 +3705,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleLogicLiteral" - // InternalSolverLanguageParser.g:1148:1: ruleLogicLiteral : ( ( rule__LogicLiteral__ValueAssignment ) ) ; + // InternalSolverLanguageParser.g:1253:1: ruleLogicLiteral : ( ( rule__LogicLiteral__ValueAssignment ) ) ; public final void ruleLogicLiteral() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1152:2: ( ( ( rule__LogicLiteral__ValueAssignment ) ) ) - // InternalSolverLanguageParser.g:1153:2: ( ( rule__LogicLiteral__ValueAssignment ) ) + // InternalSolverLanguageParser.g:1257:2: ( ( ( rule__LogicLiteral__ValueAssignment ) ) ) + // InternalSolverLanguageParser.g:1258:2: ( ( rule__LogicLiteral__ValueAssignment ) ) { - // InternalSolverLanguageParser.g:1153:2: ( ( rule__LogicLiteral__ValueAssignment ) ) - // InternalSolverLanguageParser.g:1154:3: ( rule__LogicLiteral__ValueAssignment ) + // InternalSolverLanguageParser.g:1258:2: ( ( rule__LogicLiteral__ValueAssignment ) ) + // InternalSolverLanguageParser.g:1259:3: ( rule__LogicLiteral__ValueAssignment ) { before(grammarAccess.getLogicLiteralAccess().getValueAssignment()); - // InternalSolverLanguageParser.g:1155:3: ( rule__LogicLiteral__ValueAssignment ) - // InternalSolverLanguageParser.g:1155:4: rule__LogicLiteral__ValueAssignment + // InternalSolverLanguageParser.g:1260:3: ( rule__LogicLiteral__ValueAssignment ) + // InternalSolverLanguageParser.g:1260:4: rule__LogicLiteral__ValueAssignment { pushFollow(FOLLOW_2); rule__LogicLiteral__ValueAssignment(); @@ -3451,20 +3751,97 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleLogicLiteral" - // $ANTLR start "entryRuleNumericLiteral" - // InternalSolverLanguageParser.g:1164:1: entryRuleNumericLiteral : ruleNumericLiteral EOF ; - public final void entryRuleNumericLiteral() throws RecognitionException { + // $ANTLR start "entryRuleIntLiteral" + // InternalSolverLanguageParser.g:1269:1: entryRuleIntLiteral : ruleIntLiteral EOF ; + public final void entryRuleIntLiteral() throws RecognitionException { + try { + // InternalSolverLanguageParser.g:1270:1: ( ruleIntLiteral EOF ) + // InternalSolverLanguageParser.g:1271:1: ruleIntLiteral EOF + { + before(grammarAccess.getIntLiteralRule()); + pushFollow(FOLLOW_1); + ruleIntLiteral(); + + state._fsp--; + + after(grammarAccess.getIntLiteralRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + } + return ; + } + // $ANTLR end "entryRuleIntLiteral" + + + // $ANTLR start "ruleIntLiteral" + // InternalSolverLanguageParser.g:1278:1: ruleIntLiteral : ( ( rule__IntLiteral__ValueAssignment ) ) ; + public final void ruleIntLiteral() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:1282:2: ( ( ( rule__IntLiteral__ValueAssignment ) ) ) + // InternalSolverLanguageParser.g:1283:2: ( ( rule__IntLiteral__ValueAssignment ) ) + { + // InternalSolverLanguageParser.g:1283:2: ( ( rule__IntLiteral__ValueAssignment ) ) + // InternalSolverLanguageParser.g:1284:3: ( rule__IntLiteral__ValueAssignment ) + { + before(grammarAccess.getIntLiteralAccess().getValueAssignment()); + // InternalSolverLanguageParser.g:1285:3: ( rule__IntLiteral__ValueAssignment ) + // InternalSolverLanguageParser.g:1285:4: rule__IntLiteral__ValueAssignment + { + pushFollow(FOLLOW_2); + rule__IntLiteral__ValueAssignment(); + + state._fsp--; + + + } + + after(grammarAccess.getIntLiteralAccess().getValueAssignment()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleIntLiteral" + + + // $ANTLR start "entryRuleRealLiteral" + // InternalSolverLanguageParser.g:1294:1: entryRuleRealLiteral : ruleRealLiteral EOF ; + public final void entryRuleRealLiteral() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1165:1: ( ruleNumericLiteral EOF ) - // InternalSolverLanguageParser.g:1166:1: ruleNumericLiteral EOF + // InternalSolverLanguageParser.g:1295:1: ( ruleRealLiteral EOF ) + // InternalSolverLanguageParser.g:1296:1: ruleRealLiteral EOF { - before(grammarAccess.getNumericLiteralRule()); + before(grammarAccess.getRealLiteralRule()); pushFollow(FOLLOW_1); - ruleNumericLiteral(); + ruleRealLiteral(); state._fsp--; - after(grammarAccess.getNumericLiteralRule()); + after(grammarAccess.getRealLiteralRule()); match(input,EOF,FOLLOW_2); } @@ -3478,35 +3855,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleNumericLiteral" + // $ANTLR end "entryRuleRealLiteral" - // $ANTLR start "ruleNumericLiteral" - // InternalSolverLanguageParser.g:1173:1: ruleNumericLiteral : ( ( rule__NumericLiteral__ValueAssignment ) ) ; - public final void ruleNumericLiteral() throws RecognitionException { + // $ANTLR start "ruleRealLiteral" + // InternalSolverLanguageParser.g:1303:1: ruleRealLiteral : ( ( rule__RealLiteral__ValueAssignment ) ) ; + public final void ruleRealLiteral() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1177:2: ( ( ( rule__NumericLiteral__ValueAssignment ) ) ) - // InternalSolverLanguageParser.g:1178:2: ( ( rule__NumericLiteral__ValueAssignment ) ) + // InternalSolverLanguageParser.g:1307:2: ( ( ( rule__RealLiteral__ValueAssignment ) ) ) + // InternalSolverLanguageParser.g:1308:2: ( ( rule__RealLiteral__ValueAssignment ) ) { - // InternalSolverLanguageParser.g:1178:2: ( ( rule__NumericLiteral__ValueAssignment ) ) - // InternalSolverLanguageParser.g:1179:3: ( rule__NumericLiteral__ValueAssignment ) + // InternalSolverLanguageParser.g:1308:2: ( ( rule__RealLiteral__ValueAssignment ) ) + // InternalSolverLanguageParser.g:1309:3: ( rule__RealLiteral__ValueAssignment ) { - before(grammarAccess.getNumericLiteralAccess().getValueAssignment()); - // InternalSolverLanguageParser.g:1180:3: ( rule__NumericLiteral__ValueAssignment ) - // InternalSolverLanguageParser.g:1180:4: rule__NumericLiteral__ValueAssignment + before(grammarAccess.getRealLiteralAccess().getValueAssignment()); + // InternalSolverLanguageParser.g:1310:3: ( rule__RealLiteral__ValueAssignment ) + // InternalSolverLanguageParser.g:1310:4: rule__RealLiteral__ValueAssignment { pushFollow(FOLLOW_2); - rule__NumericLiteral__ValueAssignment(); + rule__RealLiteral__ValueAssignment(); state._fsp--; } - after(grammarAccess.getNumericLiteralAccess().getValueAssignment()); + after(grammarAccess.getRealLiteralAccess().getValueAssignment()); } @@ -3525,15 +3902,15 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleNumericLiteral" + // $ANTLR end "ruleRealLiteral" // $ANTLR start "entryRuleInfinityLiteral" - // InternalSolverLanguageParser.g:1189:1: entryRuleInfinityLiteral : ruleInfinityLiteral EOF ; + // InternalSolverLanguageParser.g:1319:1: entryRuleInfinityLiteral : ruleInfinityLiteral EOF ; public final void entryRuleInfinityLiteral() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1190:1: ( ruleInfinityLiteral EOF ) - // InternalSolverLanguageParser.g:1191:1: ruleInfinityLiteral EOF + // InternalSolverLanguageParser.g:1320:1: ( ruleInfinityLiteral EOF ) + // InternalSolverLanguageParser.g:1321:1: ruleInfinityLiteral EOF { before(grammarAccess.getInfinityLiteralRule()); pushFollow(FOLLOW_1); @@ -3559,21 +3936,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleInfinityLiteral" - // InternalSolverLanguageParser.g:1198:1: ruleInfinityLiteral : ( ( rule__InfinityLiteral__Group__0 ) ) ; + // InternalSolverLanguageParser.g:1328:1: ruleInfinityLiteral : ( ( rule__InfinityLiteral__Group__0 ) ) ; public final void ruleInfinityLiteral() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1202:2: ( ( ( rule__InfinityLiteral__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1203:2: ( ( rule__InfinityLiteral__Group__0 ) ) + // InternalSolverLanguageParser.g:1332:2: ( ( ( rule__InfinityLiteral__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1333:2: ( ( rule__InfinityLiteral__Group__0 ) ) { - // InternalSolverLanguageParser.g:1203:2: ( ( rule__InfinityLiteral__Group__0 ) ) - // InternalSolverLanguageParser.g:1204:3: ( rule__InfinityLiteral__Group__0 ) + // InternalSolverLanguageParser.g:1333:2: ( ( rule__InfinityLiteral__Group__0 ) ) + // InternalSolverLanguageParser.g:1334:3: ( rule__InfinityLiteral__Group__0 ) { before(grammarAccess.getInfinityLiteralAccess().getGroup()); - // InternalSolverLanguageParser.g:1205:3: ( rule__InfinityLiteral__Group__0 ) - // InternalSolverLanguageParser.g:1205:4: rule__InfinityLiteral__Group__0 + // InternalSolverLanguageParser.g:1335:3: ( rule__InfinityLiteral__Group__0 ) + // InternalSolverLanguageParser.g:1335:4: rule__InfinityLiteral__Group__0 { pushFollow(FOLLOW_2); rule__InfinityLiteral__Group__0(); @@ -3605,20 +3982,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleInfinityLiteral" - // $ANTLR start "entryRuleEmptyIntervalLiteral" - // InternalSolverLanguageParser.g:1214:1: entryRuleEmptyIntervalLiteral : ruleEmptyIntervalLiteral EOF ; - public final void entryRuleEmptyIntervalLiteral() throws RecognitionException { + // $ANTLR start "entryRuleEmptyLiteral" + // InternalSolverLanguageParser.g:1344:1: entryRuleEmptyLiteral : ruleEmptyLiteral EOF ; + public final void entryRuleEmptyLiteral() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1215:1: ( ruleEmptyIntervalLiteral EOF ) - // InternalSolverLanguageParser.g:1216:1: ruleEmptyIntervalLiteral EOF + // InternalSolverLanguageParser.g:1345:1: ( ruleEmptyLiteral EOF ) + // InternalSolverLanguageParser.g:1346:1: ruleEmptyLiteral EOF { - before(grammarAccess.getEmptyIntervalLiteralRule()); + before(grammarAccess.getEmptyLiteralRule()); pushFollow(FOLLOW_1); - ruleEmptyIntervalLiteral(); + ruleEmptyLiteral(); state._fsp--; - after(grammarAccess.getEmptyIntervalLiteralRule()); + after(grammarAccess.getEmptyLiteralRule()); match(input,EOF,FOLLOW_2); } @@ -3632,35 +4009,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleEmptyIntervalLiteral" + // $ANTLR end "entryRuleEmptyLiteral" - // $ANTLR start "ruleEmptyIntervalLiteral" - // InternalSolverLanguageParser.g:1223:1: ruleEmptyIntervalLiteral : ( ( rule__EmptyIntervalLiteral__Group__0 ) ) ; - public final void ruleEmptyIntervalLiteral() throws RecognitionException { + // $ANTLR start "ruleEmptyLiteral" + // InternalSolverLanguageParser.g:1353:1: ruleEmptyLiteral : ( ( rule__EmptyLiteral__Group__0 ) ) ; + public final void ruleEmptyLiteral() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1227:2: ( ( ( rule__EmptyIntervalLiteral__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1228:2: ( ( rule__EmptyIntervalLiteral__Group__0 ) ) + // InternalSolverLanguageParser.g:1357:2: ( ( ( rule__EmptyLiteral__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1358:2: ( ( rule__EmptyLiteral__Group__0 ) ) { - // InternalSolverLanguageParser.g:1228:2: ( ( rule__EmptyIntervalLiteral__Group__0 ) ) - // InternalSolverLanguageParser.g:1229:3: ( rule__EmptyIntervalLiteral__Group__0 ) + // InternalSolverLanguageParser.g:1358:2: ( ( rule__EmptyLiteral__Group__0 ) ) + // InternalSolverLanguageParser.g:1359:3: ( rule__EmptyLiteral__Group__0 ) { - before(grammarAccess.getEmptyIntervalLiteralAccess().getGroup()); - // InternalSolverLanguageParser.g:1230:3: ( rule__EmptyIntervalLiteral__Group__0 ) - // InternalSolverLanguageParser.g:1230:4: rule__EmptyIntervalLiteral__Group__0 + before(grammarAccess.getEmptyLiteralAccess().getGroup()); + // InternalSolverLanguageParser.g:1360:3: ( rule__EmptyLiteral__Group__0 ) + // InternalSolverLanguageParser.g:1360:4: rule__EmptyLiteral__Group__0 { pushFollow(FOLLOW_2); - rule__EmptyIntervalLiteral__Group__0(); + rule__EmptyLiteral__Group__0(); state._fsp--; } - after(grammarAccess.getEmptyIntervalLiteralAccess().getGroup()); + after(grammarAccess.getEmptyLiteralAccess().getGroup()); } @@ -3679,15 +4056,15 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleEmptyIntervalLiteral" + // $ANTLR end "ruleEmptyLiteral" // $ANTLR start "entryRuleStringLiteral" - // InternalSolverLanguageParser.g:1239:1: entryRuleStringLiteral : ruleStringLiteral EOF ; + // InternalSolverLanguageParser.g:1369:1: entryRuleStringLiteral : ruleStringLiteral EOF ; public final void entryRuleStringLiteral() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1240:1: ( ruleStringLiteral EOF ) - // InternalSolverLanguageParser.g:1241:1: ruleStringLiteral EOF + // InternalSolverLanguageParser.g:1370:1: ( ruleStringLiteral EOF ) + // InternalSolverLanguageParser.g:1371:1: ruleStringLiteral EOF { before(grammarAccess.getStringLiteralRule()); pushFollow(FOLLOW_1); @@ -3713,21 +4090,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleStringLiteral" - // InternalSolverLanguageParser.g:1248:1: ruleStringLiteral : ( ( rule__StringLiteral__ValueAssignment ) ) ; + // InternalSolverLanguageParser.g:1378:1: ruleStringLiteral : ( ( rule__StringLiteral__ValueAssignment ) ) ; public final void ruleStringLiteral() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1252:2: ( ( ( rule__StringLiteral__ValueAssignment ) ) ) - // InternalSolverLanguageParser.g:1253:2: ( ( rule__StringLiteral__ValueAssignment ) ) + // InternalSolverLanguageParser.g:1382:2: ( ( ( rule__StringLiteral__ValueAssignment ) ) ) + // InternalSolverLanguageParser.g:1383:2: ( ( rule__StringLiteral__ValueAssignment ) ) { - // InternalSolverLanguageParser.g:1253:2: ( ( rule__StringLiteral__ValueAssignment ) ) - // InternalSolverLanguageParser.g:1254:3: ( rule__StringLiteral__ValueAssignment ) + // InternalSolverLanguageParser.g:1383:2: ( ( rule__StringLiteral__ValueAssignment ) ) + // InternalSolverLanguageParser.g:1384:3: ( rule__StringLiteral__ValueAssignment ) { before(grammarAccess.getStringLiteralAccess().getValueAssignment()); - // InternalSolverLanguageParser.g:1255:3: ( rule__StringLiteral__ValueAssignment ) - // InternalSolverLanguageParser.g:1255:4: rule__StringLiteral__ValueAssignment + // InternalSolverLanguageParser.g:1385:3: ( rule__StringLiteral__ValueAssignment ) + // InternalSolverLanguageParser.g:1385:4: rule__StringLiteral__ValueAssignment { pushFollow(FOLLOW_2); rule__StringLiteral__ValueAssignment(); @@ -3759,20 +4136,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleStringLiteral" - // $ANTLR start "entryRuleClassDefinition" - // InternalSolverLanguageParser.g:1264:1: entryRuleClassDefinition : ruleClassDefinition EOF ; - public final void entryRuleClassDefinition() throws RecognitionException { + // $ANTLR start "entryRuleClassDeclaration" + // InternalSolverLanguageParser.g:1394:1: entryRuleClassDeclaration : ruleClassDeclaration EOF ; + public final void entryRuleClassDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1265:1: ( ruleClassDefinition EOF ) - // InternalSolverLanguageParser.g:1266:1: ruleClassDefinition EOF + // InternalSolverLanguageParser.g:1395:1: ( ruleClassDeclaration EOF ) + // InternalSolverLanguageParser.g:1396:1: ruleClassDeclaration EOF { - before(grammarAccess.getClassDefinitionRule()); + before(grammarAccess.getClassDeclarationRule()); pushFollow(FOLLOW_1); - ruleClassDefinition(); + ruleClassDeclaration(); state._fsp--; - after(grammarAccess.getClassDefinitionRule()); + after(grammarAccess.getClassDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -3786,35 +4163,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleClassDefinition" + // $ANTLR end "entryRuleClassDeclaration" - // $ANTLR start "ruleClassDefinition" - // InternalSolverLanguageParser.g:1273:1: ruleClassDefinition : ( ( rule__ClassDefinition__Group__0 ) ) ; - public final void ruleClassDefinition() throws RecognitionException { + // $ANTLR start "ruleClassDeclaration" + // InternalSolverLanguageParser.g:1403:1: ruleClassDeclaration : ( ( rule__ClassDeclaration__Group__0 ) ) ; + public final void ruleClassDeclaration() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1277:2: ( ( ( rule__ClassDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1278:2: ( ( rule__ClassDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:1407:2: ( ( ( rule__ClassDeclaration__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1408:2: ( ( rule__ClassDeclaration__Group__0 ) ) { - // InternalSolverLanguageParser.g:1278:2: ( ( rule__ClassDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:1279:3: ( rule__ClassDefinition__Group__0 ) + // InternalSolverLanguageParser.g:1408:2: ( ( rule__ClassDeclaration__Group__0 ) ) + // InternalSolverLanguageParser.g:1409:3: ( rule__ClassDeclaration__Group__0 ) { - before(grammarAccess.getClassDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:1280:3: ( rule__ClassDefinition__Group__0 ) - // InternalSolverLanguageParser.g:1280:4: rule__ClassDefinition__Group__0 + before(grammarAccess.getClassDeclarationAccess().getGroup()); + // InternalSolverLanguageParser.g:1410:3: ( rule__ClassDeclaration__Group__0 ) + // InternalSolverLanguageParser.g:1410:4: rule__ClassDeclaration__Group__0 { pushFollow(FOLLOW_2); - rule__ClassDefinition__Group__0(); + rule__ClassDeclaration__Group__0(); state._fsp--; } - after(grammarAccess.getClassDefinitionAccess().getGroup()); + after(grammarAccess.getClassDeclarationAccess().getGroup()); } @@ -3833,23 +4210,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleClassDefinition" + // $ANTLR end "ruleClassDeclaration" - // $ANTLR start "entryRuleMemberDefinition" - // InternalSolverLanguageParser.g:1289:1: entryRuleMemberDefinition : ruleMemberDefinition EOF ; - public final void entryRuleMemberDefinition() throws RecognitionException { + // $ANTLR start "entryRuleField" + // InternalSolverLanguageParser.g:1419:1: entryRuleField : ruleField EOF ; + public final void entryRuleField() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1290:1: ( ruleMemberDefinition EOF ) - // InternalSolverLanguageParser.g:1291:1: ruleMemberDefinition EOF + // InternalSolverLanguageParser.g:1420:1: ( ruleField EOF ) + // InternalSolverLanguageParser.g:1421:1: ruleField EOF { - before(grammarAccess.getMemberDefinitionRule()); + before(grammarAccess.getFieldRule()); pushFollow(FOLLOW_1); - ruleMemberDefinition(); + ruleField(); state._fsp--; - after(grammarAccess.getMemberDefinitionRule()); + after(grammarAccess.getFieldRule()); match(input,EOF,FOLLOW_2); } @@ -3863,35 +4240,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleMemberDefinition" + // $ANTLR end "entryRuleField" - // $ANTLR start "ruleMemberDefinition" - // InternalSolverLanguageParser.g:1298:1: ruleMemberDefinition : ( ( rule__MemberDefinition__Group__0 ) ) ; - public final void ruleMemberDefinition() throws RecognitionException { + // $ANTLR start "ruleField" + // InternalSolverLanguageParser.g:1428:1: ruleField : ( ( rule__Field__Group__0 ) ) ; + public final void ruleField() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1302:2: ( ( ( rule__MemberDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1303:2: ( ( rule__MemberDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:1432:2: ( ( ( rule__Field__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1433:2: ( ( rule__Field__Group__0 ) ) { - // InternalSolverLanguageParser.g:1303:2: ( ( rule__MemberDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:1304:3: ( rule__MemberDefinition__Group__0 ) + // InternalSolverLanguageParser.g:1433:2: ( ( rule__Field__Group__0 ) ) + // InternalSolverLanguageParser.g:1434:3: ( rule__Field__Group__0 ) { - before(grammarAccess.getMemberDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:1305:3: ( rule__MemberDefinition__Group__0 ) - // InternalSolverLanguageParser.g:1305:4: rule__MemberDefinition__Group__0 + before(grammarAccess.getFieldAccess().getGroup()); + // InternalSolverLanguageParser.g:1435:3: ( rule__Field__Group__0 ) + // InternalSolverLanguageParser.g:1435:4: rule__Field__Group__0 { pushFollow(FOLLOW_2); - rule__MemberDefinition__Group__0(); + rule__Field__Group__0(); state._fsp--; } - after(grammarAccess.getMemberDefinitionAccess().getGroup()); + after(grammarAccess.getFieldAccess().getGroup()); } @@ -3910,15 +4287,15 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleMemberDefinition" + // $ANTLR end "ruleField" // $ANTLR start "entryRuleMultiplicity" - // InternalSolverLanguageParser.g:1314:1: entryRuleMultiplicity : ruleMultiplicity EOF ; + // InternalSolverLanguageParser.g:1444:1: entryRuleMultiplicity : ruleMultiplicity EOF ; public final void entryRuleMultiplicity() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1315:1: ( ruleMultiplicity EOF ) - // InternalSolverLanguageParser.g:1316:1: ruleMultiplicity EOF + // InternalSolverLanguageParser.g:1445:1: ( ruleMultiplicity EOF ) + // InternalSolverLanguageParser.g:1446:1: ruleMultiplicity EOF { before(grammarAccess.getMultiplicityRule()); pushFollow(FOLLOW_1); @@ -3944,21 +4321,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleMultiplicity" - // InternalSolverLanguageParser.g:1323:1: ruleMultiplicity : ( ( rule__Multiplicity__Alternatives ) ) ; + // InternalSolverLanguageParser.g:1453:1: ruleMultiplicity : ( ( rule__Multiplicity__Alternatives ) ) ; public final void ruleMultiplicity() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1327:2: ( ( ( rule__Multiplicity__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1328:2: ( ( rule__Multiplicity__Alternatives ) ) + // InternalSolverLanguageParser.g:1457:2: ( ( ( rule__Multiplicity__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1458:2: ( ( rule__Multiplicity__Alternatives ) ) { - // InternalSolverLanguageParser.g:1328:2: ( ( rule__Multiplicity__Alternatives ) ) - // InternalSolverLanguageParser.g:1329:3: ( rule__Multiplicity__Alternatives ) + // InternalSolverLanguageParser.g:1458:2: ( ( rule__Multiplicity__Alternatives ) ) + // InternalSolverLanguageParser.g:1459:3: ( rule__Multiplicity__Alternatives ) { before(grammarAccess.getMultiplicityAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1330:3: ( rule__Multiplicity__Alternatives ) - // InternalSolverLanguageParser.g:1330:4: rule__Multiplicity__Alternatives + // InternalSolverLanguageParser.g:1460:3: ( rule__Multiplicity__Alternatives ) + // InternalSolverLanguageParser.g:1460:4: rule__Multiplicity__Alternatives { pushFollow(FOLLOW_2); rule__Multiplicity__Alternatives(); @@ -3990,20 +4367,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleMultiplicity" - // $ANTLR start "entryRuleManyMultiplicity" - // InternalSolverLanguageParser.g:1339:1: entryRuleManyMultiplicity : ruleManyMultiplicity EOF ; - public final void entryRuleManyMultiplicity() throws RecognitionException { + // $ANTLR start "entryRuleUnboundedMultiplicity" + // InternalSolverLanguageParser.g:1469:1: entryRuleUnboundedMultiplicity : ruleUnboundedMultiplicity EOF ; + public final void entryRuleUnboundedMultiplicity() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1340:1: ( ruleManyMultiplicity EOF ) - // InternalSolverLanguageParser.g:1341:1: ruleManyMultiplicity EOF + // InternalSolverLanguageParser.g:1470:1: ( ruleUnboundedMultiplicity EOF ) + // InternalSolverLanguageParser.g:1471:1: ruleUnboundedMultiplicity EOF { - before(grammarAccess.getManyMultiplicityRule()); + before(grammarAccess.getUnboundedMultiplicityRule()); pushFollow(FOLLOW_1); - ruleManyMultiplicity(); + ruleUnboundedMultiplicity(); state._fsp--; - after(grammarAccess.getManyMultiplicityRule()); + after(grammarAccess.getUnboundedMultiplicityRule()); match(input,EOF,FOLLOW_2); } @@ -4017,35 +4394,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleManyMultiplicity" + // $ANTLR end "entryRuleUnboundedMultiplicity" - // $ANTLR start "ruleManyMultiplicity" - // InternalSolverLanguageParser.g:1348:1: ruleManyMultiplicity : ( ( rule__ManyMultiplicity__Group__0 ) ) ; - public final void ruleManyMultiplicity() throws RecognitionException { + // $ANTLR start "ruleUnboundedMultiplicity" + // InternalSolverLanguageParser.g:1478:1: ruleUnboundedMultiplicity : ( ( rule__UnboundedMultiplicity__Group__0 ) ) ; + public final void ruleUnboundedMultiplicity() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1352:2: ( ( ( rule__ManyMultiplicity__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1353:2: ( ( rule__ManyMultiplicity__Group__0 ) ) + // InternalSolverLanguageParser.g:1482:2: ( ( ( rule__UnboundedMultiplicity__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1483:2: ( ( rule__UnboundedMultiplicity__Group__0 ) ) { - // InternalSolverLanguageParser.g:1353:2: ( ( rule__ManyMultiplicity__Group__0 ) ) - // InternalSolverLanguageParser.g:1354:3: ( rule__ManyMultiplicity__Group__0 ) + // InternalSolverLanguageParser.g:1483:2: ( ( rule__UnboundedMultiplicity__Group__0 ) ) + // InternalSolverLanguageParser.g:1484:3: ( rule__UnboundedMultiplicity__Group__0 ) { - before(grammarAccess.getManyMultiplicityAccess().getGroup()); - // InternalSolverLanguageParser.g:1355:3: ( rule__ManyMultiplicity__Group__0 ) - // InternalSolverLanguageParser.g:1355:4: rule__ManyMultiplicity__Group__0 + before(grammarAccess.getUnboundedMultiplicityAccess().getGroup()); + // InternalSolverLanguageParser.g:1485:3: ( rule__UnboundedMultiplicity__Group__0 ) + // InternalSolverLanguageParser.g:1485:4: rule__UnboundedMultiplicity__Group__0 { pushFollow(FOLLOW_2); - rule__ManyMultiplicity__Group__0(); + rule__UnboundedMultiplicity__Group__0(); state._fsp--; } - after(grammarAccess.getManyMultiplicityAccess().getGroup()); + after(grammarAccess.getUnboundedMultiplicityAccess().getGroup()); } @@ -4064,15 +4441,15 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleManyMultiplicity" + // $ANTLR end "ruleUnboundedMultiplicity" // $ANTLR start "entryRuleExactMultiplicity" - // InternalSolverLanguageParser.g:1364:1: entryRuleExactMultiplicity : ruleExactMultiplicity EOF ; + // InternalSolverLanguageParser.g:1494:1: entryRuleExactMultiplicity : ruleExactMultiplicity EOF ; public final void entryRuleExactMultiplicity() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1365:1: ( ruleExactMultiplicity EOF ) - // InternalSolverLanguageParser.g:1366:1: ruleExactMultiplicity EOF + // InternalSolverLanguageParser.g:1495:1: ( ruleExactMultiplicity EOF ) + // InternalSolverLanguageParser.g:1496:1: ruleExactMultiplicity EOF { before(grammarAccess.getExactMultiplicityRule()); pushFollow(FOLLOW_1); @@ -4098,21 +4475,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleExactMultiplicity" - // InternalSolverLanguageParser.g:1373:1: ruleExactMultiplicity : ( ( rule__ExactMultiplicity__Group__0 ) ) ; + // InternalSolverLanguageParser.g:1503:1: ruleExactMultiplicity : ( ( rule__ExactMultiplicity__Group__0 ) ) ; public final void ruleExactMultiplicity() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1377:2: ( ( ( rule__ExactMultiplicity__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1378:2: ( ( rule__ExactMultiplicity__Group__0 ) ) + // InternalSolverLanguageParser.g:1507:2: ( ( ( rule__ExactMultiplicity__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1508:2: ( ( rule__ExactMultiplicity__Group__0 ) ) { - // InternalSolverLanguageParser.g:1378:2: ( ( rule__ExactMultiplicity__Group__0 ) ) - // InternalSolverLanguageParser.g:1379:3: ( rule__ExactMultiplicity__Group__0 ) + // InternalSolverLanguageParser.g:1508:2: ( ( rule__ExactMultiplicity__Group__0 ) ) + // InternalSolverLanguageParser.g:1509:3: ( rule__ExactMultiplicity__Group__0 ) { before(grammarAccess.getExactMultiplicityAccess().getGroup()); - // InternalSolverLanguageParser.g:1380:3: ( rule__ExactMultiplicity__Group__0 ) - // InternalSolverLanguageParser.g:1380:4: rule__ExactMultiplicity__Group__0 + // InternalSolverLanguageParser.g:1510:3: ( rule__ExactMultiplicity__Group__0 ) + // InternalSolverLanguageParser.g:1510:4: rule__ExactMultiplicity__Group__0 { pushFollow(FOLLOW_2); rule__ExactMultiplicity__Group__0(); @@ -4145,11 +4522,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "entryRuleBoundedMultiplicity" - // InternalSolverLanguageParser.g:1389:1: entryRuleBoundedMultiplicity : ruleBoundedMultiplicity EOF ; + // InternalSolverLanguageParser.g:1519:1: entryRuleBoundedMultiplicity : ruleBoundedMultiplicity EOF ; public final void entryRuleBoundedMultiplicity() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1390:1: ( ruleBoundedMultiplicity EOF ) - // InternalSolverLanguageParser.g:1391:1: ruleBoundedMultiplicity EOF + // InternalSolverLanguageParser.g:1520:1: ( ruleBoundedMultiplicity EOF ) + // InternalSolverLanguageParser.g:1521:1: ruleBoundedMultiplicity EOF { before(grammarAccess.getBoundedMultiplicityRule()); pushFollow(FOLLOW_1); @@ -4175,21 +4552,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleBoundedMultiplicity" - // InternalSolverLanguageParser.g:1398:1: ruleBoundedMultiplicity : ( ( rule__BoundedMultiplicity__Group__0 ) ) ; + // InternalSolverLanguageParser.g:1528:1: ruleBoundedMultiplicity : ( ( rule__BoundedMultiplicity__Group__0 ) ) ; public final void ruleBoundedMultiplicity() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1402:2: ( ( ( rule__BoundedMultiplicity__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1403:2: ( ( rule__BoundedMultiplicity__Group__0 ) ) + // InternalSolverLanguageParser.g:1532:2: ( ( ( rule__BoundedMultiplicity__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1533:2: ( ( rule__BoundedMultiplicity__Group__0 ) ) { - // InternalSolverLanguageParser.g:1403:2: ( ( rule__BoundedMultiplicity__Group__0 ) ) - // InternalSolverLanguageParser.g:1404:3: ( rule__BoundedMultiplicity__Group__0 ) + // InternalSolverLanguageParser.g:1533:2: ( ( rule__BoundedMultiplicity__Group__0 ) ) + // InternalSolverLanguageParser.g:1534:3: ( rule__BoundedMultiplicity__Group__0 ) { before(grammarAccess.getBoundedMultiplicityAccess().getGroup()); - // InternalSolverLanguageParser.g:1405:3: ( rule__BoundedMultiplicity__Group__0 ) - // InternalSolverLanguageParser.g:1405:4: rule__BoundedMultiplicity__Group__0 + // InternalSolverLanguageParser.g:1535:3: ( rule__BoundedMultiplicity__Group__0 ) + // InternalSolverLanguageParser.g:1535:4: rule__BoundedMultiplicity__Group__0 { pushFollow(FOLLOW_2); rule__BoundedMultiplicity__Group__0(); @@ -4221,20 +4598,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleBoundedMultiplicity" - // $ANTLR start "entryRuleScopeDefinition" - // InternalSolverLanguageParser.g:1414:1: entryRuleScopeDefinition : ruleScopeDefinition EOF ; - public final void entryRuleScopeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleEnumDeclaration" + // InternalSolverLanguageParser.g:1544:1: entryRuleEnumDeclaration : ruleEnumDeclaration EOF ; + public final void entryRuleEnumDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1415:1: ( ruleScopeDefinition EOF ) - // InternalSolverLanguageParser.g:1416:1: ruleScopeDefinition EOF + // InternalSolverLanguageParser.g:1545:1: ( ruleEnumDeclaration EOF ) + // InternalSolverLanguageParser.g:1546:1: ruleEnumDeclaration EOF { - before(grammarAccess.getScopeDefinitionRule()); + before(grammarAccess.getEnumDeclarationRule()); pushFollow(FOLLOW_1); - ruleScopeDefinition(); + ruleEnumDeclaration(); state._fsp--; - after(grammarAccess.getScopeDefinitionRule()); + after(grammarAccess.getEnumDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -4248,35 +4625,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleScopeDefinition" + // $ANTLR end "entryRuleEnumDeclaration" - // $ANTLR start "ruleScopeDefinition" - // InternalSolverLanguageParser.g:1423:1: ruleScopeDefinition : ( ( rule__ScopeDefinition__Alternatives ) ) ; - public final void ruleScopeDefinition() throws RecognitionException { + // $ANTLR start "ruleEnumDeclaration" + // InternalSolverLanguageParser.g:1553:1: ruleEnumDeclaration : ( ( rule__EnumDeclaration__Group__0 ) ) ; + public final void ruleEnumDeclaration() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1427:2: ( ( ( rule__ScopeDefinition__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1428:2: ( ( rule__ScopeDefinition__Alternatives ) ) + // InternalSolverLanguageParser.g:1557:2: ( ( ( rule__EnumDeclaration__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1558:2: ( ( rule__EnumDeclaration__Group__0 ) ) { - // InternalSolverLanguageParser.g:1428:2: ( ( rule__ScopeDefinition__Alternatives ) ) - // InternalSolverLanguageParser.g:1429:3: ( rule__ScopeDefinition__Alternatives ) + // InternalSolverLanguageParser.g:1558:2: ( ( rule__EnumDeclaration__Group__0 ) ) + // InternalSolverLanguageParser.g:1559:3: ( rule__EnumDeclaration__Group__0 ) { - before(grammarAccess.getScopeDefinitionAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1430:3: ( rule__ScopeDefinition__Alternatives ) - // InternalSolverLanguageParser.g:1430:4: rule__ScopeDefinition__Alternatives + before(grammarAccess.getEnumDeclarationAccess().getGroup()); + // InternalSolverLanguageParser.g:1560:3: ( rule__EnumDeclaration__Group__0 ) + // InternalSolverLanguageParser.g:1560:4: rule__EnumDeclaration__Group__0 { pushFollow(FOLLOW_2); - rule__ScopeDefinition__Alternatives(); + rule__EnumDeclaration__Group__0(); state._fsp--; } - after(grammarAccess.getScopeDefinitionAccess().getAlternatives()); + after(grammarAccess.getEnumDeclarationAccess().getGroup()); } @@ -4295,23 +4672,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleScopeDefinition" + // $ANTLR end "ruleEnumDeclaration" - // $ANTLR start "entryRuleExactScopeDefinition" - // InternalSolverLanguageParser.g:1439:1: entryRuleExactScopeDefinition : ruleExactScopeDefinition EOF ; - public final void entryRuleExactScopeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleEnumLiteral" + // InternalSolverLanguageParser.g:1569:1: entryRuleEnumLiteral : ruleEnumLiteral EOF ; + public final void entryRuleEnumLiteral() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1440:1: ( ruleExactScopeDefinition EOF ) - // InternalSolverLanguageParser.g:1441:1: ruleExactScopeDefinition EOF + // InternalSolverLanguageParser.g:1570:1: ( ruleEnumLiteral EOF ) + // InternalSolverLanguageParser.g:1571:1: ruleEnumLiteral EOF { - before(grammarAccess.getExactScopeDefinitionRule()); + before(grammarAccess.getEnumLiteralRule()); pushFollow(FOLLOW_1); - ruleExactScopeDefinition(); + ruleEnumLiteral(); state._fsp--; - after(grammarAccess.getExactScopeDefinitionRule()); + after(grammarAccess.getEnumLiteralRule()); match(input,EOF,FOLLOW_2); } @@ -4325,35 +4702,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleExactScopeDefinition" + // $ANTLR end "entryRuleEnumLiteral" - // $ANTLR start "ruleExactScopeDefinition" - // InternalSolverLanguageParser.g:1448:1: ruleExactScopeDefinition : ( ( rule__ExactScopeDefinition__Group__0 ) ) ; - public final void ruleExactScopeDefinition() throws RecognitionException { + // $ANTLR start "ruleEnumLiteral" + // InternalSolverLanguageParser.g:1578:1: ruleEnumLiteral : ( ( rule__EnumLiteral__NameAssignment ) ) ; + public final void ruleEnumLiteral() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1452:2: ( ( ( rule__ExactScopeDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1453:2: ( ( rule__ExactScopeDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:1582:2: ( ( ( rule__EnumLiteral__NameAssignment ) ) ) + // InternalSolverLanguageParser.g:1583:2: ( ( rule__EnumLiteral__NameAssignment ) ) { - // InternalSolverLanguageParser.g:1453:2: ( ( rule__ExactScopeDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:1454:3: ( rule__ExactScopeDefinition__Group__0 ) + // InternalSolverLanguageParser.g:1583:2: ( ( rule__EnumLiteral__NameAssignment ) ) + // InternalSolverLanguageParser.g:1584:3: ( rule__EnumLiteral__NameAssignment ) { - before(grammarAccess.getExactScopeDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:1455:3: ( rule__ExactScopeDefinition__Group__0 ) - // InternalSolverLanguageParser.g:1455:4: rule__ExactScopeDefinition__Group__0 + before(grammarAccess.getEnumLiteralAccess().getNameAssignment()); + // InternalSolverLanguageParser.g:1585:3: ( rule__EnumLiteral__NameAssignment ) + // InternalSolverLanguageParser.g:1585:4: rule__EnumLiteral__NameAssignment { pushFollow(FOLLOW_2); - rule__ExactScopeDefinition__Group__0(); + rule__EnumLiteral__NameAssignment(); state._fsp--; } - after(grammarAccess.getExactScopeDefinitionAccess().getGroup()); + after(grammarAccess.getEnumLiteralAccess().getNameAssignment()); } @@ -4372,23 +4749,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleExactScopeDefinition" + // $ANTLR end "ruleEnumLiteral" - // $ANTLR start "entryRuleBoundedScopeDefinition" - // InternalSolverLanguageParser.g:1464:1: entryRuleBoundedScopeDefinition : ruleBoundedScopeDefinition EOF ; - public final void entryRuleBoundedScopeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleScopeDeclaration" + // InternalSolverLanguageParser.g:1594:1: entryRuleScopeDeclaration : ruleScopeDeclaration EOF ; + public final void entryRuleScopeDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1465:1: ( ruleBoundedScopeDefinition EOF ) - // InternalSolverLanguageParser.g:1466:1: ruleBoundedScopeDefinition EOF + // InternalSolverLanguageParser.g:1595:1: ( ruleScopeDeclaration EOF ) + // InternalSolverLanguageParser.g:1596:1: ruleScopeDeclaration EOF { - before(grammarAccess.getBoundedScopeDefinitionRule()); + before(grammarAccess.getScopeDeclarationRule()); pushFollow(FOLLOW_1); - ruleBoundedScopeDefinition(); + ruleScopeDeclaration(); state._fsp--; - after(grammarAccess.getBoundedScopeDefinitionRule()); + after(grammarAccess.getScopeDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -4402,35 +4779,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleBoundedScopeDefinition" + // $ANTLR end "entryRuleScopeDeclaration" - // $ANTLR start "ruleBoundedScopeDefinition" - // InternalSolverLanguageParser.g:1473:1: ruleBoundedScopeDefinition : ( ( rule__BoundedScopeDefinition__Group__0 ) ) ; - public final void ruleBoundedScopeDefinition() throws RecognitionException { + // $ANTLR start "ruleScopeDeclaration" + // InternalSolverLanguageParser.g:1603:1: ruleScopeDeclaration : ( ( rule__ScopeDeclaration__Alternatives ) ) ; + public final void ruleScopeDeclaration() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1477:2: ( ( ( rule__BoundedScopeDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1478:2: ( ( rule__BoundedScopeDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:1607:2: ( ( ( rule__ScopeDeclaration__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1608:2: ( ( rule__ScopeDeclaration__Alternatives ) ) { - // InternalSolverLanguageParser.g:1478:2: ( ( rule__BoundedScopeDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:1479:3: ( rule__BoundedScopeDefinition__Group__0 ) + // InternalSolverLanguageParser.g:1608:2: ( ( rule__ScopeDeclaration__Alternatives ) ) + // InternalSolverLanguageParser.g:1609:3: ( rule__ScopeDeclaration__Alternatives ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:1480:3: ( rule__BoundedScopeDefinition__Group__0 ) - // InternalSolverLanguageParser.g:1480:4: rule__BoundedScopeDefinition__Group__0 + before(grammarAccess.getScopeDeclarationAccess().getAlternatives()); + // InternalSolverLanguageParser.g:1610:3: ( rule__ScopeDeclaration__Alternatives ) + // InternalSolverLanguageParser.g:1610:4: rule__ScopeDeclaration__Alternatives { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group__0(); + rule__ScopeDeclaration__Alternatives(); state._fsp--; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup()); + after(grammarAccess.getScopeDeclarationAccess().getAlternatives()); } @@ -4449,23 +4826,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleBoundedScopeDefinition" + // $ANTLR end "ruleScopeDeclaration" - // $ANTLR start "entryRuleLowerBoundedScopeDefinition" - // InternalSolverLanguageParser.g:1489:1: entryRuleLowerBoundedScopeDefinition : ruleLowerBoundedScopeDefinition EOF ; - public final void entryRuleLowerBoundedScopeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleExactScope" + // InternalSolverLanguageParser.g:1619:1: entryRuleExactScope : ruleExactScope EOF ; + public final void entryRuleExactScope() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1490:1: ( ruleLowerBoundedScopeDefinition EOF ) - // InternalSolverLanguageParser.g:1491:1: ruleLowerBoundedScopeDefinition EOF + // InternalSolverLanguageParser.g:1620:1: ( ruleExactScope EOF ) + // InternalSolverLanguageParser.g:1621:1: ruleExactScope EOF { - before(grammarAccess.getLowerBoundedScopeDefinitionRule()); + before(grammarAccess.getExactScopeRule()); pushFollow(FOLLOW_1); - ruleLowerBoundedScopeDefinition(); + ruleExactScope(); state._fsp--; - after(grammarAccess.getLowerBoundedScopeDefinitionRule()); + after(grammarAccess.getExactScopeRule()); match(input,EOF,FOLLOW_2); } @@ -4479,35 +4856,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleLowerBoundedScopeDefinition" + // $ANTLR end "entryRuleExactScope" - // $ANTLR start "ruleLowerBoundedScopeDefinition" - // InternalSolverLanguageParser.g:1498:1: ruleLowerBoundedScopeDefinition : ( ( rule__LowerBoundedScopeDefinition__Group__0 ) ) ; - public final void ruleLowerBoundedScopeDefinition() throws RecognitionException { + // $ANTLR start "ruleExactScope" + // InternalSolverLanguageParser.g:1628:1: ruleExactScope : ( ( rule__ExactScope__Group__0 ) ) ; + public final void ruleExactScope() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1502:2: ( ( ( rule__LowerBoundedScopeDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1503:2: ( ( rule__LowerBoundedScopeDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:1632:2: ( ( ( rule__ExactScope__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1633:2: ( ( rule__ExactScope__Group__0 ) ) { - // InternalSolverLanguageParser.g:1503:2: ( ( rule__LowerBoundedScopeDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:1504:3: ( rule__LowerBoundedScopeDefinition__Group__0 ) + // InternalSolverLanguageParser.g:1633:2: ( ( rule__ExactScope__Group__0 ) ) + // InternalSolverLanguageParser.g:1634:3: ( rule__ExactScope__Group__0 ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:1505:3: ( rule__LowerBoundedScopeDefinition__Group__0 ) - // InternalSolverLanguageParser.g:1505:4: rule__LowerBoundedScopeDefinition__Group__0 + before(grammarAccess.getExactScopeAccess().getGroup()); + // InternalSolverLanguageParser.g:1635:3: ( rule__ExactScope__Group__0 ) + // InternalSolverLanguageParser.g:1635:4: rule__ExactScope__Group__0 { pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group__0(); + rule__ExactScope__Group__0(); state._fsp--; } - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup()); + after(grammarAccess.getExactScopeAccess().getGroup()); } @@ -4526,23 +4903,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleLowerBoundedScopeDefinition" + // $ANTLR end "ruleExactScope" - // $ANTLR start "entryRuleObjectiveDefinition" - // InternalSolverLanguageParser.g:1514:1: entryRuleObjectiveDefinition : ruleObjectiveDefinition EOF ; - public final void entryRuleObjectiveDefinition() throws RecognitionException { + // $ANTLR start "entryRuleBoundedScope" + // InternalSolverLanguageParser.g:1644:1: entryRuleBoundedScope : ruleBoundedScope EOF ; + public final void entryRuleBoundedScope() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1515:1: ( ruleObjectiveDefinition EOF ) - // InternalSolverLanguageParser.g:1516:1: ruleObjectiveDefinition EOF + // InternalSolverLanguageParser.g:1645:1: ( ruleBoundedScope EOF ) + // InternalSolverLanguageParser.g:1646:1: ruleBoundedScope EOF { - before(grammarAccess.getObjectiveDefinitionRule()); + before(grammarAccess.getBoundedScopeRule()); pushFollow(FOLLOW_1); - ruleObjectiveDefinition(); + ruleBoundedScope(); state._fsp--; - after(grammarAccess.getObjectiveDefinitionRule()); + after(grammarAccess.getBoundedScopeRule()); match(input,EOF,FOLLOW_2); } @@ -4556,35 +4933,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleObjectiveDefinition" + // $ANTLR end "entryRuleBoundedScope" - // $ANTLR start "ruleObjectiveDefinition" - // InternalSolverLanguageParser.g:1523:1: ruleObjectiveDefinition : ( ( rule__ObjectiveDefinition__Group__0 ) ) ; - public final void ruleObjectiveDefinition() throws RecognitionException { + // $ANTLR start "ruleBoundedScope" + // InternalSolverLanguageParser.g:1653:1: ruleBoundedScope : ( ( rule__BoundedScope__Group__0 ) ) ; + public final void ruleBoundedScope() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1527:2: ( ( ( rule__ObjectiveDefinition__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1528:2: ( ( rule__ObjectiveDefinition__Group__0 ) ) + // InternalSolverLanguageParser.g:1657:2: ( ( ( rule__BoundedScope__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1658:2: ( ( rule__BoundedScope__Group__0 ) ) { - // InternalSolverLanguageParser.g:1528:2: ( ( rule__ObjectiveDefinition__Group__0 ) ) - // InternalSolverLanguageParser.g:1529:3: ( rule__ObjectiveDefinition__Group__0 ) + // InternalSolverLanguageParser.g:1658:2: ( ( rule__BoundedScope__Group__0 ) ) + // InternalSolverLanguageParser.g:1659:3: ( rule__BoundedScope__Group__0 ) { - before(grammarAccess.getObjectiveDefinitionAccess().getGroup()); - // InternalSolverLanguageParser.g:1530:3: ( rule__ObjectiveDefinition__Group__0 ) - // InternalSolverLanguageParser.g:1530:4: rule__ObjectiveDefinition__Group__0 + before(grammarAccess.getBoundedScopeAccess().getGroup()); + // InternalSolverLanguageParser.g:1660:3: ( rule__BoundedScope__Group__0 ) + // InternalSolverLanguageParser.g:1660:4: rule__BoundedScope__Group__0 { pushFollow(FOLLOW_2); - rule__ObjectiveDefinition__Group__0(); + rule__BoundedScope__Group__0(); state._fsp--; } - after(grammarAccess.getObjectiveDefinitionAccess().getGroup()); + after(grammarAccess.getBoundedScopeAccess().getGroup()); } @@ -4603,23 +4980,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleObjectiveDefinition" + // $ANTLR end "ruleBoundedScope" - // $ANTLR start "entryRuleUpperMultiplicty" - // InternalSolverLanguageParser.g:1539:1: entryRuleUpperMultiplicty : ruleUpperMultiplicty EOF ; - public final void entryRuleUpperMultiplicty() throws RecognitionException { + // $ANTLR start "entryRuleLowerBoundedScope" + // InternalSolverLanguageParser.g:1669:1: entryRuleLowerBoundedScope : ruleLowerBoundedScope EOF ; + public final void entryRuleLowerBoundedScope() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1540:1: ( ruleUpperMultiplicty EOF ) - // InternalSolverLanguageParser.g:1541:1: ruleUpperMultiplicty EOF + // InternalSolverLanguageParser.g:1670:1: ( ruleLowerBoundedScope EOF ) + // InternalSolverLanguageParser.g:1671:1: ruleLowerBoundedScope EOF { - before(grammarAccess.getUpperMultiplictyRule()); + before(grammarAccess.getLowerBoundedScopeRule()); pushFollow(FOLLOW_1); - ruleUpperMultiplicty(); + ruleLowerBoundedScope(); state._fsp--; - after(grammarAccess.getUpperMultiplictyRule()); + after(grammarAccess.getLowerBoundedScopeRule()); match(input,EOF,FOLLOW_2); } @@ -4633,35 +5010,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "entryRuleUpperMultiplicty" + // $ANTLR end "entryRuleLowerBoundedScope" - // $ANTLR start "ruleUpperMultiplicty" - // InternalSolverLanguageParser.g:1548:1: ruleUpperMultiplicty : ( ( rule__UpperMultiplicty__Alternatives ) ) ; - public final void ruleUpperMultiplicty() throws RecognitionException { + // $ANTLR start "ruleLowerBoundedScope" + // InternalSolverLanguageParser.g:1678:1: ruleLowerBoundedScope : ( ( rule__LowerBoundedScope__Group__0 ) ) ; + public final void ruleLowerBoundedScope() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1552:2: ( ( ( rule__UpperMultiplicty__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1553:2: ( ( rule__UpperMultiplicty__Alternatives ) ) + // InternalSolverLanguageParser.g:1682:2: ( ( ( rule__LowerBoundedScope__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1683:2: ( ( rule__LowerBoundedScope__Group__0 ) ) { - // InternalSolverLanguageParser.g:1553:2: ( ( rule__UpperMultiplicty__Alternatives ) ) - // InternalSolverLanguageParser.g:1554:3: ( rule__UpperMultiplicty__Alternatives ) + // InternalSolverLanguageParser.g:1683:2: ( ( rule__LowerBoundedScope__Group__0 ) ) + // InternalSolverLanguageParser.g:1684:3: ( rule__LowerBoundedScope__Group__0 ) { - before(grammarAccess.getUpperMultiplictyAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1555:3: ( rule__UpperMultiplicty__Alternatives ) - // InternalSolverLanguageParser.g:1555:4: rule__UpperMultiplicty__Alternatives + before(grammarAccess.getLowerBoundedScopeAccess().getGroup()); + // InternalSolverLanguageParser.g:1685:3: ( rule__LowerBoundedScope__Group__0 ) + // InternalSolverLanguageParser.g:1685:4: rule__LowerBoundedScope__Group__0 { pushFollow(FOLLOW_2); - rule__UpperMultiplicty__Alternatives(); + rule__LowerBoundedScope__Group__0(); state._fsp--; } - after(grammarAccess.getUpperMultiplictyAccess().getAlternatives()); + after(grammarAccess.getLowerBoundedScopeAccess().getGroup()); } @@ -4680,26 +5057,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleUpperMultiplicty" - + // $ANTLR end "ruleLowerBoundedScope" - // $ANTLR start "entryRuleReal" - // InternalSolverLanguageParser.g:1564:1: entryRuleReal : ruleReal EOF ; - public final void entryRuleReal() throws RecognitionException { - - HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); + // $ANTLR start "entryRuleObjectiveDeclaration" + // InternalSolverLanguageParser.g:1694:1: entryRuleObjectiveDeclaration : ruleObjectiveDeclaration EOF ; + public final void entryRuleObjectiveDeclaration() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1568:1: ( ruleReal EOF ) - // InternalSolverLanguageParser.g:1569:1: ruleReal EOF + // InternalSolverLanguageParser.g:1695:1: ( ruleObjectiveDeclaration EOF ) + // InternalSolverLanguageParser.g:1696:1: ruleObjectiveDeclaration EOF { - before(grammarAccess.getRealRule()); + before(grammarAccess.getObjectiveDeclarationRule()); pushFollow(FOLLOW_1); - ruleReal(); + ruleObjectiveDeclaration(); state._fsp--; - after(grammarAccess.getRealRule()); + after(grammarAccess.getObjectiveDeclarationRule()); match(input,EOF,FOLLOW_2); } @@ -4710,42 +5084,38 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP recover(input,re); } finally { - - myHiddenTokenState.restore(); - } return ; } - // $ANTLR end "entryRuleReal" + // $ANTLR end "entryRuleObjectiveDeclaration" - // $ANTLR start "ruleReal" - // InternalSolverLanguageParser.g:1579:1: ruleReal : ( ( rule__Real__Group__0 ) ) ; - public final void ruleReal() throws RecognitionException { + // $ANTLR start "ruleObjectiveDeclaration" + // InternalSolverLanguageParser.g:1703:1: ruleObjectiveDeclaration : ( ( rule__ObjectiveDeclaration__Group__0 ) ) ; + public final void ruleObjectiveDeclaration() throws RecognitionException { - HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1584:2: ( ( ( rule__Real__Group__0 ) ) ) - // InternalSolverLanguageParser.g:1585:2: ( ( rule__Real__Group__0 ) ) + // InternalSolverLanguageParser.g:1707:2: ( ( ( rule__ObjectiveDeclaration__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1708:2: ( ( rule__ObjectiveDeclaration__Group__0 ) ) { - // InternalSolverLanguageParser.g:1585:2: ( ( rule__Real__Group__0 ) ) - // InternalSolverLanguageParser.g:1586:3: ( rule__Real__Group__0 ) + // InternalSolverLanguageParser.g:1708:2: ( ( rule__ObjectiveDeclaration__Group__0 ) ) + // InternalSolverLanguageParser.g:1709:3: ( rule__ObjectiveDeclaration__Group__0 ) { - before(grammarAccess.getRealAccess().getGroup()); - // InternalSolverLanguageParser.g:1587:3: ( rule__Real__Group__0 ) - // InternalSolverLanguageParser.g:1587:4: rule__Real__Group__0 + before(grammarAccess.getObjectiveDeclarationAccess().getGroup()); + // InternalSolverLanguageParser.g:1710:3: ( rule__ObjectiveDeclaration__Group__0 ) + // InternalSolverLanguageParser.g:1710:4: rule__ObjectiveDeclaration__Group__0 { pushFollow(FOLLOW_2); - rule__Real__Group__0(); + rule__ObjectiveDeclaration__Group__0(); state._fsp--; } - after(grammarAccess.getRealAccess().getGroup()); + after(grammarAccess.getObjectiveDeclarationAccess().getGroup()); } @@ -4760,31 +5130,27 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP finally { restoreStackSize(stackSize); - myHiddenTokenState.restore(); } return ; } - // $ANTLR end "ruleReal" - + // $ANTLR end "ruleObjectiveDeclaration" - // $ANTLR start "entryRuleQualifiedName" - // InternalSolverLanguageParser.g:1597:1: entryRuleQualifiedName : ruleQualifiedName EOF ; - public final void entryRuleQualifiedName() throws RecognitionException { - - HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); + // $ANTLR start "entryRuleUpperMultiplicty" + // InternalSolverLanguageParser.g:1719:1: entryRuleUpperMultiplicty : ruleUpperMultiplicty EOF ; + public final void entryRuleUpperMultiplicty() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1601:1: ( ruleQualifiedName EOF ) - // InternalSolverLanguageParser.g:1602:1: ruleQualifiedName EOF + // InternalSolverLanguageParser.g:1720:1: ( ruleUpperMultiplicty EOF ) + // InternalSolverLanguageParser.g:1721:1: ruleUpperMultiplicty EOF { - before(grammarAccess.getQualifiedNameRule()); + before(grammarAccess.getUpperMultiplictyRule()); pushFollow(FOLLOW_1); - ruleQualifiedName(); + ruleUpperMultiplicty(); state._fsp--; - after(grammarAccess.getQualifiedNameRule()); + after(grammarAccess.getUpperMultiplictyRule()); match(input,EOF,FOLLOW_2); } @@ -4795,42 +5161,38 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP recover(input,re); } finally { - - myHiddenTokenState.restore(); - } return ; } - // $ANTLR end "entryRuleQualifiedName" + // $ANTLR end "entryRuleUpperMultiplicty" - // $ANTLR start "ruleQualifiedName" - // InternalSolverLanguageParser.g:1612:1: ruleQualifiedName : ( ( rule__QualifiedName__Alternatives ) ) ; - public final void ruleQualifiedName() throws RecognitionException { + // $ANTLR start "ruleUpperMultiplicty" + // InternalSolverLanguageParser.g:1728:1: ruleUpperMultiplicty : ( ( rule__UpperMultiplicty__Alternatives ) ) ; + public final void ruleUpperMultiplicty() throws RecognitionException { - HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1617:2: ( ( ( rule__QualifiedName__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1618:2: ( ( rule__QualifiedName__Alternatives ) ) + // InternalSolverLanguageParser.g:1732:2: ( ( ( rule__UpperMultiplicty__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1733:2: ( ( rule__UpperMultiplicty__Alternatives ) ) { - // InternalSolverLanguageParser.g:1618:2: ( ( rule__QualifiedName__Alternatives ) ) - // InternalSolverLanguageParser.g:1619:3: ( rule__QualifiedName__Alternatives ) + // InternalSolverLanguageParser.g:1733:2: ( ( rule__UpperMultiplicty__Alternatives ) ) + // InternalSolverLanguageParser.g:1734:3: ( rule__UpperMultiplicty__Alternatives ) { - before(grammarAccess.getQualifiedNameAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1620:3: ( rule__QualifiedName__Alternatives ) - // InternalSolverLanguageParser.g:1620:4: rule__QualifiedName__Alternatives + before(grammarAccess.getUpperMultiplictyAccess().getAlternatives()); + // InternalSolverLanguageParser.g:1735:3: ( rule__UpperMultiplicty__Alternatives ) + // InternalSolverLanguageParser.g:1735:4: rule__UpperMultiplicty__Alternatives { pushFollow(FOLLOW_2); - rule__QualifiedName__Alternatives(); + rule__UpperMultiplicty__Alternatives(); state._fsp--; } - after(grammarAccess.getQualifiedNameAccess().getAlternatives()); + after(grammarAccess.getUpperMultiplictyAccess().getAlternatives()); } @@ -4845,39 +5207,31 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP finally { restoreStackSize(stackSize); - myHiddenTokenState.restore(); } return ; } - // $ANTLR end "ruleQualifiedName" + // $ANTLR end "ruleUpperMultiplicty" - // $ANTLR start "ruleImplicationOperator" - // InternalSolverLanguageParser.g:1630:1: ruleImplicationOperator : ( ( EqualsSignGreaterThanSign ) ) ; - public final void ruleImplicationOperator() throws RecognitionException { + // $ANTLR start "entryRuleReal" + // InternalSolverLanguageParser.g:1744:1: entryRuleReal : ruleReal EOF ; + public final void entryRuleReal() throws RecognitionException { + + HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); - int stackSize = keepStackSize(); - try { - // InternalSolverLanguageParser.g:1634:1: ( ( ( EqualsSignGreaterThanSign ) ) ) - // InternalSolverLanguageParser.g:1635:2: ( ( EqualsSignGreaterThanSign ) ) - { - // InternalSolverLanguageParser.g:1635:2: ( ( EqualsSignGreaterThanSign ) ) - // InternalSolverLanguageParser.g:1636:3: ( EqualsSignGreaterThanSign ) - { - before(grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration()); - // InternalSolverLanguageParser.g:1637:3: ( EqualsSignGreaterThanSign ) - // InternalSolverLanguageParser.g:1637:4: EqualsSignGreaterThanSign + // InternalSolverLanguageParser.g:1748:1: ( ruleReal EOF ) + // InternalSolverLanguageParser.g:1749:1: ruleReal EOF { - match(input,EqualsSignGreaterThanSign,FOLLOW_2); - - } - - after(grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration()); + before(grammarAccess.getRealRule()); + pushFollow(FOLLOW_1); + ruleReal(); - } + state._fsp--; + after(grammarAccess.getRealRule()); + match(input,EOF,FOLLOW_2); } @@ -4888,40 +5242,41 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } finally { - restoreStackSize(stackSize); + myHiddenTokenState.restore(); } return ; } - // $ANTLR end "ruleImplicationOperator" + // $ANTLR end "entryRuleReal" - // $ANTLR start "ruleComparisonOperator" - // InternalSolverLanguageParser.g:1646:1: ruleComparisonOperator : ( ( rule__ComparisonOperator__Alternatives ) ) ; - public final void ruleComparisonOperator() throws RecognitionException { + // $ANTLR start "ruleReal" + // InternalSolverLanguageParser.g:1759:1: ruleReal : ( ( rule__Real__Group__0 ) ) ; + public final void ruleReal() throws RecognitionException { + HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1650:1: ( ( ( rule__ComparisonOperator__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1651:2: ( ( rule__ComparisonOperator__Alternatives ) ) + // InternalSolverLanguageParser.g:1764:2: ( ( ( rule__Real__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1765:2: ( ( rule__Real__Group__0 ) ) { - // InternalSolverLanguageParser.g:1651:2: ( ( rule__ComparisonOperator__Alternatives ) ) - // InternalSolverLanguageParser.g:1652:3: ( rule__ComparisonOperator__Alternatives ) + // InternalSolverLanguageParser.g:1765:2: ( ( rule__Real__Group__0 ) ) + // InternalSolverLanguageParser.g:1766:3: ( rule__Real__Group__0 ) { - before(grammarAccess.getComparisonOperatorAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1653:3: ( rule__ComparisonOperator__Alternatives ) - // InternalSolverLanguageParser.g:1653:4: rule__ComparisonOperator__Alternatives + before(grammarAccess.getRealAccess().getGroup()); + // InternalSolverLanguageParser.g:1767:3: ( rule__Real__Group__0 ) + // InternalSolverLanguageParser.g:1767:4: rule__Real__Group__0 { pushFollow(FOLLOW_2); - rule__ComparisonOperator__Alternatives(); + rule__Real__Group__0(); state._fsp--; } - after(grammarAccess.getComparisonOperatorAccess().getAlternatives()); + after(grammarAccess.getRealAccess().getGroup()); } @@ -4936,42 +5291,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP finally { restoreStackSize(stackSize); + myHiddenTokenState.restore(); } return ; } - // $ANTLR end "ruleComparisonOperator" - + // $ANTLR end "ruleReal" - // $ANTLR start "ruleAdditiveBinaryOperator" - // InternalSolverLanguageParser.g:1662:1: ruleAdditiveBinaryOperator : ( ( rule__AdditiveBinaryOperator__Alternatives ) ) ; - public final void ruleAdditiveBinaryOperator() throws RecognitionException { - int stackSize = keepStackSize(); - + // $ANTLR start "entryRuleQualifiedNameSegment" + // InternalSolverLanguageParser.g:1777:1: entryRuleQualifiedNameSegment : ruleQualifiedNameSegment EOF ; + public final void entryRuleQualifiedNameSegment() throws RecognitionException { try { - // InternalSolverLanguageParser.g:1666:1: ( ( ( rule__AdditiveBinaryOperator__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1667:2: ( ( rule__AdditiveBinaryOperator__Alternatives ) ) - { - // InternalSolverLanguageParser.g:1667:2: ( ( rule__AdditiveBinaryOperator__Alternatives ) ) - // InternalSolverLanguageParser.g:1668:3: ( rule__AdditiveBinaryOperator__Alternatives ) - { - before(grammarAccess.getAdditiveBinaryOperatorAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1669:3: ( rule__AdditiveBinaryOperator__Alternatives ) - // InternalSolverLanguageParser.g:1669:4: rule__AdditiveBinaryOperator__Alternatives + // InternalSolverLanguageParser.g:1778:1: ( ruleQualifiedNameSegment EOF ) + // InternalSolverLanguageParser.g:1779:1: ruleQualifiedNameSegment EOF { - pushFollow(FOLLOW_2); - rule__AdditiveBinaryOperator__Alternatives(); + before(grammarAccess.getQualifiedNameSegmentRule()); + pushFollow(FOLLOW_1); + ruleQualifiedNameSegment(); state._fsp--; - - } - - after(grammarAccess.getAdditiveBinaryOperatorAccess().getAlternatives()); - - } - + after(grammarAccess.getQualifiedNameSegmentRule()); + match(input,EOF,FOLLOW_2); } @@ -4981,41 +5323,38 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP recover(input,re); } finally { - - restoreStackSize(stackSize); - } return ; } - // $ANTLR end "ruleAdditiveBinaryOperator" + // $ANTLR end "entryRuleQualifiedNameSegment" - // $ANTLR start "ruleMultiplicativeBinaryOperator" - // InternalSolverLanguageParser.g:1678:1: ruleMultiplicativeBinaryOperator : ( ( rule__MultiplicativeBinaryOperator__Alternatives ) ) ; - public final void ruleMultiplicativeBinaryOperator() throws RecognitionException { + // $ANTLR start "ruleQualifiedNameSegment" + // InternalSolverLanguageParser.g:1786:1: ruleQualifiedNameSegment : ( ( rule__QualifiedNameSegment__Alternatives ) ) ; + public final void ruleQualifiedNameSegment() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1682:1: ( ( ( rule__MultiplicativeBinaryOperator__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1683:2: ( ( rule__MultiplicativeBinaryOperator__Alternatives ) ) + // InternalSolverLanguageParser.g:1790:2: ( ( ( rule__QualifiedNameSegment__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1791:2: ( ( rule__QualifiedNameSegment__Alternatives ) ) { - // InternalSolverLanguageParser.g:1683:2: ( ( rule__MultiplicativeBinaryOperator__Alternatives ) ) - // InternalSolverLanguageParser.g:1684:3: ( rule__MultiplicativeBinaryOperator__Alternatives ) + // InternalSolverLanguageParser.g:1791:2: ( ( rule__QualifiedNameSegment__Alternatives ) ) + // InternalSolverLanguageParser.g:1792:3: ( rule__QualifiedNameSegment__Alternatives ) { - before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1685:3: ( rule__MultiplicativeBinaryOperator__Alternatives ) - // InternalSolverLanguageParser.g:1685:4: rule__MultiplicativeBinaryOperator__Alternatives + before(grammarAccess.getQualifiedNameSegmentAccess().getAlternatives()); + // InternalSolverLanguageParser.g:1793:3: ( rule__QualifiedNameSegment__Alternatives ) + // InternalSolverLanguageParser.g:1793:4: rule__QualifiedNameSegment__Alternatives { pushFollow(FOLLOW_2); - rule__MultiplicativeBinaryOperator__Alternatives(); + rule__QualifiedNameSegment__Alternatives(); state._fsp--; } - after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getAlternatives()); + after(grammarAccess.getQualifiedNameSegmentAccess().getAlternatives()); } @@ -5034,31 +5373,72 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleMultiplicativeBinaryOperator" + // $ANTLR end "ruleQualifiedNameSegment" - // $ANTLR start "ruleExponentialOp" - // InternalSolverLanguageParser.g:1694:1: ruleExponentialOp : ( ( CircumflexAccent ) ) ; - public final void ruleExponentialOp() throws RecognitionException { + // $ANTLR start "entryRuleQualifiedName" + // InternalSolverLanguageParser.g:1802:1: entryRuleQualifiedName : ruleQualifiedName EOF ; + public final void entryRuleQualifiedName() throws RecognitionException { + + HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); - int stackSize = keepStackSize(); + try { + // InternalSolverLanguageParser.g:1806:1: ( ruleQualifiedName EOF ) + // InternalSolverLanguageParser.g:1807:1: ruleQualifiedName EOF + { + before(grammarAccess.getQualifiedNameRule()); + pushFollow(FOLLOW_1); + ruleQualifiedName(); + + state._fsp--; + + after(grammarAccess.getQualifiedNameRule()); + match(input,EOF,FOLLOW_2); + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + myHiddenTokenState.restore(); + + } + return ; + } + // $ANTLR end "entryRuleQualifiedName" + + + // $ANTLR start "ruleQualifiedName" + // InternalSolverLanguageParser.g:1817:1: ruleQualifiedName : ( ( rule__QualifiedName__Group__0 ) ) ; + public final void ruleQualifiedName() throws RecognitionException { + + HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); + int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1698:1: ( ( ( CircumflexAccent ) ) ) - // InternalSolverLanguageParser.g:1699:2: ( ( CircumflexAccent ) ) + // InternalSolverLanguageParser.g:1822:2: ( ( ( rule__QualifiedName__Group__0 ) ) ) + // InternalSolverLanguageParser.g:1823:2: ( ( rule__QualifiedName__Group__0 ) ) { - // InternalSolverLanguageParser.g:1699:2: ( ( CircumflexAccent ) ) - // InternalSolverLanguageParser.g:1700:3: ( CircumflexAccent ) + // InternalSolverLanguageParser.g:1823:2: ( ( rule__QualifiedName__Group__0 ) ) + // InternalSolverLanguageParser.g:1824:3: ( rule__QualifiedName__Group__0 ) { - before(grammarAccess.getExponentialOpAccess().getPOWEnumLiteralDeclaration()); - // InternalSolverLanguageParser.g:1701:3: ( CircumflexAccent ) - // InternalSolverLanguageParser.g:1701:4: CircumflexAccent + before(grammarAccess.getQualifiedNameAccess().getGroup()); + // InternalSolverLanguageParser.g:1825:3: ( rule__QualifiedName__Group__0 ) + // InternalSolverLanguageParser.g:1825:4: rule__QualifiedName__Group__0 { - match(input,CircumflexAccent,FOLLOW_2); + pushFollow(FOLLOW_2); + rule__QualifiedName__Group__0(); + + state._fsp--; + } - after(grammarAccess.getExponentialOpAccess().getPOWEnumLiteralDeclaration()); + after(grammarAccess.getQualifiedNameAccess().getGroup()); } @@ -5073,39 +5453,224 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP finally { restoreStackSize(stackSize); + myHiddenTokenState.restore(); } return ; } - // $ANTLR end "ruleExponentialOp" + // $ANTLR end "ruleQualifiedName" + + + // $ANTLR start "ruleAttributeKind" + // InternalSolverLanguageParser.g:1835:1: ruleAttributeKind : ( ( rule__AttributeKind__Alternatives ) ) ; + public final void ruleAttributeKind() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:1839:1: ( ( ( rule__AttributeKind__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1840:2: ( ( rule__AttributeKind__Alternatives ) ) + { + // InternalSolverLanguageParser.g:1840:2: ( ( rule__AttributeKind__Alternatives ) ) + // InternalSolverLanguageParser.g:1841:3: ( rule__AttributeKind__Alternatives ) + { + before(grammarAccess.getAttributeKindAccess().getAlternatives()); + // InternalSolverLanguageParser.g:1842:3: ( rule__AttributeKind__Alternatives ) + // InternalSolverLanguageParser.g:1842:4: rule__AttributeKind__Alternatives + { + pushFollow(FOLLOW_2); + rule__AttributeKind__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getAttributeKindAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleAttributeKind" + + + // $ANTLR start "ruleComparisonOperator" + // InternalSolverLanguageParser.g:1851:1: ruleComparisonOperator : ( ( rule__ComparisonOperator__Alternatives ) ) ; + public final void ruleComparisonOperator() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:1855:1: ( ( ( rule__ComparisonOperator__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1856:2: ( ( rule__ComparisonOperator__Alternatives ) ) + { + // InternalSolverLanguageParser.g:1856:2: ( ( rule__ComparisonOperator__Alternatives ) ) + // InternalSolverLanguageParser.g:1857:3: ( rule__ComparisonOperator__Alternatives ) + { + before(grammarAccess.getComparisonOperatorAccess().getAlternatives()); + // InternalSolverLanguageParser.g:1858:3: ( rule__ComparisonOperator__Alternatives ) + // InternalSolverLanguageParser.g:1858:4: rule__ComparisonOperator__Alternatives + { + pushFollow(FOLLOW_2); + rule__ComparisonOperator__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getComparisonOperatorAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleComparisonOperator" + + + // $ANTLR start "ruleAdditiveBinaryOperator" + // InternalSolverLanguageParser.g:1867:1: ruleAdditiveBinaryOperator : ( ( rule__AdditiveBinaryOperator__Alternatives ) ) ; + public final void ruleAdditiveBinaryOperator() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:1871:1: ( ( ( rule__AdditiveBinaryOperator__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1872:2: ( ( rule__AdditiveBinaryOperator__Alternatives ) ) + { + // InternalSolverLanguageParser.g:1872:2: ( ( rule__AdditiveBinaryOperator__Alternatives ) ) + // InternalSolverLanguageParser.g:1873:3: ( rule__AdditiveBinaryOperator__Alternatives ) + { + before(grammarAccess.getAdditiveBinaryOperatorAccess().getAlternatives()); + // InternalSolverLanguageParser.g:1874:3: ( rule__AdditiveBinaryOperator__Alternatives ) + // InternalSolverLanguageParser.g:1874:4: rule__AdditiveBinaryOperator__Alternatives + { + pushFollow(FOLLOW_2); + rule__AdditiveBinaryOperator__Alternatives(); + + state._fsp--; + + + } + + after(grammarAccess.getAdditiveBinaryOperatorAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + } + return ; + } + // $ANTLR end "ruleAdditiveBinaryOperator" - // $ANTLR start "ruleUnaryOp" - // InternalSolverLanguageParser.g:1710:1: ruleUnaryOp : ( ( rule__UnaryOp__Alternatives ) ) ; - public final void ruleUnaryOp() throws RecognitionException { + + // $ANTLR start "ruleMultiplicativeBinaryOperator" + // InternalSolverLanguageParser.g:1883:1: ruleMultiplicativeBinaryOperator : ( ( rule__MultiplicativeBinaryOperator__Alternatives ) ) ; + public final void ruleMultiplicativeBinaryOperator() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1714:1: ( ( ( rule__UnaryOp__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1715:2: ( ( rule__UnaryOp__Alternatives ) ) + // InternalSolverLanguageParser.g:1887:1: ( ( ( rule__MultiplicativeBinaryOperator__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1888:2: ( ( rule__MultiplicativeBinaryOperator__Alternatives ) ) { - // InternalSolverLanguageParser.g:1715:2: ( ( rule__UnaryOp__Alternatives ) ) - // InternalSolverLanguageParser.g:1716:3: ( rule__UnaryOp__Alternatives ) + // InternalSolverLanguageParser.g:1888:2: ( ( rule__MultiplicativeBinaryOperator__Alternatives ) ) + // InternalSolverLanguageParser.g:1889:3: ( rule__MultiplicativeBinaryOperator__Alternatives ) { - before(grammarAccess.getUnaryOpAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1717:3: ( rule__UnaryOp__Alternatives ) - // InternalSolverLanguageParser.g:1717:4: rule__UnaryOp__Alternatives + before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getAlternatives()); + // InternalSolverLanguageParser.g:1890:3: ( rule__MultiplicativeBinaryOperator__Alternatives ) + // InternalSolverLanguageParser.g:1890:4: rule__MultiplicativeBinaryOperator__Alternatives { pushFollow(FOLLOW_2); - rule__UnaryOp__Alternatives(); + rule__MultiplicativeBinaryOperator__Alternatives(); state._fsp--; } - after(grammarAccess.getUnaryOpAccess().getAlternatives()); + after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getAlternatives()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "ruleMultiplicativeBinaryOperator" + + + // $ANTLR start "ruleExponentialOp" + // InternalSolverLanguageParser.g:1899:1: ruleExponentialOp : ( ( CircumflexAccent ) ) ; + public final void ruleExponentialOp() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:1903:1: ( ( ( CircumflexAccent ) ) ) + // InternalSolverLanguageParser.g:1904:2: ( ( CircumflexAccent ) ) + { + // InternalSolverLanguageParser.g:1904:2: ( ( CircumflexAccent ) ) + // InternalSolverLanguageParser.g:1905:3: ( CircumflexAccent ) + { + before(grammarAccess.getExponentialOpAccess().getPOWEnumLiteralDeclaration()); + // InternalSolverLanguageParser.g:1906:3: ( CircumflexAccent ) + // InternalSolverLanguageParser.g:1906:4: CircumflexAccent + { + match(input,CircumflexAccent,FOLLOW_2); + + } + + after(grammarAccess.getExponentialOpAccess().getPOWEnumLiteralDeclaration()); } @@ -5124,35 +5689,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleUnaryOp" + // $ANTLR end "ruleExponentialOp" - // $ANTLR start "ruleQuantifier" - // InternalSolverLanguageParser.g:1726:1: ruleQuantifier : ( ( rule__Quantifier__Alternatives ) ) ; - public final void ruleQuantifier() throws RecognitionException { + // $ANTLR start "ruleUnaryOperator" + // InternalSolverLanguageParser.g:1915:1: ruleUnaryOperator : ( ( rule__UnaryOperator__Alternatives ) ) ; + public final void ruleUnaryOperator() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1730:1: ( ( ( rule__Quantifier__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1731:2: ( ( rule__Quantifier__Alternatives ) ) + // InternalSolverLanguageParser.g:1919:1: ( ( ( rule__UnaryOperator__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1920:2: ( ( rule__UnaryOperator__Alternatives ) ) { - // InternalSolverLanguageParser.g:1731:2: ( ( rule__Quantifier__Alternatives ) ) - // InternalSolverLanguageParser.g:1732:3: ( rule__Quantifier__Alternatives ) + // InternalSolverLanguageParser.g:1920:2: ( ( rule__UnaryOperator__Alternatives ) ) + // InternalSolverLanguageParser.g:1921:3: ( rule__UnaryOperator__Alternatives ) { - before(grammarAccess.getQuantifierAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1733:3: ( rule__Quantifier__Alternatives ) - // InternalSolverLanguageParser.g:1733:4: rule__Quantifier__Alternatives + before(grammarAccess.getUnaryOperatorAccess().getAlternatives()); + // InternalSolverLanguageParser.g:1922:3: ( rule__UnaryOperator__Alternatives ) + // InternalSolverLanguageParser.g:1922:4: rule__UnaryOperator__Alternatives { pushFollow(FOLLOW_2); - rule__Quantifier__Alternatives(); + rule__UnaryOperator__Alternatives(); state._fsp--; } - after(grammarAccess.getQuantifierAccess().getAlternatives()); + after(grammarAccess.getUnaryOperatorAccess().getAlternatives()); } @@ -5171,25 +5736,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "ruleQuantifier" + // $ANTLR end "ruleUnaryOperator" // $ANTLR start "ruleLogicValue" - // InternalSolverLanguageParser.g:1742:1: ruleLogicValue : ( ( rule__LogicValue__Alternatives ) ) ; + // InternalSolverLanguageParser.g:1931:1: ruleLogicValue : ( ( rule__LogicValue__Alternatives ) ) ; public final void ruleLogicValue() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1746:1: ( ( ( rule__LogicValue__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1747:2: ( ( rule__LogicValue__Alternatives ) ) + // InternalSolverLanguageParser.g:1935:1: ( ( ( rule__LogicValue__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1936:2: ( ( rule__LogicValue__Alternatives ) ) { - // InternalSolverLanguageParser.g:1747:2: ( ( rule__LogicValue__Alternatives ) ) - // InternalSolverLanguageParser.g:1748:3: ( rule__LogicValue__Alternatives ) + // InternalSolverLanguageParser.g:1936:2: ( ( rule__LogicValue__Alternatives ) ) + // InternalSolverLanguageParser.g:1937:3: ( rule__LogicValue__Alternatives ) { before(grammarAccess.getLogicValueAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1749:3: ( rule__LogicValue__Alternatives ) - // InternalSolverLanguageParser.g:1749:4: rule__LogicValue__Alternatives + // InternalSolverLanguageParser.g:1938:3: ( rule__LogicValue__Alternatives ) + // InternalSolverLanguageParser.g:1938:4: rule__LogicValue__Alternatives { pushFollow(FOLLOW_2); rule__LogicValue__Alternatives(); @@ -5222,21 +5787,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "ruleObjectiveKind" - // InternalSolverLanguageParser.g:1758:1: ruleObjectiveKind : ( ( rule__ObjectiveKind__Alternatives ) ) ; + // InternalSolverLanguageParser.g:1947:1: ruleObjectiveKind : ( ( rule__ObjectiveKind__Alternatives ) ) ; public final void ruleObjectiveKind() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1762:1: ( ( ( rule__ObjectiveKind__Alternatives ) ) ) - // InternalSolverLanguageParser.g:1763:2: ( ( rule__ObjectiveKind__Alternatives ) ) + // InternalSolverLanguageParser.g:1951:1: ( ( ( rule__ObjectiveKind__Alternatives ) ) ) + // InternalSolverLanguageParser.g:1952:2: ( ( rule__ObjectiveKind__Alternatives ) ) { - // InternalSolverLanguageParser.g:1763:2: ( ( rule__ObjectiveKind__Alternatives ) ) - // InternalSolverLanguageParser.g:1764:3: ( rule__ObjectiveKind__Alternatives ) + // InternalSolverLanguageParser.g:1952:2: ( ( rule__ObjectiveKind__Alternatives ) ) + // InternalSolverLanguageParser.g:1953:3: ( rule__ObjectiveKind__Alternatives ) { before(grammarAccess.getObjectiveKindAccess().getAlternatives()); - // InternalSolverLanguageParser.g:1765:3: ( rule__ObjectiveKind__Alternatives ) - // InternalSolverLanguageParser.g:1765:4: rule__ObjectiveKind__Alternatives + // InternalSolverLanguageParser.g:1954:3: ( rule__ObjectiveKind__Alternatives ) + // InternalSolverLanguageParser.g:1954:4: rule__ObjectiveKind__Alternatives { pushFollow(FOLLOW_2); rule__ObjectiveKind__Alternatives(); @@ -5268,30 +5833,30 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "ruleObjectiveKind" - // $ANTLR start "rule__Statement__Alternatives_0" - // InternalSolverLanguageParser.g:1773:1: rule__Statement__Alternatives_0 : ( ( ruleAssertionOrDefinition ) | ( rulePredicateDefinition ) | ( ruleUnnamedErrorPrediateDefinition ) | ( ruleDefaultDefinition ) | ( ruleMetricDefinition ) | ( ruleExternPredicateDefinition ) | ( ruleExternMetricDefinition ) | ( ruleExternAggregatorDefinition ) | ( ruleExternDatatypeDefinition ) | ( ruleClassDefinition ) | ( ruleScopeDefinition ) | ( ruleObjectiveDefinition ) ); - public final void rule__Statement__Alternatives_0() throws RecognitionException { + // $ANTLR start "rule__Statement__Alternatives" + // InternalSolverLanguageParser.g:1962:1: rule__Statement__Alternatives : ( ( ruleAssertionOrDefinition ) | ( rulePredicateDefinition ) | ( ruleUnnamedErrorPredicateDefintion ) | ( ruleDefaultAssertion ) | ( ruleFunctionDefinition ) | ( ruleAttribute ) | ( ruleExternDeclaration ) | ( ruleScopeDeclaration ) | ( ruleObjectiveDeclaration ) | ( ruleClassDeclaration ) | ( ruleEnumDeclaration ) ); + public final void rule__Statement__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1777:1: ( ( ruleAssertionOrDefinition ) | ( rulePredicateDefinition ) | ( ruleUnnamedErrorPrediateDefinition ) | ( ruleDefaultDefinition ) | ( ruleMetricDefinition ) | ( ruleExternPredicateDefinition ) | ( ruleExternMetricDefinition ) | ( ruleExternAggregatorDefinition ) | ( ruleExternDatatypeDefinition ) | ( ruleClassDefinition ) | ( ruleScopeDefinition ) | ( ruleObjectiveDefinition ) ) - int alt2=12; - alt2 = dfa2.predict(input); - switch (alt2) { + // InternalSolverLanguageParser.g:1966:1: ( ( ruleAssertionOrDefinition ) | ( rulePredicateDefinition ) | ( ruleUnnamedErrorPredicateDefintion ) | ( ruleDefaultAssertion ) | ( ruleFunctionDefinition ) | ( ruleAttribute ) | ( ruleExternDeclaration ) | ( ruleScopeDeclaration ) | ( ruleObjectiveDeclaration ) | ( ruleClassDeclaration ) | ( ruleEnumDeclaration ) ) + int alt1=11; + alt1 = dfa1.predict(input); + switch (alt1) { case 1 : - // InternalSolverLanguageParser.g:1778:2: ( ruleAssertionOrDefinition ) + // InternalSolverLanguageParser.g:1967:2: ( ruleAssertionOrDefinition ) { - // InternalSolverLanguageParser.g:1778:2: ( ruleAssertionOrDefinition ) - // InternalSolverLanguageParser.g:1779:3: ruleAssertionOrDefinition + // InternalSolverLanguageParser.g:1967:2: ( ruleAssertionOrDefinition ) + // InternalSolverLanguageParser.g:1968:3: ruleAssertionOrDefinition { - before(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0_0()); + before(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0()); pushFollow(FOLLOW_2); ruleAssertionOrDefinition(); state._fsp--; - after(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0_0()); + after(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0()); } @@ -5299,18 +5864,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:1784:2: ( rulePredicateDefinition ) + // InternalSolverLanguageParser.g:1973:2: ( rulePredicateDefinition ) { - // InternalSolverLanguageParser.g:1784:2: ( rulePredicateDefinition ) - // InternalSolverLanguageParser.g:1785:3: rulePredicateDefinition + // InternalSolverLanguageParser.g:1973:2: ( rulePredicateDefinition ) + // InternalSolverLanguageParser.g:1974:3: rulePredicateDefinition { - before(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_0_1()); + before(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_1()); pushFollow(FOLLOW_2); rulePredicateDefinition(); state._fsp--; - after(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_0_1()); + after(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_1()); } @@ -5318,18 +5883,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:1790:2: ( ruleUnnamedErrorPrediateDefinition ) + // InternalSolverLanguageParser.g:1979:2: ( ruleUnnamedErrorPredicateDefintion ) { - // InternalSolverLanguageParser.g:1790:2: ( ruleUnnamedErrorPrediateDefinition ) - // InternalSolverLanguageParser.g:1791:3: ruleUnnamedErrorPrediateDefinition + // InternalSolverLanguageParser.g:1979:2: ( ruleUnnamedErrorPredicateDefintion ) + // InternalSolverLanguageParser.g:1980:3: ruleUnnamedErrorPredicateDefintion { - before(grammarAccess.getStatementAccess().getUnnamedErrorPrediateDefinitionParserRuleCall_0_2()); + before(grammarAccess.getStatementAccess().getUnnamedErrorPredicateDefintionParserRuleCall_2()); pushFollow(FOLLOW_2); - ruleUnnamedErrorPrediateDefinition(); + ruleUnnamedErrorPredicateDefintion(); state._fsp--; - after(grammarAccess.getStatementAccess().getUnnamedErrorPrediateDefinitionParserRuleCall_0_2()); + after(grammarAccess.getStatementAccess().getUnnamedErrorPredicateDefintionParserRuleCall_2()); } @@ -5337,18 +5902,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 4 : - // InternalSolverLanguageParser.g:1796:2: ( ruleDefaultDefinition ) + // InternalSolverLanguageParser.g:1985:2: ( ruleDefaultAssertion ) { - // InternalSolverLanguageParser.g:1796:2: ( ruleDefaultDefinition ) - // InternalSolverLanguageParser.g:1797:3: ruleDefaultDefinition + // InternalSolverLanguageParser.g:1985:2: ( ruleDefaultAssertion ) + // InternalSolverLanguageParser.g:1986:3: ruleDefaultAssertion { - before(grammarAccess.getStatementAccess().getDefaultDefinitionParserRuleCall_0_3()); + before(grammarAccess.getStatementAccess().getDefaultAssertionParserRuleCall_3()); pushFollow(FOLLOW_2); - ruleDefaultDefinition(); + ruleDefaultAssertion(); state._fsp--; - after(grammarAccess.getStatementAccess().getDefaultDefinitionParserRuleCall_0_3()); + after(grammarAccess.getStatementAccess().getDefaultAssertionParserRuleCall_3()); } @@ -5356,18 +5921,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 5 : - // InternalSolverLanguageParser.g:1802:2: ( ruleMetricDefinition ) + // InternalSolverLanguageParser.g:1991:2: ( ruleFunctionDefinition ) { - // InternalSolverLanguageParser.g:1802:2: ( ruleMetricDefinition ) - // InternalSolverLanguageParser.g:1803:3: ruleMetricDefinition + // InternalSolverLanguageParser.g:1991:2: ( ruleFunctionDefinition ) + // InternalSolverLanguageParser.g:1992:3: ruleFunctionDefinition { - before(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4()); + before(grammarAccess.getStatementAccess().getFunctionDefinitionParserRuleCall_4()); pushFollow(FOLLOW_2); - ruleMetricDefinition(); + ruleFunctionDefinition(); state._fsp--; - after(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4()); + after(grammarAccess.getStatementAccess().getFunctionDefinitionParserRuleCall_4()); } @@ -5375,18 +5940,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 6 : - // InternalSolverLanguageParser.g:1808:2: ( ruleExternPredicateDefinition ) + // InternalSolverLanguageParser.g:1997:2: ( ruleAttribute ) { - // InternalSolverLanguageParser.g:1808:2: ( ruleExternPredicateDefinition ) - // InternalSolverLanguageParser.g:1809:3: ruleExternPredicateDefinition + // InternalSolverLanguageParser.g:1997:2: ( ruleAttribute ) + // InternalSolverLanguageParser.g:1998:3: ruleAttribute { - before(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5()); + before(grammarAccess.getStatementAccess().getAttributeParserRuleCall_5()); pushFollow(FOLLOW_2); - ruleExternPredicateDefinition(); + ruleAttribute(); state._fsp--; - after(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5()); + after(grammarAccess.getStatementAccess().getAttributeParserRuleCall_5()); } @@ -5394,18 +5959,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 7 : - // InternalSolverLanguageParser.g:1814:2: ( ruleExternMetricDefinition ) + // InternalSolverLanguageParser.g:2003:2: ( ruleExternDeclaration ) { - // InternalSolverLanguageParser.g:1814:2: ( ruleExternMetricDefinition ) - // InternalSolverLanguageParser.g:1815:3: ruleExternMetricDefinition + // InternalSolverLanguageParser.g:2003:2: ( ruleExternDeclaration ) + // InternalSolverLanguageParser.g:2004:3: ruleExternDeclaration { - before(grammarAccess.getStatementAccess().getExternMetricDefinitionParserRuleCall_0_6()); + before(grammarAccess.getStatementAccess().getExternDeclarationParserRuleCall_6()); pushFollow(FOLLOW_2); - ruleExternMetricDefinition(); + ruleExternDeclaration(); state._fsp--; - after(grammarAccess.getStatementAccess().getExternMetricDefinitionParserRuleCall_0_6()); + after(grammarAccess.getStatementAccess().getExternDeclarationParserRuleCall_6()); } @@ -5413,18 +5978,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 8 : - // InternalSolverLanguageParser.g:1820:2: ( ruleExternAggregatorDefinition ) + // InternalSolverLanguageParser.g:2009:2: ( ruleScopeDeclaration ) { - // InternalSolverLanguageParser.g:1820:2: ( ruleExternAggregatorDefinition ) - // InternalSolverLanguageParser.g:1821:3: ruleExternAggregatorDefinition + // InternalSolverLanguageParser.g:2009:2: ( ruleScopeDeclaration ) + // InternalSolverLanguageParser.g:2010:3: ruleScopeDeclaration { - before(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7()); + before(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_7()); pushFollow(FOLLOW_2); - ruleExternAggregatorDefinition(); + ruleScopeDeclaration(); state._fsp--; - after(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7()); + after(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_7()); } @@ -5432,18 +5997,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 9 : - // InternalSolverLanguageParser.g:1826:2: ( ruleExternDatatypeDefinition ) + // InternalSolverLanguageParser.g:2015:2: ( ruleObjectiveDeclaration ) { - // InternalSolverLanguageParser.g:1826:2: ( ruleExternDatatypeDefinition ) - // InternalSolverLanguageParser.g:1827:3: ruleExternDatatypeDefinition + // InternalSolverLanguageParser.g:2015:2: ( ruleObjectiveDeclaration ) + // InternalSolverLanguageParser.g:2016:3: ruleObjectiveDeclaration { - before(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8()); + before(grammarAccess.getStatementAccess().getObjectiveDeclarationParserRuleCall_8()); pushFollow(FOLLOW_2); - ruleExternDatatypeDefinition(); + ruleObjectiveDeclaration(); state._fsp--; - after(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8()); + after(grammarAccess.getStatementAccess().getObjectiveDeclarationParserRuleCall_8()); } @@ -5451,18 +6016,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 10 : - // InternalSolverLanguageParser.g:1832:2: ( ruleClassDefinition ) + // InternalSolverLanguageParser.g:2021:2: ( ruleClassDeclaration ) { - // InternalSolverLanguageParser.g:1832:2: ( ruleClassDefinition ) - // InternalSolverLanguageParser.g:1833:3: ruleClassDefinition + // InternalSolverLanguageParser.g:2021:2: ( ruleClassDeclaration ) + // InternalSolverLanguageParser.g:2022:3: ruleClassDeclaration { - before(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9()); + before(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_9()); pushFollow(FOLLOW_2); - ruleClassDefinition(); + ruleClassDeclaration(); state._fsp--; - after(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9()); + after(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_9()); } @@ -5470,37 +6035,107 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 11 : - // InternalSolverLanguageParser.g:1838:2: ( ruleScopeDefinition ) + // InternalSolverLanguageParser.g:2027:2: ( ruleEnumDeclaration ) + { + // InternalSolverLanguageParser.g:2027:2: ( ruleEnumDeclaration ) + // InternalSolverLanguageParser.g:2028:3: ruleEnumDeclaration + { + before(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_10()); + pushFollow(FOLLOW_2); + ruleEnumDeclaration(); + + state._fsp--; + + after(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_10()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Statement__Alternatives" + + + // $ANTLR start "rule__Import__Alternatives" + // InternalSolverLanguageParser.g:2037:1: rule__Import__Alternatives : ( ( ruleUriImport ) | ( ruleNamespaceImport ) ); + public final void rule__Import__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2041:1: ( ( ruleUriImport ) | ( ruleNamespaceImport ) ) + int alt2=2; + int LA2_0 = input.LA(1); + + if ( (LA2_0==Import) ) { + int LA2_1 = input.LA(2); + + if ( (LA2_1==Object||LA2_1==RULE_QUOTED_ID||LA2_1==RULE_ID) ) { + alt2=2; + } + else if ( (LA2_1==RULE_STRING) ) { + alt2=1; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 2, 1, input); + + throw nvae; + } + } + else { + NoViableAltException nvae = + new NoViableAltException("", 2, 0, input); + + throw nvae; + } + switch (alt2) { + case 1 : + // InternalSolverLanguageParser.g:2042:2: ( ruleUriImport ) { - // InternalSolverLanguageParser.g:1838:2: ( ruleScopeDefinition ) - // InternalSolverLanguageParser.g:1839:3: ruleScopeDefinition + // InternalSolverLanguageParser.g:2042:2: ( ruleUriImport ) + // InternalSolverLanguageParser.g:2043:3: ruleUriImport { - before(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10()); + before(grammarAccess.getImportAccess().getUriImportParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleScopeDefinition(); + ruleUriImport(); state._fsp--; - after(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10()); + after(grammarAccess.getImportAccess().getUriImportParserRuleCall_0()); } } break; - case 12 : - // InternalSolverLanguageParser.g:1844:2: ( ruleObjectiveDefinition ) + case 2 : + // InternalSolverLanguageParser.g:2048:2: ( ruleNamespaceImport ) { - // InternalSolverLanguageParser.g:1844:2: ( ruleObjectiveDefinition ) - // InternalSolverLanguageParser.g:1845:3: ruleObjectiveDefinition + // InternalSolverLanguageParser.g:2048:2: ( ruleNamespaceImport ) + // InternalSolverLanguageParser.g:2049:3: ruleNamespaceImport { - before(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11()); + before(grammarAccess.getImportAccess().getNamespaceImportParserRuleCall_1()); pushFollow(FOLLOW_2); - ruleObjectiveDefinition(); + ruleNamespaceImport(); state._fsp--; - after(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11()); + after(grammarAccess.getImportAccess().getNamespaceImportParserRuleCall_1()); } @@ -5521,20 +6156,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Statement__Alternatives_0" + // $ANTLR end "rule__Import__Alternatives" // $ANTLR start "rule__AssertionOrDefinition__Alternatives_1" - // InternalSolverLanguageParser.g:1854:1: rule__AssertionOrDefinition__Alternatives_1 : ( ( ( rule__AssertionOrDefinition__Group_1_0__0 ) ) | ( ( rule__AssertionOrDefinition__Group_1_1__0 ) ) | ( ( rule__AssertionOrDefinition__Group_1_2__0 ) ) ); + // InternalSolverLanguageParser.g:2058:1: rule__AssertionOrDefinition__Alternatives_1 : ( ( ( rule__AssertionOrDefinition__Group_1_0__0 ) ) | ( ( rule__AssertionOrDefinition__Group_1_1__0 ) ) | ( ( rule__AssertionOrDefinition__Group_1_2__0 ) ) ); public final void rule__AssertionOrDefinition__Alternatives_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1858:1: ( ( ( rule__AssertionOrDefinition__Group_1_0__0 ) ) | ( ( rule__AssertionOrDefinition__Group_1_1__0 ) ) | ( ( rule__AssertionOrDefinition__Group_1_2__0 ) ) ) + // InternalSolverLanguageParser.g:2062:1: ( ( ( rule__AssertionOrDefinition__Group_1_0__0 ) ) | ( ( rule__AssertionOrDefinition__Group_1_1__0 ) ) | ( ( rule__AssertionOrDefinition__Group_1_2__0 ) ) ) int alt3=3; switch ( input.LA(1) ) { case Colon: + case RULE_FULL_STOP: { alt3=1; } @@ -5544,7 +6180,7 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP alt3=2; } break; - case EqualsSign: + case ColonEqualsSign: { alt3=3; } @@ -5558,14 +6194,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP switch (alt3) { case 1 : - // InternalSolverLanguageParser.g:1859:2: ( ( rule__AssertionOrDefinition__Group_1_0__0 ) ) + // InternalSolverLanguageParser.g:2063:2: ( ( rule__AssertionOrDefinition__Group_1_0__0 ) ) { - // InternalSolverLanguageParser.g:1859:2: ( ( rule__AssertionOrDefinition__Group_1_0__0 ) ) - // InternalSolverLanguageParser.g:1860:3: ( rule__AssertionOrDefinition__Group_1_0__0 ) + // InternalSolverLanguageParser.g:2063:2: ( ( rule__AssertionOrDefinition__Group_1_0__0 ) ) + // InternalSolverLanguageParser.g:2064:3: ( rule__AssertionOrDefinition__Group_1_0__0 ) { before(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0()); - // InternalSolverLanguageParser.g:1861:3: ( rule__AssertionOrDefinition__Group_1_0__0 ) - // InternalSolverLanguageParser.g:1861:4: rule__AssertionOrDefinition__Group_1_0__0 + // InternalSolverLanguageParser.g:2065:3: ( rule__AssertionOrDefinition__Group_1_0__0 ) + // InternalSolverLanguageParser.g:2065:4: rule__AssertionOrDefinition__Group_1_0__0 { pushFollow(FOLLOW_2); rule__AssertionOrDefinition__Group_1_0__0(); @@ -5583,14 +6219,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:1865:2: ( ( rule__AssertionOrDefinition__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:2069:2: ( ( rule__AssertionOrDefinition__Group_1_1__0 ) ) { - // InternalSolverLanguageParser.g:1865:2: ( ( rule__AssertionOrDefinition__Group_1_1__0 ) ) - // InternalSolverLanguageParser.g:1866:3: ( rule__AssertionOrDefinition__Group_1_1__0 ) + // InternalSolverLanguageParser.g:2069:2: ( ( rule__AssertionOrDefinition__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:2070:3: ( rule__AssertionOrDefinition__Group_1_1__0 ) { before(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_1()); - // InternalSolverLanguageParser.g:1867:3: ( rule__AssertionOrDefinition__Group_1_1__0 ) - // InternalSolverLanguageParser.g:1867:4: rule__AssertionOrDefinition__Group_1_1__0 + // InternalSolverLanguageParser.g:2071:3: ( rule__AssertionOrDefinition__Group_1_1__0 ) + // InternalSolverLanguageParser.g:2071:4: rule__AssertionOrDefinition__Group_1_1__0 { pushFollow(FOLLOW_2); rule__AssertionOrDefinition__Group_1_1__0(); @@ -5608,14 +6244,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:1871:2: ( ( rule__AssertionOrDefinition__Group_1_2__0 ) ) + // InternalSolverLanguageParser.g:2075:2: ( ( rule__AssertionOrDefinition__Group_1_2__0 ) ) { - // InternalSolverLanguageParser.g:1871:2: ( ( rule__AssertionOrDefinition__Group_1_2__0 ) ) - // InternalSolverLanguageParser.g:1872:3: ( rule__AssertionOrDefinition__Group_1_2__0 ) + // InternalSolverLanguageParser.g:2075:2: ( ( rule__AssertionOrDefinition__Group_1_2__0 ) ) + // InternalSolverLanguageParser.g:2076:3: ( rule__AssertionOrDefinition__Group_1_2__0 ) { before(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_2()); - // InternalSolverLanguageParser.g:1873:3: ( rule__AssertionOrDefinition__Group_1_2__0 ) - // InternalSolverLanguageParser.g:1873:4: rule__AssertionOrDefinition__Group_1_2__0 + // InternalSolverLanguageParser.g:2077:3: ( rule__AssertionOrDefinition__Group_1_2__0 ) + // InternalSolverLanguageParser.g:2077:4: rule__AssertionOrDefinition__Group_1_2__0 { pushFollow(FOLLOW_2); rule__AssertionOrDefinition__Group_1_2__0(); @@ -5650,13 +6286,13 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__PredicateDefinition__Alternatives_0" - // InternalSolverLanguageParser.g:1881:1: rule__PredicateDefinition__Alternatives_0 : ( ( ( rule__PredicateDefinition__Group_0_0__0 ) ) | ( ( rule__PredicateDefinition__Group_0_1__0 ) ) ); + // InternalSolverLanguageParser.g:2085:1: rule__PredicateDefinition__Alternatives_0 : ( ( ( rule__PredicateDefinition__Group_0_0__0 ) ) | ( ( rule__PredicateDefinition__Group_0_1__0 ) ) ); public final void rule__PredicateDefinition__Alternatives_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1885:1: ( ( ( rule__PredicateDefinition__Group_0_0__0 ) ) | ( ( rule__PredicateDefinition__Group_0_1__0 ) ) ) + // InternalSolverLanguageParser.g:2089:1: ( ( ( rule__PredicateDefinition__Group_0_0__0 ) ) | ( ( rule__PredicateDefinition__Group_0_1__0 ) ) ) int alt4=2; int LA4_0 = input.LA(1); @@ -5674,14 +6310,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } switch (alt4) { case 1 : - // InternalSolverLanguageParser.g:1886:2: ( ( rule__PredicateDefinition__Group_0_0__0 ) ) + // InternalSolverLanguageParser.g:2090:2: ( ( rule__PredicateDefinition__Group_0_0__0 ) ) { - // InternalSolverLanguageParser.g:1886:2: ( ( rule__PredicateDefinition__Group_0_0__0 ) ) - // InternalSolverLanguageParser.g:1887:3: ( rule__PredicateDefinition__Group_0_0__0 ) + // InternalSolverLanguageParser.g:2090:2: ( ( rule__PredicateDefinition__Group_0_0__0 ) ) + // InternalSolverLanguageParser.g:2091:3: ( rule__PredicateDefinition__Group_0_0__0 ) { before(grammarAccess.getPredicateDefinitionAccess().getGroup_0_0()); - // InternalSolverLanguageParser.g:1888:3: ( rule__PredicateDefinition__Group_0_0__0 ) - // InternalSolverLanguageParser.g:1888:4: rule__PredicateDefinition__Group_0_0__0 + // InternalSolverLanguageParser.g:2092:3: ( rule__PredicateDefinition__Group_0_0__0 ) + // InternalSolverLanguageParser.g:2092:4: rule__PredicateDefinition__Group_0_0__0 { pushFollow(FOLLOW_2); rule__PredicateDefinition__Group_0_0__0(); @@ -5699,14 +6335,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:1892:2: ( ( rule__PredicateDefinition__Group_0_1__0 ) ) + // InternalSolverLanguageParser.g:2096:2: ( ( rule__PredicateDefinition__Group_0_1__0 ) ) { - // InternalSolverLanguageParser.g:1892:2: ( ( rule__PredicateDefinition__Group_0_1__0 ) ) - // InternalSolverLanguageParser.g:1893:3: ( rule__PredicateDefinition__Group_0_1__0 ) + // InternalSolverLanguageParser.g:2096:2: ( ( rule__PredicateDefinition__Group_0_1__0 ) ) + // InternalSolverLanguageParser.g:2097:3: ( rule__PredicateDefinition__Group_0_1__0 ) { before(grammarAccess.getPredicateDefinitionAccess().getGroup_0_1()); - // InternalSolverLanguageParser.g:1894:3: ( rule__PredicateDefinition__Group_0_1__0 ) - // InternalSolverLanguageParser.g:1894:4: rule__PredicateDefinition__Group_0_1__0 + // InternalSolverLanguageParser.g:2098:3: ( rule__PredicateDefinition__Group_0_1__0 ) + // InternalSolverLanguageParser.g:2098:4: rule__PredicateDefinition__Group_0_1__0 { pushFollow(FOLLOW_2); rule__PredicateDefinition__Group_0_1__0(); @@ -5740,72 +6376,174 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__PredicateDefinition__Alternatives_0" - // $ANTLR start "rule__Expression__Alternatives" - // InternalSolverLanguageParser.g:1902:1: rule__Expression__Alternatives : ( ( ruleIfElse ) | ( ruleLet ) | ( ruleImplicationExpression ) ); - public final void rule__Expression__Alternatives() throws RecognitionException { + // $ANTLR start "rule__ExternDeclaration__Alternatives" + // InternalSolverLanguageParser.g:2106:1: rule__ExternDeclaration__Alternatives : ( ( ruleExternPredicateDeclaration ) | ( ruleExternFunctionDeclaration ) | ( ruleExternAggregationOperatorDeclaration ) | ( ruleExternDatatypeDeclaration ) ); + public final void rule__ExternDeclaration__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1906:1: ( ( ruleIfElse ) | ( ruleLet ) | ( ruleImplicationExpression ) ) - int alt5=3; - switch ( input.LA(1) ) { - case If: - { - alt5=1; - } + // InternalSolverLanguageParser.g:2110:1: ( ( ruleExternPredicateDeclaration ) | ( ruleExternFunctionDeclaration ) | ( ruleExternAggregationOperatorDeclaration ) | ( ruleExternDatatypeDeclaration ) ) + int alt5=4; + alt5 = dfa5.predict(input); + switch (alt5) { + case 1 : + // InternalSolverLanguageParser.g:2111:2: ( ruleExternPredicateDeclaration ) + { + // InternalSolverLanguageParser.g:2111:2: ( ruleExternPredicateDeclaration ) + // InternalSolverLanguageParser.g:2112:3: ruleExternPredicateDeclaration + { + before(grammarAccess.getExternDeclarationAccess().getExternPredicateDeclarationParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleExternPredicateDeclaration(); + + state._fsp--; + + after(grammarAccess.getExternDeclarationAccess().getExternPredicateDeclarationParserRuleCall_0()); + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:2117:2: ( ruleExternFunctionDeclaration ) + { + // InternalSolverLanguageParser.g:2117:2: ( ruleExternFunctionDeclaration ) + // InternalSolverLanguageParser.g:2118:3: ruleExternFunctionDeclaration + { + before(grammarAccess.getExternDeclarationAccess().getExternFunctionDeclarationParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleExternFunctionDeclaration(); + + state._fsp--; + + after(grammarAccess.getExternDeclarationAccess().getExternFunctionDeclarationParserRuleCall_1()); + + } + + + } + break; + case 3 : + // InternalSolverLanguageParser.g:2123:2: ( ruleExternAggregationOperatorDeclaration ) + { + // InternalSolverLanguageParser.g:2123:2: ( ruleExternAggregationOperatorDeclaration ) + // InternalSolverLanguageParser.g:2124:3: ruleExternAggregationOperatorDeclaration + { + before(grammarAccess.getExternDeclarationAccess().getExternAggregationOperatorDeclarationParserRuleCall_2()); + pushFollow(FOLLOW_2); + ruleExternAggregationOperatorDeclaration(); + + state._fsp--; + + after(grammarAccess.getExternDeclarationAccess().getExternAggregationOperatorDeclarationParserRuleCall_2()); + + } + + + } + break; + case 4 : + // InternalSolverLanguageParser.g:2129:2: ( ruleExternDatatypeDeclaration ) + { + // InternalSolverLanguageParser.g:2129:2: ( ruleExternDatatypeDeclaration ) + // InternalSolverLanguageParser.g:2130:3: ruleExternDatatypeDeclaration + { + before(grammarAccess.getExternDeclarationAccess().getExternDatatypeDeclarationParserRuleCall_3()); + pushFollow(FOLLOW_2); + ruleExternDatatypeDeclaration(); + + state._fsp--; + + after(grammarAccess.getExternDeclarationAccess().getExternDatatypeDeclarationParserRuleCall_3()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ExternDeclaration__Alternatives" + + + // $ANTLR start "rule__Expression__Alternatives" + // InternalSolverLanguageParser.g:2139:1: rule__Expression__Alternatives : ( ( ruleConditionalExpression ) | ( ruleLetExpression ) | ( ( rule__Expression__Group_2__0 ) ) ); + public final void rule__Expression__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2143:1: ( ( ruleConditionalExpression ) | ( ruleLetExpression ) | ( ( rule__Expression__Group_2__0 ) ) ) + int alt6=3; + switch ( input.LA(1) ) { + case If: + { + alt6=1; + } break; case Let: { - alt5=2; + alt6=2; } break; - case Current: case Unknown: - case Exists: - case Forall: + case Object: case Count: case Empty: case Error: case False: - case Must: case True: case Inf: - case May: case ExclamationMark: case LeftParenthesis: case PlusSign: case HyphenMinus: + case QuestionMark: case LeftSquareBracket: + case Tilde: case RULE_STRING: case RULE_QUOTED_ID: case RULE_ID: case RULE_INT: { - alt5=3; + alt6=3; } break; default: NoViableAltException nvae = - new NoViableAltException("", 5, 0, input); + new NoViableAltException("", 6, 0, input); throw nvae; } - switch (alt5) { + switch (alt6) { case 1 : - // InternalSolverLanguageParser.g:1907:2: ( ruleIfElse ) + // InternalSolverLanguageParser.g:2144:2: ( ruleConditionalExpression ) { - // InternalSolverLanguageParser.g:1907:2: ( ruleIfElse ) - // InternalSolverLanguageParser.g:1908:3: ruleIfElse + // InternalSolverLanguageParser.g:2144:2: ( ruleConditionalExpression ) + // InternalSolverLanguageParser.g:2145:3: ruleConditionalExpression { - before(grammarAccess.getExpressionAccess().getIfElseParserRuleCall_0()); + before(grammarAccess.getExpressionAccess().getConditionalExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleIfElse(); + ruleConditionalExpression(); state._fsp--; - after(grammarAccess.getExpressionAccess().getIfElseParserRuleCall_0()); + after(grammarAccess.getExpressionAccess().getConditionalExpressionParserRuleCall_0()); } @@ -5813,18 +6551,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:1913:2: ( ruleLet ) + // InternalSolverLanguageParser.g:2150:2: ( ruleLetExpression ) { - // InternalSolverLanguageParser.g:1913:2: ( ruleLet ) - // InternalSolverLanguageParser.g:1914:3: ruleLet + // InternalSolverLanguageParser.g:2150:2: ( ruleLetExpression ) + // InternalSolverLanguageParser.g:2151:3: ruleLetExpression { - before(grammarAccess.getExpressionAccess().getLetParserRuleCall_1()); + before(grammarAccess.getExpressionAccess().getLetExpressionParserRuleCall_1()); pushFollow(FOLLOW_2); - ruleLet(); + ruleLetExpression(); state._fsp--; - after(grammarAccess.getExpressionAccess().getLetParserRuleCall_1()); + after(grammarAccess.getExpressionAccess().getLetExpressionParserRuleCall_1()); } @@ -5832,18 +6570,24 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:1919:2: ( ruleImplicationExpression ) + // InternalSolverLanguageParser.g:2156:2: ( ( rule__Expression__Group_2__0 ) ) { - // InternalSolverLanguageParser.g:1919:2: ( ruleImplicationExpression ) - // InternalSolverLanguageParser.g:1920:3: ruleImplicationExpression + // InternalSolverLanguageParser.g:2156:2: ( ( rule__Expression__Group_2__0 ) ) + // InternalSolverLanguageParser.g:2157:3: ( rule__Expression__Group_2__0 ) + { + before(grammarAccess.getExpressionAccess().getGroup_2()); + // InternalSolverLanguageParser.g:2158:3: ( rule__Expression__Group_2__0 ) + // InternalSolverLanguageParser.g:2158:4: rule__Expression__Group_2__0 { - before(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2()); pushFollow(FOLLOW_2); - ruleImplicationExpression(); + rule__Expression__Group_2__0(); state._fsp--; - after(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2()); + + } + + after(grammarAccess.getExpressionAccess().getGroup_2()); } @@ -5868,38 +6612,38 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__DisjunctiveExpression__Alternatives_1" - // InternalSolverLanguageParser.g:1929:1: rule__DisjunctiveExpression__Alternatives_1 : ( ( ( rule__DisjunctiveExpression__Group_1_0__0 ) ) | ( ( rule__DisjunctiveExpression__Group_1_1__0 ) ) ); + // InternalSolverLanguageParser.g:2166:1: rule__DisjunctiveExpression__Alternatives_1 : ( ( ( rule__DisjunctiveExpression__Group_1_0__0 ) ) | ( ( rule__DisjunctiveExpression__Group_1_1__0 ) ) ); public final void rule__DisjunctiveExpression__Alternatives_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1933:1: ( ( ( rule__DisjunctiveExpression__Group_1_0__0 ) ) | ( ( rule__DisjunctiveExpression__Group_1_1__0 ) ) ) - int alt6=2; - int LA6_0 = input.LA(1); + // InternalSolverLanguageParser.g:2170:1: ( ( ( rule__DisjunctiveExpression__Group_1_0__0 ) ) | ( ( rule__DisjunctiveExpression__Group_1_1__0 ) ) ) + int alt7=2; + int LA7_0 = input.LA(1); - if ( (LA6_0==Semicolon) ) { - alt6=1; + if ( (LA7_0==Semicolon) ) { + alt7=1; } - else if ( (LA6_0==HyphenMinusGreaterThanSign) ) { - alt6=2; + else if ( (LA7_0==HyphenMinusGreaterThanSign) ) { + alt7=2; } else { NoViableAltException nvae = - new NoViableAltException("", 6, 0, input); + new NoViableAltException("", 7, 0, input); throw nvae; } - switch (alt6) { + switch (alt7) { case 1 : - // InternalSolverLanguageParser.g:1934:2: ( ( rule__DisjunctiveExpression__Group_1_0__0 ) ) + // InternalSolverLanguageParser.g:2171:2: ( ( rule__DisjunctiveExpression__Group_1_0__0 ) ) { - // InternalSolverLanguageParser.g:1934:2: ( ( rule__DisjunctiveExpression__Group_1_0__0 ) ) - // InternalSolverLanguageParser.g:1935:3: ( rule__DisjunctiveExpression__Group_1_0__0 ) + // InternalSolverLanguageParser.g:2171:2: ( ( rule__DisjunctiveExpression__Group_1_0__0 ) ) + // InternalSolverLanguageParser.g:2172:3: ( rule__DisjunctiveExpression__Group_1_0__0 ) { before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0()); - // InternalSolverLanguageParser.g:1936:3: ( rule__DisjunctiveExpression__Group_1_0__0 ) - // InternalSolverLanguageParser.g:1936:4: rule__DisjunctiveExpression__Group_1_0__0 + // InternalSolverLanguageParser.g:2173:3: ( rule__DisjunctiveExpression__Group_1_0__0 ) + // InternalSolverLanguageParser.g:2173:4: rule__DisjunctiveExpression__Group_1_0__0 { pushFollow(FOLLOW_2); rule__DisjunctiveExpression__Group_1_0__0(); @@ -5917,14 +6661,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:1940:2: ( ( rule__DisjunctiveExpression__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:2177:2: ( ( rule__DisjunctiveExpression__Group_1_1__0 ) ) { - // InternalSolverLanguageParser.g:1940:2: ( ( rule__DisjunctiveExpression__Group_1_1__0 ) ) - // InternalSolverLanguageParser.g:1941:3: ( rule__DisjunctiveExpression__Group_1_1__0 ) + // InternalSolverLanguageParser.g:2177:2: ( ( rule__DisjunctiveExpression__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:2178:3: ( rule__DisjunctiveExpression__Group_1_1__0 ) { before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1()); - // InternalSolverLanguageParser.g:1942:3: ( rule__DisjunctiveExpression__Group_1_1__0 ) - // InternalSolverLanguageParser.g:1942:4: rule__DisjunctiveExpression__Group_1_1__0 + // InternalSolverLanguageParser.g:2179:3: ( rule__DisjunctiveExpression__Group_1_1__0 ) + // InternalSolverLanguageParser.g:2179:4: rule__DisjunctiveExpression__Group_1_1__0 { pushFollow(FOLLOW_2); rule__DisjunctiveExpression__Group_1_1__0(); @@ -5959,42 +6703,42 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__UnaryExpression__Alternatives" - // InternalSolverLanguageParser.g:1950:1: rule__UnaryExpression__Alternatives : ( ( ruleAggregationExpression ) | ( ( rule__UnaryExpression__Group_1__0 ) ) ); + // InternalSolverLanguageParser.g:2187:1: rule__UnaryExpression__Alternatives : ( ( ruleBracedAggregateExpression ) | ( ( rule__UnaryExpression__Group_1__0 ) ) ); public final void rule__UnaryExpression__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1954:1: ( ( ruleAggregationExpression ) | ( ( rule__UnaryExpression__Group_1__0 ) ) ) - int alt7=2; - int LA7_0 = input.LA(1); + // InternalSolverLanguageParser.g:2191:1: ( ( ruleBracedAggregateExpression ) | ( ( rule__UnaryExpression__Group_1__0 ) ) ) + int alt8=2; + int LA8_0 = input.LA(1); - if ( ((LA7_0>=Unknown && LA7_0<=Exists)||LA7_0==Forall||(LA7_0>=Count && LA7_0<=False)||LA7_0==True||LA7_0==Inf||LA7_0==LeftParenthesis||LA7_0==LeftSquareBracket||(LA7_0>=RULE_STRING && LA7_0<=RULE_QUOTED_ID)||(LA7_0>=RULE_ID && LA7_0<=RULE_INT)) ) { - alt7=1; + if ( (LA8_0==Unknown||LA8_0==Object||(LA8_0>=Count && LA8_0<=False)||LA8_0==True||LA8_0==Inf||LA8_0==LeftParenthesis||LA8_0==LeftSquareBracket||(LA8_0>=Tilde && LA8_0<=RULE_QUOTED_ID)||(LA8_0>=RULE_ID && LA8_0<=RULE_INT)) ) { + alt8=1; } - else if ( (LA7_0==Current||LA7_0==Must||LA7_0==May||LA7_0==ExclamationMark||LA7_0==PlusSign||LA7_0==HyphenMinus) ) { - alt7=2; + else if ( (LA8_0==ExclamationMark||LA8_0==PlusSign||LA8_0==HyphenMinus||LA8_0==QuestionMark) ) { + alt8=2; } else { NoViableAltException nvae = - new NoViableAltException("", 7, 0, input); + new NoViableAltException("", 8, 0, input); throw nvae; } - switch (alt7) { + switch (alt8) { case 1 : - // InternalSolverLanguageParser.g:1955:2: ( ruleAggregationExpression ) + // InternalSolverLanguageParser.g:2192:2: ( ruleBracedAggregateExpression ) { - // InternalSolverLanguageParser.g:1955:2: ( ruleAggregationExpression ) - // InternalSolverLanguageParser.g:1956:3: ruleAggregationExpression + // InternalSolverLanguageParser.g:2192:2: ( ruleBracedAggregateExpression ) + // InternalSolverLanguageParser.g:2193:3: ruleBracedAggregateExpression { - before(grammarAccess.getUnaryExpressionAccess().getAggregationExpressionParserRuleCall_0()); + before(grammarAccess.getUnaryExpressionAccess().getBracedAggregateExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleAggregationExpression(); + ruleBracedAggregateExpression(); state._fsp--; - after(grammarAccess.getUnaryExpressionAccess().getAggregationExpressionParserRuleCall_0()); + after(grammarAccess.getUnaryExpressionAccess().getBracedAggregateExpressionParserRuleCall_0()); } @@ -6002,14 +6746,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:1961:2: ( ( rule__UnaryExpression__Group_1__0 ) ) + // InternalSolverLanguageParser.g:2198:2: ( ( rule__UnaryExpression__Group_1__0 ) ) { - // InternalSolverLanguageParser.g:1961:2: ( ( rule__UnaryExpression__Group_1__0 ) ) - // InternalSolverLanguageParser.g:1962:3: ( rule__UnaryExpression__Group_1__0 ) + // InternalSolverLanguageParser.g:2198:2: ( ( rule__UnaryExpression__Group_1__0 ) ) + // InternalSolverLanguageParser.g:2199:3: ( rule__UnaryExpression__Group_1__0 ) { before(grammarAccess.getUnaryExpressionAccess().getGroup_1()); - // InternalSolverLanguageParser.g:1963:3: ( rule__UnaryExpression__Group_1__0 ) - // InternalSolverLanguageParser.g:1963:4: rule__UnaryExpression__Group_1__0 + // InternalSolverLanguageParser.g:2200:3: ( rule__UnaryExpression__Group_1__0 ) + // InternalSolverLanguageParser.g:2200:4: rule__UnaryExpression__Group_1__0 { pushFollow(FOLLOW_2); rule__UnaryExpression__Group_1__0(); @@ -6043,30 +6787,30 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__UnaryExpression__Alternatives" - // $ANTLR start "rule__AggregationExpression__Alternatives" - // InternalSolverLanguageParser.g:1971:1: rule__AggregationExpression__Alternatives : ( ( ruleAtomicExpression ) | ( ruleQuantifiedExpression ) | ( ruleAggregation ) ); - public final void rule__AggregationExpression__Alternatives() throws RecognitionException { + // $ANTLR start "rule__BracedAggregateExpression__Alternatives" + // InternalSolverLanguageParser.g:2208:1: rule__BracedAggregateExpression__Alternatives : ( ( ruleAtomicExpression ) | ( ruleAggregation ) | ( ruleCount ) ); + public final void rule__BracedAggregateExpression__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:1975:1: ( ( ruleAtomicExpression ) | ( ruleQuantifiedExpression ) | ( ruleAggregation ) ) - int alt8=3; - alt8 = dfa8.predict(input); - switch (alt8) { + // InternalSolverLanguageParser.g:2212:1: ( ( ruleAtomicExpression ) | ( ruleAggregation ) | ( ruleCount ) ) + int alt9=3; + alt9 = dfa9.predict(input); + switch (alt9) { case 1 : - // InternalSolverLanguageParser.g:1976:2: ( ruleAtomicExpression ) + // InternalSolverLanguageParser.g:2213:2: ( ruleAtomicExpression ) { - // InternalSolverLanguageParser.g:1976:2: ( ruleAtomicExpression ) - // InternalSolverLanguageParser.g:1977:3: ruleAtomicExpression + // InternalSolverLanguageParser.g:2213:2: ( ruleAtomicExpression ) + // InternalSolverLanguageParser.g:2214:3: ruleAtomicExpression { - before(grammarAccess.getAggregationExpressionAccess().getAtomicExpressionParserRuleCall_0()); + before(grammarAccess.getBracedAggregateExpressionAccess().getAtomicExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); ruleAtomicExpression(); state._fsp--; - after(grammarAccess.getAggregationExpressionAccess().getAtomicExpressionParserRuleCall_0()); + after(grammarAccess.getBracedAggregateExpressionAccess().getAtomicExpressionParserRuleCall_0()); } @@ -6074,18 +6818,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:1982:2: ( ruleQuantifiedExpression ) + // InternalSolverLanguageParser.g:2219:2: ( ruleAggregation ) { - // InternalSolverLanguageParser.g:1982:2: ( ruleQuantifiedExpression ) - // InternalSolverLanguageParser.g:1983:3: ruleQuantifiedExpression + // InternalSolverLanguageParser.g:2219:2: ( ruleAggregation ) + // InternalSolverLanguageParser.g:2220:3: ruleAggregation { - before(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1()); + before(grammarAccess.getBracedAggregateExpressionAccess().getAggregationParserRuleCall_1()); pushFollow(FOLLOW_2); - ruleQuantifiedExpression(); + ruleAggregation(); state._fsp--; - after(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1()); + after(grammarAccess.getBracedAggregateExpressionAccess().getAggregationParserRuleCall_1()); } @@ -6093,18 +6837,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:1988:2: ( ruleAggregation ) + // InternalSolverLanguageParser.g:2225:2: ( ruleCount ) { - // InternalSolverLanguageParser.g:1988:2: ( ruleAggregation ) - // InternalSolverLanguageParser.g:1989:3: ruleAggregation + // InternalSolverLanguageParser.g:2225:2: ( ruleCount ) + // InternalSolverLanguageParser.g:2226:3: ruleCount { - before(grammarAccess.getAggregationExpressionAccess().getAggregationParserRuleCall_2()); + before(grammarAccess.getBracedAggregateExpressionAccess().getCountParserRuleCall_2()); pushFollow(FOLLOW_2); - ruleAggregation(); + ruleCount(); state._fsp--; - after(grammarAccess.getAggregationExpressionAccess().getAggregationParserRuleCall_2()); + after(grammarAccess.getBracedAggregateExpressionAccess().getCountParserRuleCall_2()); } @@ -6125,25 +6869,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AggregationExpression__Alternatives" + // $ANTLR end "rule__BracedAggregateExpression__Alternatives" // $ANTLR start "rule__AtomicExpression__Alternatives" - // InternalSolverLanguageParser.g:1998:1: rule__AtomicExpression__Alternatives : ( ( ruleReference ) | ( ruleCall ) | ( ruleInterval ) | ( ruleLiteral ) | ( ( rule__AtomicExpression__Group_4__0 ) ) ); + // InternalSolverLanguageParser.g:2235:1: rule__AtomicExpression__Alternatives : ( ( ruleReference ) | ( ruleCall ) | ( ruleInterval ) | ( ruleLiteral ) | ( ( rule__AtomicExpression__Group_4__0 ) ) ); public final void rule__AtomicExpression__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2002:1: ( ( ruleReference ) | ( ruleCall ) | ( ruleInterval ) | ( ruleLiteral ) | ( ( rule__AtomicExpression__Group_4__0 ) ) ) - int alt9=5; - alt9 = dfa9.predict(input); - switch (alt9) { + // InternalSolverLanguageParser.g:2239:1: ( ( ruleReference ) | ( ruleCall ) | ( ruleInterval ) | ( ruleLiteral ) | ( ( rule__AtomicExpression__Group_4__0 ) ) ) + int alt10=5; + alt10 = dfa10.predict(input); + switch (alt10) { case 1 : - // InternalSolverLanguageParser.g:2003:2: ( ruleReference ) + // InternalSolverLanguageParser.g:2240:2: ( ruleReference ) { - // InternalSolverLanguageParser.g:2003:2: ( ruleReference ) - // InternalSolverLanguageParser.g:2004:3: ruleReference + // InternalSolverLanguageParser.g:2240:2: ( ruleReference ) + // InternalSolverLanguageParser.g:2241:3: ruleReference { before(grammarAccess.getAtomicExpressionAccess().getReferenceParserRuleCall_0()); pushFollow(FOLLOW_2); @@ -6159,10 +6903,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2009:2: ( ruleCall ) + // InternalSolverLanguageParser.g:2246:2: ( ruleCall ) { - // InternalSolverLanguageParser.g:2009:2: ( ruleCall ) - // InternalSolverLanguageParser.g:2010:3: ruleCall + // InternalSolverLanguageParser.g:2246:2: ( ruleCall ) + // InternalSolverLanguageParser.g:2247:3: ruleCall { before(grammarAccess.getAtomicExpressionAccess().getCallParserRuleCall_1()); pushFollow(FOLLOW_2); @@ -6178,10 +6922,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:2015:2: ( ruleInterval ) + // InternalSolverLanguageParser.g:2252:2: ( ruleInterval ) { - // InternalSolverLanguageParser.g:2015:2: ( ruleInterval ) - // InternalSolverLanguageParser.g:2016:3: ruleInterval + // InternalSolverLanguageParser.g:2252:2: ( ruleInterval ) + // InternalSolverLanguageParser.g:2253:3: ruleInterval { before(grammarAccess.getAtomicExpressionAccess().getIntervalParserRuleCall_2()); pushFollow(FOLLOW_2); @@ -6197,10 +6941,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 4 : - // InternalSolverLanguageParser.g:2021:2: ( ruleLiteral ) + // InternalSolverLanguageParser.g:2258:2: ( ruleLiteral ) { - // InternalSolverLanguageParser.g:2021:2: ( ruleLiteral ) - // InternalSolverLanguageParser.g:2022:3: ruleLiteral + // InternalSolverLanguageParser.g:2258:2: ( ruleLiteral ) + // InternalSolverLanguageParser.g:2259:3: ruleLiteral { before(grammarAccess.getAtomicExpressionAccess().getLiteralParserRuleCall_3()); pushFollow(FOLLOW_2); @@ -6216,14 +6960,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 5 : - // InternalSolverLanguageParser.g:2027:2: ( ( rule__AtomicExpression__Group_4__0 ) ) + // InternalSolverLanguageParser.g:2264:2: ( ( rule__AtomicExpression__Group_4__0 ) ) { - // InternalSolverLanguageParser.g:2027:2: ( ( rule__AtomicExpression__Group_4__0 ) ) - // InternalSolverLanguageParser.g:2028:3: ( rule__AtomicExpression__Group_4__0 ) + // InternalSolverLanguageParser.g:2264:2: ( ( rule__AtomicExpression__Group_4__0 ) ) + // InternalSolverLanguageParser.g:2265:3: ( rule__AtomicExpression__Group_4__0 ) { before(grammarAccess.getAtomicExpressionAccess().getGroup_4()); - // InternalSolverLanguageParser.g:2029:3: ( rule__AtomicExpression__Group_4__0 ) - // InternalSolverLanguageParser.g:2029:4: rule__AtomicExpression__Group_4__0 + // InternalSolverLanguageParser.g:2266:3: ( rule__AtomicExpression__Group_4__0 ) + // InternalSolverLanguageParser.g:2266:4: rule__AtomicExpression__Group_4__0 { pushFollow(FOLLOW_2); rule__AtomicExpression__Group_4__0(); @@ -6257,74 +7001,87 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__AtomicExpression__Alternatives" - // $ANTLR start "rule__Call__Alternatives_1" - // InternalSolverLanguageParser.g:2037:1: rule__Call__Alternatives_1 : ( ( ( rule__Call__TransitiveClosureAssignment_1_0 ) ) | ( ( rule__Call__ReflexiveTransitiveClosureAssignment_1_1 ) ) ); - public final void rule__Call__Alternatives_1() throws RecognitionException { + // $ANTLR start "rule__Argument__Alternatives" + // InternalSolverLanguageParser.g:2274:1: rule__Argument__Alternatives : ( ( ruleExpressionArgument ) | ( ruleStarArgument ) | ( ruleTypedVariableArgument ) | ( ruleTypedStarArgument ) ); + public final void rule__Argument__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2041:1: ( ( ( rule__Call__TransitiveClosureAssignment_1_0 ) ) | ( ( rule__Call__ReflexiveTransitiveClosureAssignment_1_1 ) ) ) - int alt10=2; - int LA10_0 = input.LA(1); - - if ( (LA10_0==RULE_TRANSITIVE_CLOSURE) ) { - alt10=1; - } - else if ( (LA10_0==RULE_REFLEXIVE_TRANSITIVE_CLOSURE) ) { - alt10=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("", 10, 0, input); - - throw nvae; - } - switch (alt10) { + // InternalSolverLanguageParser.g:2278:1: ( ( ruleExpressionArgument ) | ( ruleStarArgument ) | ( ruleTypedVariableArgument ) | ( ruleTypedStarArgument ) ) + int alt11=4; + alt11 = dfa11.predict(input); + switch (alt11) { case 1 : - // InternalSolverLanguageParser.g:2042:2: ( ( rule__Call__TransitiveClosureAssignment_1_0 ) ) - { - // InternalSolverLanguageParser.g:2042:2: ( ( rule__Call__TransitiveClosureAssignment_1_0 ) ) - // InternalSolverLanguageParser.g:2043:3: ( rule__Call__TransitiveClosureAssignment_1_0 ) + // InternalSolverLanguageParser.g:2279:2: ( ruleExpressionArgument ) { - before(grammarAccess.getCallAccess().getTransitiveClosureAssignment_1_0()); - // InternalSolverLanguageParser.g:2044:3: ( rule__Call__TransitiveClosureAssignment_1_0 ) - // InternalSolverLanguageParser.g:2044:4: rule__Call__TransitiveClosureAssignment_1_0 + // InternalSolverLanguageParser.g:2279:2: ( ruleExpressionArgument ) + // InternalSolverLanguageParser.g:2280:3: ruleExpressionArgument { + before(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); pushFollow(FOLLOW_2); - rule__Call__TransitiveClosureAssignment_1_0(); + ruleExpressionArgument(); state._fsp--; + after(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); + + } + } + break; + case 2 : + // InternalSolverLanguageParser.g:2285:2: ( ruleStarArgument ) + { + // InternalSolverLanguageParser.g:2285:2: ( ruleStarArgument ) + // InternalSolverLanguageParser.g:2286:3: ruleStarArgument + { + before(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); + pushFollow(FOLLOW_2); + ruleStarArgument(); + + state._fsp--; - after(grammarAccess.getCallAccess().getTransitiveClosureAssignment_1_0()); + after(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); } } break; - case 2 : - // InternalSolverLanguageParser.g:2048:2: ( ( rule__Call__ReflexiveTransitiveClosureAssignment_1_1 ) ) - { - // InternalSolverLanguageParser.g:2048:2: ( ( rule__Call__ReflexiveTransitiveClosureAssignment_1_1 ) ) - // InternalSolverLanguageParser.g:2049:3: ( rule__Call__ReflexiveTransitiveClosureAssignment_1_1 ) + case 3 : + // InternalSolverLanguageParser.g:2291:2: ( ruleTypedVariableArgument ) { - before(grammarAccess.getCallAccess().getReflexiveTransitiveClosureAssignment_1_1()); - // InternalSolverLanguageParser.g:2050:3: ( rule__Call__ReflexiveTransitiveClosureAssignment_1_1 ) - // InternalSolverLanguageParser.g:2050:4: rule__Call__ReflexiveTransitiveClosureAssignment_1_1 + // InternalSolverLanguageParser.g:2291:2: ( ruleTypedVariableArgument ) + // InternalSolverLanguageParser.g:2292:3: ruleTypedVariableArgument { + before(grammarAccess.getArgumentAccess().getTypedVariableArgumentParserRuleCall_2()); pushFollow(FOLLOW_2); - rule__Call__ReflexiveTransitiveClosureAssignment_1_1(); + ruleTypedVariableArgument(); state._fsp--; + after(grammarAccess.getArgumentAccess().getTypedVariableArgumentParserRuleCall_2()); + + } + } + break; + case 4 : + // InternalSolverLanguageParser.g:2297:2: ( ruleTypedStarArgument ) + { + // InternalSolverLanguageParser.g:2297:2: ( ruleTypedStarArgument ) + // InternalSolverLanguageParser.g:2298:3: ruleTypedStarArgument + { + before(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); + pushFollow(FOLLOW_2); + ruleTypedStarArgument(); + + state._fsp--; - after(grammarAccess.getCallAccess().getReflexiveTransitiveClosureAssignment_1_1()); + after(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); } @@ -6345,90 +7102,77 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__Alternatives_1" + // $ANTLR end "rule__Argument__Alternatives" - // $ANTLR start "rule__Argument__Alternatives" - // InternalSolverLanguageParser.g:2058:1: rule__Argument__Alternatives : ( ( ruleExpressionArgument ) | ( ruleStarArgument ) | ( ruleTypedArgument ) | ( ruleTypedStarArgument ) ); - public final void rule__Argument__Alternatives() throws RecognitionException { + // $ANTLR start "rule__PathComponent__Alternatives_2" + // InternalSolverLanguageParser.g:2307:1: rule__PathComponent__Alternatives_2 : ( ( ( rule__PathComponent__TransitiveClosureAssignment_2_0 ) ) | ( ( rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 ) ) ); + public final void rule__PathComponent__Alternatives_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2062:1: ( ( ruleExpressionArgument ) | ( ruleStarArgument ) | ( ruleTypedArgument ) | ( ruleTypedStarArgument ) ) - int alt11=4; - alt11 = dfa11.predict(input); - switch (alt11) { + // InternalSolverLanguageParser.g:2311:1: ( ( ( rule__PathComponent__TransitiveClosureAssignment_2_0 ) ) | ( ( rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 ) ) ) + int alt12=2; + int LA12_0 = input.LA(1); + + if ( (LA12_0==RULE_TRANSITIVE_CLOSURE) ) { + alt12=1; + } + else if ( (LA12_0==RULE_REFLEXIVE_TRANSITIVE_CLOSURE) ) { + alt12=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 12, 0, input); + + throw nvae; + } + switch (alt12) { case 1 : - // InternalSolverLanguageParser.g:2063:2: ( ruleExpressionArgument ) + // InternalSolverLanguageParser.g:2312:2: ( ( rule__PathComponent__TransitiveClosureAssignment_2_0 ) ) { - // InternalSolverLanguageParser.g:2063:2: ( ruleExpressionArgument ) - // InternalSolverLanguageParser.g:2064:3: ruleExpressionArgument + // InternalSolverLanguageParser.g:2312:2: ( ( rule__PathComponent__TransitiveClosureAssignment_2_0 ) ) + // InternalSolverLanguageParser.g:2313:3: ( rule__PathComponent__TransitiveClosureAssignment_2_0 ) + { + before(grammarAccess.getPathComponentAccess().getTransitiveClosureAssignment_2_0()); + // InternalSolverLanguageParser.g:2314:3: ( rule__PathComponent__TransitiveClosureAssignment_2_0 ) + // InternalSolverLanguageParser.g:2314:4: rule__PathComponent__TransitiveClosureAssignment_2_0 { - before(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleExpressionArgument(); + rule__PathComponent__TransitiveClosureAssignment_2_0(); state._fsp--; - after(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); - - } - } - break; - case 2 : - // InternalSolverLanguageParser.g:2069:2: ( ruleStarArgument ) - { - // InternalSolverLanguageParser.g:2069:2: ( ruleStarArgument ) - // InternalSolverLanguageParser.g:2070:3: ruleStarArgument - { - before(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); - pushFollow(FOLLOW_2); - ruleStarArgument(); - state._fsp--; - - after(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); + after(grammarAccess.getPathComponentAccess().getTransitiveClosureAssignment_2_0()); } } break; - case 3 : - // InternalSolverLanguageParser.g:2075:2: ( ruleTypedArgument ) + case 2 : + // InternalSolverLanguageParser.g:2318:2: ( ( rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 ) ) + { + // InternalSolverLanguageParser.g:2318:2: ( ( rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 ) ) + // InternalSolverLanguageParser.g:2319:3: ( rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 ) { - // InternalSolverLanguageParser.g:2075:2: ( ruleTypedArgument ) - // InternalSolverLanguageParser.g:2076:3: ruleTypedArgument + before(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureAssignment_2_1()); + // InternalSolverLanguageParser.g:2320:3: ( rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 ) + // InternalSolverLanguageParser.g:2320:4: rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 { - before(grammarAccess.getArgumentAccess().getTypedArgumentParserRuleCall_2()); pushFollow(FOLLOW_2); - ruleTypedArgument(); + rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1(); state._fsp--; - after(grammarAccess.getArgumentAccess().getTypedArgumentParserRuleCall_2()); - - } - } - break; - case 4 : - // InternalSolverLanguageParser.g:2081:2: ( ruleTypedStarArgument ) - { - // InternalSolverLanguageParser.g:2081:2: ( ruleTypedStarArgument ) - // InternalSolverLanguageParser.g:2082:3: ruleTypedStarArgument - { - before(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); - pushFollow(FOLLOW_2); - ruleTypedStarArgument(); - state._fsp--; - - after(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); + after(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureAssignment_2_1()); } @@ -6449,60 +7193,73 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Argument__Alternatives" + // $ANTLR end "rule__PathComponent__Alternatives_2" // $ANTLR start "rule__Literal__Alternatives" - // InternalSolverLanguageParser.g:2091:1: rule__Literal__Alternatives : ( ( ruleLogicLiteral ) | ( ruleNumericLiteral ) | ( ruleInfinityLiteral ) | ( ruleEmptyIntervalLiteral ) | ( ruleStringLiteral ) ); + // InternalSolverLanguageParser.g:2328:1: rule__Literal__Alternatives : ( ( ruleLogicLiteral ) | ( ruleIntLiteral ) | ( ruleRealLiteral ) | ( ruleInfinityLiteral ) | ( ruleEmptyLiteral ) | ( ruleStringLiteral ) ); public final void rule__Literal__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2095:1: ( ( ruleLogicLiteral ) | ( ruleNumericLiteral ) | ( ruleInfinityLiteral ) | ( ruleEmptyIntervalLiteral ) | ( ruleStringLiteral ) ) - int alt12=5; + // InternalSolverLanguageParser.g:2332:1: ( ( ruleLogicLiteral ) | ( ruleIntLiteral ) | ( ruleRealLiteral ) | ( ruleInfinityLiteral ) | ( ruleEmptyLiteral ) | ( ruleStringLiteral ) ) + int alt13=6; switch ( input.LA(1) ) { case Unknown: case Error: case False: case True: { - alt12=1; + alt13=1; } break; case RULE_INT: { - alt12=2; + int LA13_2 = input.LA(2); + + if ( (LA13_2==FullStop) ) { + alt13=3; + } + else if ( (LA13_2==EOF||LA13_2==Else||LA13_2==Then||(LA13_2>=ExclamationMarkEqualsSign && LA13_2<=ColonHyphenMinus)||(LA13_2>=ColonEqualsSign && LA13_2<=As)||LA13_2==In||(LA13_2>=RightParenthesis && LA13_2<=HyphenMinus)||(LA13_2>=Solidus && LA13_2<=LessThanSign)||LA13_2==GreaterThanSign||(LA13_2>=RightSquareBracket && LA13_2<=CircumflexAccent)||(LA13_2>=VerticalLine && LA13_2<=RightCurlyBracket)||LA13_2==RULE_FULL_STOP) ) { + alt13=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 13, 2, input); + + throw nvae; + } } break; case Inf: { - alt12=3; + alt13=4; } break; case Empty: { - alt12=4; + alt13=5; } break; case RULE_STRING: { - alt12=5; + alt13=6; } break; default: NoViableAltException nvae = - new NoViableAltException("", 12, 0, input); + new NoViableAltException("", 13, 0, input); throw nvae; } - switch (alt12) { + switch (alt13) { case 1 : - // InternalSolverLanguageParser.g:2096:2: ( ruleLogicLiteral ) + // InternalSolverLanguageParser.g:2333:2: ( ruleLogicLiteral ) { - // InternalSolverLanguageParser.g:2096:2: ( ruleLogicLiteral ) - // InternalSolverLanguageParser.g:2097:3: ruleLogicLiteral + // InternalSolverLanguageParser.g:2333:2: ( ruleLogicLiteral ) + // InternalSolverLanguageParser.g:2334:3: ruleLogicLiteral { before(grammarAccess.getLiteralAccess().getLogicLiteralParserRuleCall_0()); pushFollow(FOLLOW_2); @@ -6518,18 +7275,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2102:2: ( ruleNumericLiteral ) + // InternalSolverLanguageParser.g:2339:2: ( ruleIntLiteral ) { - // InternalSolverLanguageParser.g:2102:2: ( ruleNumericLiteral ) - // InternalSolverLanguageParser.g:2103:3: ruleNumericLiteral + // InternalSolverLanguageParser.g:2339:2: ( ruleIntLiteral ) + // InternalSolverLanguageParser.g:2340:3: ruleIntLiteral { - before(grammarAccess.getLiteralAccess().getNumericLiteralParserRuleCall_1()); + before(grammarAccess.getLiteralAccess().getIntLiteralParserRuleCall_1()); pushFollow(FOLLOW_2); - ruleNumericLiteral(); + ruleIntLiteral(); state._fsp--; - after(grammarAccess.getLiteralAccess().getNumericLiteralParserRuleCall_1()); + after(grammarAccess.getLiteralAccess().getIntLiteralParserRuleCall_1()); } @@ -6537,18 +7294,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:2108:2: ( ruleInfinityLiteral ) + // InternalSolverLanguageParser.g:2345:2: ( ruleRealLiteral ) { - // InternalSolverLanguageParser.g:2108:2: ( ruleInfinityLiteral ) - // InternalSolverLanguageParser.g:2109:3: ruleInfinityLiteral + // InternalSolverLanguageParser.g:2345:2: ( ruleRealLiteral ) + // InternalSolverLanguageParser.g:2346:3: ruleRealLiteral { - before(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_2()); + before(grammarAccess.getLiteralAccess().getRealLiteralParserRuleCall_2()); pushFollow(FOLLOW_2); - ruleInfinityLiteral(); + ruleRealLiteral(); state._fsp--; - after(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_2()); + after(grammarAccess.getLiteralAccess().getRealLiteralParserRuleCall_2()); } @@ -6556,18 +7313,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 4 : - // InternalSolverLanguageParser.g:2114:2: ( ruleEmptyIntervalLiteral ) + // InternalSolverLanguageParser.g:2351:2: ( ruleInfinityLiteral ) { - // InternalSolverLanguageParser.g:2114:2: ( ruleEmptyIntervalLiteral ) - // InternalSolverLanguageParser.g:2115:3: ruleEmptyIntervalLiteral + // InternalSolverLanguageParser.g:2351:2: ( ruleInfinityLiteral ) + // InternalSolverLanguageParser.g:2352:3: ruleInfinityLiteral { - before(grammarAccess.getLiteralAccess().getEmptyIntervalLiteralParserRuleCall_3()); + before(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_3()); pushFollow(FOLLOW_2); - ruleEmptyIntervalLiteral(); + ruleInfinityLiteral(); state._fsp--; - after(grammarAccess.getLiteralAccess().getEmptyIntervalLiteralParserRuleCall_3()); + after(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_3()); } @@ -6575,18 +7332,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 5 : - // InternalSolverLanguageParser.g:2120:2: ( ruleStringLiteral ) + // InternalSolverLanguageParser.g:2357:2: ( ruleEmptyLiteral ) + { + // InternalSolverLanguageParser.g:2357:2: ( ruleEmptyLiteral ) + // InternalSolverLanguageParser.g:2358:3: ruleEmptyLiteral + { + before(grammarAccess.getLiteralAccess().getEmptyLiteralParserRuleCall_4()); + pushFollow(FOLLOW_2); + ruleEmptyLiteral(); + + state._fsp--; + + after(grammarAccess.getLiteralAccess().getEmptyLiteralParserRuleCall_4()); + + } + + + } + break; + case 6 : + // InternalSolverLanguageParser.g:2363:2: ( ruleStringLiteral ) { - // InternalSolverLanguageParser.g:2120:2: ( ruleStringLiteral ) - // InternalSolverLanguageParser.g:2121:3: ruleStringLiteral + // InternalSolverLanguageParser.g:2363:2: ( ruleStringLiteral ) + // InternalSolverLanguageParser.g:2364:3: ruleStringLiteral { - before(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_4()); + before(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_5()); pushFollow(FOLLOW_2); ruleStringLiteral(); state._fsp--; - after(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_4()); + after(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_5()); } @@ -6610,50 +7386,222 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__Literal__Alternatives" - // $ANTLR start "rule__Multiplicity__Alternatives" - // InternalSolverLanguageParser.g:2130:1: rule__Multiplicity__Alternatives : ( ( ruleManyMultiplicity ) | ( ruleExactMultiplicity ) | ( ruleBoundedMultiplicity ) ); - public final void rule__Multiplicity__Alternatives() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Alternatives_4" + // InternalSolverLanguageParser.g:2373:1: rule__ClassDeclaration__Alternatives_4 : ( ( ( rule__ClassDeclaration__Group_4_0__0 ) ) | ( RULE_FULL_STOP ) ); + public final void rule__ClassDeclaration__Alternatives_4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2134:1: ( ( ruleManyMultiplicity ) | ( ruleExactMultiplicity ) | ( ruleBoundedMultiplicity ) ) - int alt13=3; - int LA13_0 = input.LA(1); - - if ( (LA13_0==LeftSquareBracket) ) { - switch ( input.LA(2) ) { - case RULE_INT: - { - int LA13_2 = input.LA(3); + // InternalSolverLanguageParser.g:2377:1: ( ( ( rule__ClassDeclaration__Group_4_0__0 ) ) | ( RULE_FULL_STOP ) ) + int alt14=2; + int LA14_0 = input.LA(1); - if ( (LA13_2==RightSquareBracket) ) { - alt13=2; - } - else if ( (LA13_2==FullStopFullStop) ) { - alt13=3; - } - else { - NoViableAltException nvae = - new NoViableAltException("", 13, 2, input); + if ( (LA14_0==LeftCurlyBracket) ) { + alt14=1; + } + else if ( (LA14_0==RULE_FULL_STOP) ) { + alt14=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 14, 0, input); + + throw nvae; + } + switch (alt14) { + case 1 : + // InternalSolverLanguageParser.g:2378:2: ( ( rule__ClassDeclaration__Group_4_0__0 ) ) + { + // InternalSolverLanguageParser.g:2378:2: ( ( rule__ClassDeclaration__Group_4_0__0 ) ) + // InternalSolverLanguageParser.g:2379:3: ( rule__ClassDeclaration__Group_4_0__0 ) + { + before(grammarAccess.getClassDeclarationAccess().getGroup_4_0()); + // InternalSolverLanguageParser.g:2380:3: ( rule__ClassDeclaration__Group_4_0__0 ) + // InternalSolverLanguageParser.g:2380:4: rule__ClassDeclaration__Group_4_0__0 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__Group_4_0__0(); + + state._fsp--; + + + } + + after(grammarAccess.getClassDeclarationAccess().getGroup_4_0()); - throw nvae; } + + } break; - case RightSquareBracket: + case 2 : + // InternalSolverLanguageParser.g:2384:2: ( RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:2384:2: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:2385:3: RULE_FULL_STOP + { + before(grammarAccess.getClassDeclarationAccess().getFULL_STOPTerminalRuleCall_4_1()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getFULL_STOPTerminalRuleCall_4_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ClassDeclaration__Alternatives_4" + + + // $ANTLR start "rule__Field__Alternatives_0" + // InternalSolverLanguageParser.g:2394:1: rule__Field__Alternatives_0 : ( ( ( rule__Field__ContainmentAssignment_0_0 ) ) | ( ( rule__Field__CrossReferenceAssignment_0_1 ) ) ); + public final void rule__Field__Alternatives_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2398:1: ( ( ( rule__Field__ContainmentAssignment_0_0 ) ) | ( ( rule__Field__CrossReferenceAssignment_0_1 ) ) ) + int alt15=2; + int LA15_0 = input.LA(1); + + if ( (LA15_0==Contains) ) { + alt15=1; + } + else if ( (LA15_0==Refers) ) { + alt15=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 15, 0, input); + + throw nvae; + } + switch (alt15) { + case 1 : + // InternalSolverLanguageParser.g:2399:2: ( ( rule__Field__ContainmentAssignment_0_0 ) ) + { + // InternalSolverLanguageParser.g:2399:2: ( ( rule__Field__ContainmentAssignment_0_0 ) ) + // InternalSolverLanguageParser.g:2400:3: ( rule__Field__ContainmentAssignment_0_0 ) + { + before(grammarAccess.getFieldAccess().getContainmentAssignment_0_0()); + // InternalSolverLanguageParser.g:2401:3: ( rule__Field__ContainmentAssignment_0_0 ) + // InternalSolverLanguageParser.g:2401:4: rule__Field__ContainmentAssignment_0_0 { - alt13=1; + pushFollow(FOLLOW_2); + rule__Field__ContainmentAssignment_0_0(); + + state._fsp--; + + + } + + after(grammarAccess.getFieldAccess().getContainmentAssignment_0_0()); + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:2405:2: ( ( rule__Field__CrossReferenceAssignment_0_1 ) ) + { + // InternalSolverLanguageParser.g:2405:2: ( ( rule__Field__CrossReferenceAssignment_0_1 ) ) + // InternalSolverLanguageParser.g:2406:3: ( rule__Field__CrossReferenceAssignment_0_1 ) + { + before(grammarAccess.getFieldAccess().getCrossReferenceAssignment_0_1()); + // InternalSolverLanguageParser.g:2407:3: ( rule__Field__CrossReferenceAssignment_0_1 ) + // InternalSolverLanguageParser.g:2407:4: rule__Field__CrossReferenceAssignment_0_1 + { + pushFollow(FOLLOW_2); + rule__Field__CrossReferenceAssignment_0_1(); + + state._fsp--; + + + } + + after(grammarAccess.getFieldAccess().getCrossReferenceAssignment_0_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Field__Alternatives_0" + + + // $ANTLR start "rule__Multiplicity__Alternatives" + // InternalSolverLanguageParser.g:2415:1: rule__Multiplicity__Alternatives : ( ( ruleUnboundedMultiplicity ) | ( ruleExactMultiplicity ) | ( ruleBoundedMultiplicity ) ); + public final void rule__Multiplicity__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2419:1: ( ( ruleUnboundedMultiplicity ) | ( ruleExactMultiplicity ) | ( ruleBoundedMultiplicity ) ) + int alt16=3; + int LA16_0 = input.LA(1); + + if ( (LA16_0==LeftSquareBracket) ) { + switch ( input.LA(2) ) { + case RULE_INT: + { + int LA16_2 = input.LA(3); + + if ( (LA16_2==Comma) ) { + alt16=3; + } + else if ( (LA16_2==RightSquareBracket) ) { + alt16=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 16, 2, input); + + throw nvae; + } } break; case Asterisk: { - alt13=2; + alt16=2; + } + break; + case RightSquareBracket: + { + alt16=1; } break; default: NoViableAltException nvae = - new NoViableAltException("", 13, 1, input); + new NoViableAltException("", 16, 1, input); throw nvae; } @@ -6661,24 +7609,24 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } else { NoViableAltException nvae = - new NoViableAltException("", 13, 0, input); + new NoViableAltException("", 16, 0, input); throw nvae; } - switch (alt13) { + switch (alt16) { case 1 : - // InternalSolverLanguageParser.g:2135:2: ( ruleManyMultiplicity ) + // InternalSolverLanguageParser.g:2420:2: ( ruleUnboundedMultiplicity ) { - // InternalSolverLanguageParser.g:2135:2: ( ruleManyMultiplicity ) - // InternalSolverLanguageParser.g:2136:3: ruleManyMultiplicity + // InternalSolverLanguageParser.g:2420:2: ( ruleUnboundedMultiplicity ) + // InternalSolverLanguageParser.g:2421:3: ruleUnboundedMultiplicity { - before(grammarAccess.getMultiplicityAccess().getManyMultiplicityParserRuleCall_0()); + before(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleManyMultiplicity(); + ruleUnboundedMultiplicity(); state._fsp--; - after(grammarAccess.getMultiplicityAccess().getManyMultiplicityParserRuleCall_0()); + after(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0()); } @@ -6686,10 +7634,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2141:2: ( ruleExactMultiplicity ) + // InternalSolverLanguageParser.g:2426:2: ( ruleExactMultiplicity ) { - // InternalSolverLanguageParser.g:2141:2: ( ruleExactMultiplicity ) - // InternalSolverLanguageParser.g:2142:3: ruleExactMultiplicity + // InternalSolverLanguageParser.g:2426:2: ( ruleExactMultiplicity ) + // InternalSolverLanguageParser.g:2427:3: ruleExactMultiplicity { before(grammarAccess.getMultiplicityAccess().getExactMultiplicityParserRuleCall_1()); pushFollow(FOLLOW_2); @@ -6705,10 +7653,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:2147:2: ( ruleBoundedMultiplicity ) + // InternalSolverLanguageParser.g:2432:2: ( ruleBoundedMultiplicity ) { - // InternalSolverLanguageParser.g:2147:2: ( ruleBoundedMultiplicity ) - // InternalSolverLanguageParser.g:2148:3: ruleBoundedMultiplicity + // InternalSolverLanguageParser.g:2432:2: ( ruleBoundedMultiplicity ) + // InternalSolverLanguageParser.g:2433:3: ruleBoundedMultiplicity { before(grammarAccess.getMultiplicityAccess().getBoundedMultiplicityParserRuleCall_2()); pushFollow(FOLLOW_2); @@ -6740,30 +7688,111 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__Multiplicity__Alternatives" - // $ANTLR start "rule__ScopeDefinition__Alternatives" - // InternalSolverLanguageParser.g:2157:1: rule__ScopeDefinition__Alternatives : ( ( ruleExactScopeDefinition ) | ( ruleBoundedScopeDefinition ) | ( ruleLowerBoundedScopeDefinition ) ); - public final void rule__ScopeDefinition__Alternatives() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Alternatives_2" + // InternalSolverLanguageParser.g:2442:1: rule__EnumDeclaration__Alternatives_2 : ( ( ( rule__EnumDeclaration__Group_2_0__0 ) ) | ( RULE_FULL_STOP ) ); + public final void rule__EnumDeclaration__Alternatives_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2161:1: ( ( ruleExactScopeDefinition ) | ( ruleBoundedScopeDefinition ) | ( ruleLowerBoundedScopeDefinition ) ) - int alt14=3; - alt14 = dfa14.predict(input); - switch (alt14) { + // InternalSolverLanguageParser.g:2446:1: ( ( ( rule__EnumDeclaration__Group_2_0__0 ) ) | ( RULE_FULL_STOP ) ) + int alt17=2; + int LA17_0 = input.LA(1); + + if ( (LA17_0==LeftCurlyBracket) ) { + alt17=1; + } + else if ( (LA17_0==RULE_FULL_STOP) ) { + alt17=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 17, 0, input); + + throw nvae; + } + switch (alt17) { + case 1 : + // InternalSolverLanguageParser.g:2447:2: ( ( rule__EnumDeclaration__Group_2_0__0 ) ) + { + // InternalSolverLanguageParser.g:2447:2: ( ( rule__EnumDeclaration__Group_2_0__0 ) ) + // InternalSolverLanguageParser.g:2448:3: ( rule__EnumDeclaration__Group_2_0__0 ) + { + before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0()); + // InternalSolverLanguageParser.g:2449:3: ( rule__EnumDeclaration__Group_2_0__0 ) + // InternalSolverLanguageParser.g:2449:4: rule__EnumDeclaration__Group_2_0__0 + { + pushFollow(FOLLOW_2); + rule__EnumDeclaration__Group_2_0__0(); + + state._fsp--; + + + } + + after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0()); + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:2453:2: ( RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:2453:2: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:2454:3: RULE_FULL_STOP + { + before(grammarAccess.getEnumDeclarationAccess().getFULL_STOPTerminalRuleCall_2_1()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getEnumDeclarationAccess().getFULL_STOPTerminalRuleCall_2_1()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__EnumDeclaration__Alternatives_2" + + + // $ANTLR start "rule__ScopeDeclaration__Alternatives" + // InternalSolverLanguageParser.g:2463:1: rule__ScopeDeclaration__Alternatives : ( ( ruleExactScope ) | ( ruleBoundedScope ) | ( ruleLowerBoundedScope ) ); + public final void rule__ScopeDeclaration__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2467:1: ( ( ruleExactScope ) | ( ruleBoundedScope ) | ( ruleLowerBoundedScope ) ) + int alt18=3; + alt18 = dfa18.predict(input); + switch (alt18) { case 1 : - // InternalSolverLanguageParser.g:2162:2: ( ruleExactScopeDefinition ) + // InternalSolverLanguageParser.g:2468:2: ( ruleExactScope ) { - // InternalSolverLanguageParser.g:2162:2: ( ruleExactScopeDefinition ) - // InternalSolverLanguageParser.g:2163:3: ruleExactScopeDefinition + // InternalSolverLanguageParser.g:2468:2: ( ruleExactScope ) + // InternalSolverLanguageParser.g:2469:3: ruleExactScope { - before(grammarAccess.getScopeDefinitionAccess().getExactScopeDefinitionParserRuleCall_0()); + before(grammarAccess.getScopeDeclarationAccess().getExactScopeParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleExactScopeDefinition(); + ruleExactScope(); state._fsp--; - after(grammarAccess.getScopeDefinitionAccess().getExactScopeDefinitionParserRuleCall_0()); + after(grammarAccess.getScopeDeclarationAccess().getExactScopeParserRuleCall_0()); } @@ -6771,18 +7800,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2168:2: ( ruleBoundedScopeDefinition ) + // InternalSolverLanguageParser.g:2474:2: ( ruleBoundedScope ) { - // InternalSolverLanguageParser.g:2168:2: ( ruleBoundedScopeDefinition ) - // InternalSolverLanguageParser.g:2169:3: ruleBoundedScopeDefinition + // InternalSolverLanguageParser.g:2474:2: ( ruleBoundedScope ) + // InternalSolverLanguageParser.g:2475:3: ruleBoundedScope { - before(grammarAccess.getScopeDefinitionAccess().getBoundedScopeDefinitionParserRuleCall_1()); + before(grammarAccess.getScopeDeclarationAccess().getBoundedScopeParserRuleCall_1()); pushFollow(FOLLOW_2); - ruleBoundedScopeDefinition(); + ruleBoundedScope(); state._fsp--; - after(grammarAccess.getScopeDefinitionAccess().getBoundedScopeDefinitionParserRuleCall_1()); + after(grammarAccess.getScopeDeclarationAccess().getBoundedScopeParserRuleCall_1()); } @@ -6790,18 +7819,18 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:2174:2: ( ruleLowerBoundedScopeDefinition ) + // InternalSolverLanguageParser.g:2480:2: ( ruleLowerBoundedScope ) { - // InternalSolverLanguageParser.g:2174:2: ( ruleLowerBoundedScopeDefinition ) - // InternalSolverLanguageParser.g:2175:3: ruleLowerBoundedScopeDefinition + // InternalSolverLanguageParser.g:2480:2: ( ruleLowerBoundedScope ) + // InternalSolverLanguageParser.g:2481:3: ruleLowerBoundedScope { - before(grammarAccess.getScopeDefinitionAccess().getLowerBoundedScopeDefinitionParserRuleCall_2()); + before(grammarAccess.getScopeDeclarationAccess().getLowerBoundedScopeParserRuleCall_2()); pushFollow(FOLLOW_2); - ruleLowerBoundedScopeDefinition(); + ruleLowerBoundedScope(); state._fsp--; - after(grammarAccess.getScopeDefinitionAccess().getLowerBoundedScopeDefinitionParserRuleCall_2()); + after(grammarAccess.getScopeDeclarationAccess().getLowerBoundedScopeParserRuleCall_2()); } @@ -6822,65 +7851,65 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ScopeDefinition__Alternatives" + // $ANTLR end "rule__ScopeDeclaration__Alternatives" - // $ANTLR start "rule__BoundedScopeDefinition__Alternatives_1" - // InternalSolverLanguageParser.g:2184:1: rule__BoundedScopeDefinition__Alternatives_1 : ( ( ( rule__BoundedScopeDefinition__Group_1_0__0 ) ) | ( ( rule__BoundedScopeDefinition__Group_1_1__0 ) ) ); - public final void rule__BoundedScopeDefinition__Alternatives_1() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Alternatives_1" + // InternalSolverLanguageParser.g:2490:1: rule__BoundedScope__Alternatives_1 : ( ( ( rule__BoundedScope__Group_1_0__0 ) ) | ( ( rule__BoundedScope__Group_1_1__0 ) ) ); + public final void rule__BoundedScope__Alternatives_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2188:1: ( ( ( rule__BoundedScopeDefinition__Group_1_0__0 ) ) | ( ( rule__BoundedScopeDefinition__Group_1_1__0 ) ) ) - int alt15=2; - int LA15_0 = input.LA(1); + // InternalSolverLanguageParser.g:2494:1: ( ( ( rule__BoundedScope__Group_1_0__0 ) ) | ( ( rule__BoundedScope__Group_1_1__0 ) ) ) + int alt19=2; + int LA19_0 = input.LA(1); - if ( (LA15_0==RULE_INT) ) { - int LA15_1 = input.LA(2); + if ( (LA19_0==RULE_INT) ) { + int LA19_1 = input.LA(2); - if ( (LA15_1==GreaterThanSignEqualsSign) ) { - alt15=2; + if ( (LA19_1==LessThanSignEqualsSign) ) { + alt19=1; } - else if ( (LA15_1==LessThanSignEqualsSign) ) { - alt15=1; + else if ( (LA19_1==GreaterThanSignEqualsSign) ) { + alt19=2; } else { NoViableAltException nvae = - new NoViableAltException("", 15, 1, input); + new NoViableAltException("", 19, 1, input); throw nvae; } } - else if ( (LA15_0==RULE_QUOTED_ID||LA15_0==RULE_ID) ) { - alt15=1; + else if ( (LA19_0==Object||LA19_0==RULE_QUOTED_ID||LA19_0==RULE_ID) ) { + alt19=1; } else { NoViableAltException nvae = - new NoViableAltException("", 15, 0, input); + new NoViableAltException("", 19, 0, input); throw nvae; } - switch (alt15) { + switch (alt19) { case 1 : - // InternalSolverLanguageParser.g:2189:2: ( ( rule__BoundedScopeDefinition__Group_1_0__0 ) ) + // InternalSolverLanguageParser.g:2495:2: ( ( rule__BoundedScope__Group_1_0__0 ) ) { - // InternalSolverLanguageParser.g:2189:2: ( ( rule__BoundedScopeDefinition__Group_1_0__0 ) ) - // InternalSolverLanguageParser.g:2190:3: ( rule__BoundedScopeDefinition__Group_1_0__0 ) + // InternalSolverLanguageParser.g:2495:2: ( ( rule__BoundedScope__Group_1_0__0 ) ) + // InternalSolverLanguageParser.g:2496:3: ( rule__BoundedScope__Group_1_0__0 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0()); - // InternalSolverLanguageParser.g:2191:3: ( rule__BoundedScopeDefinition__Group_1_0__0 ) - // InternalSolverLanguageParser.g:2191:4: rule__BoundedScopeDefinition__Group_1_0__0 + before(grammarAccess.getBoundedScopeAccess().getGroup_1_0()); + // InternalSolverLanguageParser.g:2497:3: ( rule__BoundedScope__Group_1_0__0 ) + // InternalSolverLanguageParser.g:2497:4: rule__BoundedScope__Group_1_0__0 { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_0__0(); + rule__BoundedScope__Group_1_0__0(); state._fsp--; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0()); + after(grammarAccess.getBoundedScopeAccess().getGroup_1_0()); } @@ -6888,24 +7917,24 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2195:2: ( ( rule__BoundedScopeDefinition__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:2501:2: ( ( rule__BoundedScope__Group_1_1__0 ) ) { - // InternalSolverLanguageParser.g:2195:2: ( ( rule__BoundedScopeDefinition__Group_1_1__0 ) ) - // InternalSolverLanguageParser.g:2196:3: ( rule__BoundedScopeDefinition__Group_1_1__0 ) + // InternalSolverLanguageParser.g:2501:2: ( ( rule__BoundedScope__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:2502:3: ( rule__BoundedScope__Group_1_1__0 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1()); - // InternalSolverLanguageParser.g:2197:3: ( rule__BoundedScopeDefinition__Group_1_1__0 ) - // InternalSolverLanguageParser.g:2197:4: rule__BoundedScopeDefinition__Group_1_1__0 + before(grammarAccess.getBoundedScopeAccess().getGroup_1_1()); + // InternalSolverLanguageParser.g:2503:3: ( rule__BoundedScope__Group_1_1__0 ) + // InternalSolverLanguageParser.g:2503:4: rule__BoundedScope__Group_1_1__0 { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_1__0(); + rule__BoundedScope__Group_1_1__0(); state._fsp--; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1()); + after(grammarAccess.getBoundedScopeAccess().getGroup_1_1()); } @@ -6926,52 +7955,52 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Alternatives_1" + // $ANTLR end "rule__BoundedScope__Alternatives_1" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Alternatives_1" - // InternalSolverLanguageParser.g:2205:1: rule__LowerBoundedScopeDefinition__Alternatives_1 : ( ( ( rule__LowerBoundedScopeDefinition__Group_1_0__0 ) ) | ( ( rule__LowerBoundedScopeDefinition__Group_1_1__0 ) ) ); - public final void rule__LowerBoundedScopeDefinition__Alternatives_1() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Alternatives_1" + // InternalSolverLanguageParser.g:2511:1: rule__LowerBoundedScope__Alternatives_1 : ( ( ( rule__LowerBoundedScope__Group_1_0__0 ) ) | ( ( rule__LowerBoundedScope__Group_1_1__0 ) ) ); + public final void rule__LowerBoundedScope__Alternatives_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2209:1: ( ( ( rule__LowerBoundedScopeDefinition__Group_1_0__0 ) ) | ( ( rule__LowerBoundedScopeDefinition__Group_1_1__0 ) ) ) - int alt16=2; - int LA16_0 = input.LA(1); + // InternalSolverLanguageParser.g:2515:1: ( ( ( rule__LowerBoundedScope__Group_1_0__0 ) ) | ( ( rule__LowerBoundedScope__Group_1_1__0 ) ) ) + int alt20=2; + int LA20_0 = input.LA(1); - if ( (LA16_0==RULE_INT) ) { - alt16=1; + if ( (LA20_0==RULE_INT) ) { + alt20=1; } - else if ( (LA16_0==RULE_QUOTED_ID||LA16_0==RULE_ID) ) { - alt16=2; + else if ( (LA20_0==Object||LA20_0==RULE_QUOTED_ID||LA20_0==RULE_ID) ) { + alt20=2; } else { NoViableAltException nvae = - new NoViableAltException("", 16, 0, input); + new NoViableAltException("", 20, 0, input); throw nvae; } - switch (alt16) { + switch (alt20) { case 1 : - // InternalSolverLanguageParser.g:2210:2: ( ( rule__LowerBoundedScopeDefinition__Group_1_0__0 ) ) + // InternalSolverLanguageParser.g:2516:2: ( ( rule__LowerBoundedScope__Group_1_0__0 ) ) { - // InternalSolverLanguageParser.g:2210:2: ( ( rule__LowerBoundedScopeDefinition__Group_1_0__0 ) ) - // InternalSolverLanguageParser.g:2211:3: ( rule__LowerBoundedScopeDefinition__Group_1_0__0 ) + // InternalSolverLanguageParser.g:2516:2: ( ( rule__LowerBoundedScope__Group_1_0__0 ) ) + // InternalSolverLanguageParser.g:2517:3: ( rule__LowerBoundedScope__Group_1_0__0 ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_0()); - // InternalSolverLanguageParser.g:2212:3: ( rule__LowerBoundedScopeDefinition__Group_1_0__0 ) - // InternalSolverLanguageParser.g:2212:4: rule__LowerBoundedScopeDefinition__Group_1_0__0 + before(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_0()); + // InternalSolverLanguageParser.g:2518:3: ( rule__LowerBoundedScope__Group_1_0__0 ) + // InternalSolverLanguageParser.g:2518:4: rule__LowerBoundedScope__Group_1_0__0 { pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group_1_0__0(); + rule__LowerBoundedScope__Group_1_0__0(); state._fsp--; } - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_0()); + after(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_0()); } @@ -6979,24 +8008,24 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2216:2: ( ( rule__LowerBoundedScopeDefinition__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:2522:2: ( ( rule__LowerBoundedScope__Group_1_1__0 ) ) { - // InternalSolverLanguageParser.g:2216:2: ( ( rule__LowerBoundedScopeDefinition__Group_1_1__0 ) ) - // InternalSolverLanguageParser.g:2217:3: ( rule__LowerBoundedScopeDefinition__Group_1_1__0 ) + // InternalSolverLanguageParser.g:2522:2: ( ( rule__LowerBoundedScope__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:2523:3: ( rule__LowerBoundedScope__Group_1_1__0 ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_1()); - // InternalSolverLanguageParser.g:2218:3: ( rule__LowerBoundedScopeDefinition__Group_1_1__0 ) - // InternalSolverLanguageParser.g:2218:4: rule__LowerBoundedScopeDefinition__Group_1_1__0 + before(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_1()); + // InternalSolverLanguageParser.g:2524:3: ( rule__LowerBoundedScope__Group_1_1__0 ) + // InternalSolverLanguageParser.g:2524:4: rule__LowerBoundedScope__Group_1_1__0 { pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group_1_1__0(); + rule__LowerBoundedScope__Group_1_1__0(); state._fsp--; } - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGroup_1_1()); + after(grammarAccess.getLowerBoundedScopeAccess().getGroup_1_1()); } @@ -7017,38 +8046,38 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Alternatives_1" + // $ANTLR end "rule__LowerBoundedScope__Alternatives_1" // $ANTLR start "rule__UpperMultiplicty__Alternatives" - // InternalSolverLanguageParser.g:2226:1: rule__UpperMultiplicty__Alternatives : ( ( RULE_INT ) | ( Asterisk ) ); + // InternalSolverLanguageParser.g:2532:1: rule__UpperMultiplicty__Alternatives : ( ( RULE_INT ) | ( Asterisk ) ); public final void rule__UpperMultiplicty__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2230:1: ( ( RULE_INT ) | ( Asterisk ) ) - int alt17=2; - int LA17_0 = input.LA(1); + // InternalSolverLanguageParser.g:2536:1: ( ( RULE_INT ) | ( Asterisk ) ) + int alt21=2; + int LA21_0 = input.LA(1); - if ( (LA17_0==RULE_INT) ) { - alt17=1; + if ( (LA21_0==RULE_INT) ) { + alt21=1; } - else if ( (LA17_0==Asterisk) ) { - alt17=2; + else if ( (LA21_0==Asterisk) ) { + alt21=2; } else { NoViableAltException nvae = - new NoViableAltException("", 17, 0, input); + new NoViableAltException("", 21, 0, input); throw nvae; } - switch (alt17) { + switch (alt21) { case 1 : - // InternalSolverLanguageParser.g:2231:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:2537:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:2231:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:2232:3: RULE_INT + // InternalSolverLanguageParser.g:2537:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:2538:3: RULE_INT { before(grammarAccess.getUpperMultiplictyAccess().getINTTerminalRuleCall_0()); match(input,RULE_INT,FOLLOW_2); @@ -7060,10 +8089,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2237:2: ( Asterisk ) + // InternalSolverLanguageParser.g:2543:2: ( Asterisk ) { - // InternalSolverLanguageParser.g:2237:2: ( Asterisk ) - // InternalSolverLanguageParser.g:2238:3: Asterisk + // InternalSolverLanguageParser.g:2543:2: ( Asterisk ) + // InternalSolverLanguageParser.g:2544:3: Asterisk { before(grammarAccess.getUpperMultiplictyAccess().getAsteriskKeyword_1()); match(input,Asterisk,FOLLOW_2); @@ -7091,49 +8120,154 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__UpperMultiplicty__Alternatives" - // $ANTLR start "rule__QualifiedName__Alternatives" - // InternalSolverLanguageParser.g:2247:1: rule__QualifiedName__Alternatives : ( ( ( rule__QualifiedName__Group_0__0 ) ) | ( RULE_QUOTED_ID ) ); - public final void rule__QualifiedName__Alternatives() throws RecognitionException { + // $ANTLR start "rule__QualifiedNameSegment__Alternatives" + // InternalSolverLanguageParser.g:2553:1: rule__QualifiedNameSegment__Alternatives : ( ( RULE_ID ) | ( RULE_QUOTED_ID ) | ( Object ) ); + public final void rule__QualifiedNameSegment__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2251:1: ( ( ( rule__QualifiedName__Group_0__0 ) ) | ( RULE_QUOTED_ID ) ) - int alt18=2; - int LA18_0 = input.LA(1); - - if ( (LA18_0==RULE_ID) ) { - alt18=1; - } - else if ( (LA18_0==RULE_QUOTED_ID) ) { - alt18=2; - } - else { + // InternalSolverLanguageParser.g:2557:1: ( ( RULE_ID ) | ( RULE_QUOTED_ID ) | ( Object ) ) + int alt22=3; + switch ( input.LA(1) ) { + case RULE_ID: + { + alt22=1; + } + break; + case RULE_QUOTED_ID: + { + alt22=2; + } + break; + case Object: + { + alt22=3; + } + break; + default: NoViableAltException nvae = - new NoViableAltException("", 18, 0, input); + new NoViableAltException("", 22, 0, input); throw nvae; } - switch (alt18) { + + switch (alt22) { case 1 : - // InternalSolverLanguageParser.g:2252:2: ( ( rule__QualifiedName__Group_0__0 ) ) - { - // InternalSolverLanguageParser.g:2252:2: ( ( rule__QualifiedName__Group_0__0 ) ) - // InternalSolverLanguageParser.g:2253:3: ( rule__QualifiedName__Group_0__0 ) + // InternalSolverLanguageParser.g:2558:2: ( RULE_ID ) { - before(grammarAccess.getQualifiedNameAccess().getGroup_0()); - // InternalSolverLanguageParser.g:2254:3: ( rule__QualifiedName__Group_0__0 ) - // InternalSolverLanguageParser.g:2254:4: rule__QualifiedName__Group_0__0 + // InternalSolverLanguageParser.g:2558:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:2559:3: RULE_ID { - pushFollow(FOLLOW_2); - rule__QualifiedName__Group_0__0(); + before(grammarAccess.getQualifiedNameSegmentAccess().getIDTerminalRuleCall_0()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getQualifiedNameSegmentAccess().getIDTerminalRuleCall_0()); - state._fsp--; + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:2564:2: ( RULE_QUOTED_ID ) + { + // InternalSolverLanguageParser.g:2564:2: ( RULE_QUOTED_ID ) + // InternalSolverLanguageParser.g:2565:3: RULE_QUOTED_ID + { + before(grammarAccess.getQualifiedNameSegmentAccess().getQUOTED_IDTerminalRuleCall_1()); + match(input,RULE_QUOTED_ID,FOLLOW_2); + after(grammarAccess.getQualifiedNameSegmentAccess().getQUOTED_IDTerminalRuleCall_1()); + + } + + + } + break; + case 3 : + // InternalSolverLanguageParser.g:2570:2: ( Object ) + { + // InternalSolverLanguageParser.g:2570:2: ( Object ) + // InternalSolverLanguageParser.g:2571:3: Object + { + before(grammarAccess.getQualifiedNameSegmentAccess().getObjectKeyword_2()); + match(input,Object,FOLLOW_2); + after(grammarAccess.getQualifiedNameSegmentAccess().getObjectKeyword_2()); + + } + + + } + break; + + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__QualifiedNameSegment__Alternatives" + + + // $ANTLR start "rule__AttributeKind__Alternatives" + // InternalSolverLanguageParser.g:2580:1: rule__AttributeKind__Alternatives : ( ( ( Functional ) ) | ( ( Error ) ) | ( ( Root ) ) | ( ( Containment ) ) ); + public final void rule__AttributeKind__Alternatives() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2584:1: ( ( ( Functional ) ) | ( ( Error ) ) | ( ( Root ) ) | ( ( Containment ) ) ) + int alt23=4; + switch ( input.LA(1) ) { + case Functional: + { + alt23=1; + } + break; + case Error: + { + alt23=2; + } + break; + case Root: + { + alt23=3; + } + break; + case Containment: + { + alt23=4; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 23, 0, input); + throw nvae; + } + + switch (alt23) { + case 1 : + // InternalSolverLanguageParser.g:2585:2: ( ( Functional ) ) + { + // InternalSolverLanguageParser.g:2585:2: ( ( Functional ) ) + // InternalSolverLanguageParser.g:2586:3: ( Functional ) + { + before(grammarAccess.getAttributeKindAccess().getFUNCTIONALEnumLiteralDeclaration_0()); + // InternalSolverLanguageParser.g:2587:3: ( Functional ) + // InternalSolverLanguageParser.g:2587:4: Functional + { + match(input,Functional,FOLLOW_2); } - after(grammarAccess.getQualifiedNameAccess().getGroup_0()); + after(grammarAccess.getAttributeKindAccess().getFUNCTIONALEnumLiteralDeclaration_0()); } @@ -7141,14 +8275,62 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2258:2: ( RULE_QUOTED_ID ) + // InternalSolverLanguageParser.g:2591:2: ( ( Error ) ) { - // InternalSolverLanguageParser.g:2258:2: ( RULE_QUOTED_ID ) - // InternalSolverLanguageParser.g:2259:3: RULE_QUOTED_ID + // InternalSolverLanguageParser.g:2591:2: ( ( Error ) ) + // InternalSolverLanguageParser.g:2592:3: ( Error ) { - before(grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_1()); - match(input,RULE_QUOTED_ID,FOLLOW_2); - after(grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_1()); + before(grammarAccess.getAttributeKindAccess().getERROREnumLiteralDeclaration_1()); + // InternalSolverLanguageParser.g:2593:3: ( Error ) + // InternalSolverLanguageParser.g:2593:4: Error + { + match(input,Error,FOLLOW_2); + + } + + after(grammarAccess.getAttributeKindAccess().getERROREnumLiteralDeclaration_1()); + + } + + + } + break; + case 3 : + // InternalSolverLanguageParser.g:2597:2: ( ( Root ) ) + { + // InternalSolverLanguageParser.g:2597:2: ( ( Root ) ) + // InternalSolverLanguageParser.g:2598:3: ( Root ) + { + before(grammarAccess.getAttributeKindAccess().getROOTEnumLiteralDeclaration_2()); + // InternalSolverLanguageParser.g:2599:3: ( Root ) + // InternalSolverLanguageParser.g:2599:4: Root + { + match(input,Root,FOLLOW_2); + + } + + after(grammarAccess.getAttributeKindAccess().getROOTEnumLiteralDeclaration_2()); + + } + + + } + break; + case 4 : + // InternalSolverLanguageParser.g:2603:2: ( ( Containment ) ) + { + // InternalSolverLanguageParser.g:2603:2: ( ( Containment ) ) + // InternalSolverLanguageParser.g:2604:3: ( Containment ) + { + before(grammarAccess.getAttributeKindAccess().getCONTAINMENTEnumLiteralDeclaration_3()); + // InternalSolverLanguageParser.g:2605:3: ( Containment ) + // InternalSolverLanguageParser.g:2605:4: Containment + { + match(input,Containment,FOLLOW_2); + + } + + after(grammarAccess.getAttributeKindAccess().getCONTAINMENTEnumLiteralDeclaration_3()); } @@ -7169,77 +8351,77 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Alternatives" + // $ANTLR end "rule__AttributeKind__Alternatives" // $ANTLR start "rule__ComparisonOperator__Alternatives" - // InternalSolverLanguageParser.g:2268:1: rule__ComparisonOperator__Alternatives : ( ( ( EqualsSignEqualsSign ) ) | ( ( ExclamationMarkEqualsSign ) ) | ( ( LessThanSign ) ) | ( ( LessThanSignEqualsSign ) ) | ( ( GreaterThanSign ) ) | ( ( GreaterThanSignEqualsSign ) ) | ( ( In ) ) ); + // InternalSolverLanguageParser.g:2613:1: rule__ComparisonOperator__Alternatives : ( ( ( EqualsSignEqualsSign ) ) | ( ( ExclamationMarkEqualsSign ) ) | ( ( LessThanSign ) ) | ( ( LessThanSignEqualsSign ) ) | ( ( GreaterThanSign ) ) | ( ( GreaterThanSignEqualsSign ) ) | ( ( In ) ) ); public final void rule__ComparisonOperator__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2272:1: ( ( ( EqualsSignEqualsSign ) ) | ( ( ExclamationMarkEqualsSign ) ) | ( ( LessThanSign ) ) | ( ( LessThanSignEqualsSign ) ) | ( ( GreaterThanSign ) ) | ( ( GreaterThanSignEqualsSign ) ) | ( ( In ) ) ) - int alt19=7; + // InternalSolverLanguageParser.g:2617:1: ( ( ( EqualsSignEqualsSign ) ) | ( ( ExclamationMarkEqualsSign ) ) | ( ( LessThanSign ) ) | ( ( LessThanSignEqualsSign ) ) | ( ( GreaterThanSign ) ) | ( ( GreaterThanSignEqualsSign ) ) | ( ( In ) ) ) + int alt24=7; switch ( input.LA(1) ) { case EqualsSignEqualsSign: { - alt19=1; + alt24=1; } break; case ExclamationMarkEqualsSign: { - alt19=2; + alt24=2; } break; case LessThanSign: { - alt19=3; + alt24=3; } break; case LessThanSignEqualsSign: { - alt19=4; + alt24=4; } break; case GreaterThanSign: { - alt19=5; + alt24=5; } break; case GreaterThanSignEqualsSign: { - alt19=6; + alt24=6; } break; case In: { - alt19=7; + alt24=7; } break; default: NoViableAltException nvae = - new NoViableAltException("", 19, 0, input); + new NoViableAltException("", 24, 0, input); throw nvae; } - switch (alt19) { + switch (alt24) { case 1 : - // InternalSolverLanguageParser.g:2273:2: ( ( EqualsSignEqualsSign ) ) + // InternalSolverLanguageParser.g:2618:2: ( ( EqualsSignEqualsSign ) ) { - // InternalSolverLanguageParser.g:2273:2: ( ( EqualsSignEqualsSign ) ) - // InternalSolverLanguageParser.g:2274:3: ( EqualsSignEqualsSign ) + // InternalSolverLanguageParser.g:2618:2: ( ( EqualsSignEqualsSign ) ) + // InternalSolverLanguageParser.g:2619:3: ( EqualsSignEqualsSign ) { - before(grammarAccess.getComparisonOperatorAccess().getEQEnumLiteralDeclaration_0()); - // InternalSolverLanguageParser.g:2275:3: ( EqualsSignEqualsSign ) - // InternalSolverLanguageParser.g:2275:4: EqualsSignEqualsSign + before(grammarAccess.getComparisonOperatorAccess().getEQUALSEnumLiteralDeclaration_0()); + // InternalSolverLanguageParser.g:2620:3: ( EqualsSignEqualsSign ) + // InternalSolverLanguageParser.g:2620:4: EqualsSignEqualsSign { match(input,EqualsSignEqualsSign,FOLLOW_2); } - after(grammarAccess.getComparisonOperatorAccess().getEQEnumLiteralDeclaration_0()); + after(grammarAccess.getComparisonOperatorAccess().getEQUALSEnumLiteralDeclaration_0()); } @@ -7247,20 +8429,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2279:2: ( ( ExclamationMarkEqualsSign ) ) + // InternalSolverLanguageParser.g:2624:2: ( ( ExclamationMarkEqualsSign ) ) { - // InternalSolverLanguageParser.g:2279:2: ( ( ExclamationMarkEqualsSign ) ) - // InternalSolverLanguageParser.g:2280:3: ( ExclamationMarkEqualsSign ) + // InternalSolverLanguageParser.g:2624:2: ( ( ExclamationMarkEqualsSign ) ) + // InternalSolverLanguageParser.g:2625:3: ( ExclamationMarkEqualsSign ) { - before(grammarAccess.getComparisonOperatorAccess().getNOT_EQEnumLiteralDeclaration_1()); - // InternalSolverLanguageParser.g:2281:3: ( ExclamationMarkEqualsSign ) - // InternalSolverLanguageParser.g:2281:4: ExclamationMarkEqualsSign + before(grammarAccess.getComparisonOperatorAccess().getNOT_EQUALSEnumLiteralDeclaration_1()); + // InternalSolverLanguageParser.g:2626:3: ( ExclamationMarkEqualsSign ) + // InternalSolverLanguageParser.g:2626:4: ExclamationMarkEqualsSign { match(input,ExclamationMarkEqualsSign,FOLLOW_2); } - after(grammarAccess.getComparisonOperatorAccess().getNOT_EQEnumLiteralDeclaration_1()); + after(grammarAccess.getComparisonOperatorAccess().getNOT_EQUALSEnumLiteralDeclaration_1()); } @@ -7268,14 +8450,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:2285:2: ( ( LessThanSign ) ) + // InternalSolverLanguageParser.g:2630:2: ( ( LessThanSign ) ) { - // InternalSolverLanguageParser.g:2285:2: ( ( LessThanSign ) ) - // InternalSolverLanguageParser.g:2286:3: ( LessThanSign ) + // InternalSolverLanguageParser.g:2630:2: ( ( LessThanSign ) ) + // InternalSolverLanguageParser.g:2631:3: ( LessThanSign ) { before(grammarAccess.getComparisonOperatorAccess().getLESSEnumLiteralDeclaration_2()); - // InternalSolverLanguageParser.g:2287:3: ( LessThanSign ) - // InternalSolverLanguageParser.g:2287:4: LessThanSign + // InternalSolverLanguageParser.g:2632:3: ( LessThanSign ) + // InternalSolverLanguageParser.g:2632:4: LessThanSign { match(input,LessThanSign,FOLLOW_2); @@ -7289,20 +8471,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 4 : - // InternalSolverLanguageParser.g:2291:2: ( ( LessThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:2636:2: ( ( LessThanSignEqualsSign ) ) { - // InternalSolverLanguageParser.g:2291:2: ( ( LessThanSignEqualsSign ) ) - // InternalSolverLanguageParser.g:2292:3: ( LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:2636:2: ( ( LessThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:2637:3: ( LessThanSignEqualsSign ) { - before(grammarAccess.getComparisonOperatorAccess().getLESS_EQEnumLiteralDeclaration_3()); - // InternalSolverLanguageParser.g:2293:3: ( LessThanSignEqualsSign ) - // InternalSolverLanguageParser.g:2293:4: LessThanSignEqualsSign + before(grammarAccess.getComparisonOperatorAccess().getLESS_EQUALSEnumLiteralDeclaration_3()); + // InternalSolverLanguageParser.g:2638:3: ( LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:2638:4: LessThanSignEqualsSign { match(input,LessThanSignEqualsSign,FOLLOW_2); } - after(grammarAccess.getComparisonOperatorAccess().getLESS_EQEnumLiteralDeclaration_3()); + after(grammarAccess.getComparisonOperatorAccess().getLESS_EQUALSEnumLiteralDeclaration_3()); } @@ -7310,14 +8492,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 5 : - // InternalSolverLanguageParser.g:2297:2: ( ( GreaterThanSign ) ) + // InternalSolverLanguageParser.g:2642:2: ( ( GreaterThanSign ) ) { - // InternalSolverLanguageParser.g:2297:2: ( ( GreaterThanSign ) ) - // InternalSolverLanguageParser.g:2298:3: ( GreaterThanSign ) + // InternalSolverLanguageParser.g:2642:2: ( ( GreaterThanSign ) ) + // InternalSolverLanguageParser.g:2643:3: ( GreaterThanSign ) { before(grammarAccess.getComparisonOperatorAccess().getGREATEREnumLiteralDeclaration_4()); - // InternalSolverLanguageParser.g:2299:3: ( GreaterThanSign ) - // InternalSolverLanguageParser.g:2299:4: GreaterThanSign + // InternalSolverLanguageParser.g:2644:3: ( GreaterThanSign ) + // InternalSolverLanguageParser.g:2644:4: GreaterThanSign { match(input,GreaterThanSign,FOLLOW_2); @@ -7331,20 +8513,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 6 : - // InternalSolverLanguageParser.g:2303:2: ( ( GreaterThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:2648:2: ( ( GreaterThanSignEqualsSign ) ) { - // InternalSolverLanguageParser.g:2303:2: ( ( GreaterThanSignEqualsSign ) ) - // InternalSolverLanguageParser.g:2304:3: ( GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:2648:2: ( ( GreaterThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:2649:3: ( GreaterThanSignEqualsSign ) { - before(grammarAccess.getComparisonOperatorAccess().getGREATER_EQEnumLiteralDeclaration_5()); - // InternalSolverLanguageParser.g:2305:3: ( GreaterThanSignEqualsSign ) - // InternalSolverLanguageParser.g:2305:4: GreaterThanSignEqualsSign + before(grammarAccess.getComparisonOperatorAccess().getGREATER_EQUALSEnumLiteralDeclaration_5()); + // InternalSolverLanguageParser.g:2650:3: ( GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:2650:4: GreaterThanSignEqualsSign { match(input,GreaterThanSignEqualsSign,FOLLOW_2); } - after(grammarAccess.getComparisonOperatorAccess().getGREATER_EQEnumLiteralDeclaration_5()); + after(grammarAccess.getComparisonOperatorAccess().getGREATER_EQUALSEnumLiteralDeclaration_5()); } @@ -7352,14 +8534,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 7 : - // InternalSolverLanguageParser.g:2309:2: ( ( In ) ) + // InternalSolverLanguageParser.g:2654:2: ( ( In ) ) { - // InternalSolverLanguageParser.g:2309:2: ( ( In ) ) - // InternalSolverLanguageParser.g:2310:3: ( In ) + // InternalSolverLanguageParser.g:2654:2: ( ( In ) ) + // InternalSolverLanguageParser.g:2655:3: ( In ) { before(grammarAccess.getComparisonOperatorAccess().getINEnumLiteralDeclaration_6()); - // InternalSolverLanguageParser.g:2311:3: ( In ) - // InternalSolverLanguageParser.g:2311:4: In + // InternalSolverLanguageParser.g:2656:3: ( In ) + // InternalSolverLanguageParser.g:2656:4: In { match(input,In,FOLLOW_2); @@ -7390,44 +8572,44 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__AdditiveBinaryOperator__Alternatives" - // InternalSolverLanguageParser.g:2319:1: rule__AdditiveBinaryOperator__Alternatives : ( ( ( PlusSign ) ) | ( ( HyphenMinus ) ) ); + // InternalSolverLanguageParser.g:2664:1: rule__AdditiveBinaryOperator__Alternatives : ( ( ( PlusSign ) ) | ( ( HyphenMinus ) ) ); public final void rule__AdditiveBinaryOperator__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2323:1: ( ( ( PlusSign ) ) | ( ( HyphenMinus ) ) ) - int alt20=2; - int LA20_0 = input.LA(1); + // InternalSolverLanguageParser.g:2668:1: ( ( ( PlusSign ) ) | ( ( HyphenMinus ) ) ) + int alt25=2; + int LA25_0 = input.LA(1); - if ( (LA20_0==PlusSign) ) { - alt20=1; + if ( (LA25_0==PlusSign) ) { + alt25=1; } - else if ( (LA20_0==HyphenMinus) ) { - alt20=2; + else if ( (LA25_0==HyphenMinus) ) { + alt25=2; } else { NoViableAltException nvae = - new NoViableAltException("", 20, 0, input); + new NoViableAltException("", 25, 0, input); throw nvae; } - switch (alt20) { + switch (alt25) { case 1 : - // InternalSolverLanguageParser.g:2324:2: ( ( PlusSign ) ) + // InternalSolverLanguageParser.g:2669:2: ( ( PlusSign ) ) { - // InternalSolverLanguageParser.g:2324:2: ( ( PlusSign ) ) - // InternalSolverLanguageParser.g:2325:3: ( PlusSign ) + // InternalSolverLanguageParser.g:2669:2: ( ( PlusSign ) ) + // InternalSolverLanguageParser.g:2670:3: ( PlusSign ) { - before(grammarAccess.getAdditiveBinaryOperatorAccess().getADDEnumLiteralDeclaration_0()); - // InternalSolverLanguageParser.g:2326:3: ( PlusSign ) - // InternalSolverLanguageParser.g:2326:4: PlusSign + before(grammarAccess.getAdditiveBinaryOperatorAccess().getPLUSEnumLiteralDeclaration_0()); + // InternalSolverLanguageParser.g:2671:3: ( PlusSign ) + // InternalSolverLanguageParser.g:2671:4: PlusSign { match(input,PlusSign,FOLLOW_2); } - after(grammarAccess.getAdditiveBinaryOperatorAccess().getADDEnumLiteralDeclaration_0()); + after(grammarAccess.getAdditiveBinaryOperatorAccess().getPLUSEnumLiteralDeclaration_0()); } @@ -7435,20 +8617,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2330:2: ( ( HyphenMinus ) ) + // InternalSolverLanguageParser.g:2675:2: ( ( HyphenMinus ) ) { - // InternalSolverLanguageParser.g:2330:2: ( ( HyphenMinus ) ) - // InternalSolverLanguageParser.g:2331:3: ( HyphenMinus ) + // InternalSolverLanguageParser.g:2675:2: ( ( HyphenMinus ) ) + // InternalSolverLanguageParser.g:2676:3: ( HyphenMinus ) { - before(grammarAccess.getAdditiveBinaryOperatorAccess().getSUBEnumLiteralDeclaration_1()); - // InternalSolverLanguageParser.g:2332:3: ( HyphenMinus ) - // InternalSolverLanguageParser.g:2332:4: HyphenMinus + before(grammarAccess.getAdditiveBinaryOperatorAccess().getMINUSEnumLiteralDeclaration_1()); + // InternalSolverLanguageParser.g:2677:3: ( HyphenMinus ) + // InternalSolverLanguageParser.g:2677:4: HyphenMinus { match(input,HyphenMinus,FOLLOW_2); } - after(grammarAccess.getAdditiveBinaryOperatorAccess().getSUBEnumLiteralDeclaration_1()); + after(grammarAccess.getAdditiveBinaryOperatorAccess().getMINUSEnumLiteralDeclaration_1()); } @@ -7473,44 +8655,44 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__MultiplicativeBinaryOperator__Alternatives" - // InternalSolverLanguageParser.g:2340:1: rule__MultiplicativeBinaryOperator__Alternatives : ( ( ( Asterisk ) ) | ( ( Solidus ) ) ); + // InternalSolverLanguageParser.g:2685:1: rule__MultiplicativeBinaryOperator__Alternatives : ( ( ( Asterisk ) ) | ( ( Solidus ) ) ); public final void rule__MultiplicativeBinaryOperator__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2344:1: ( ( ( Asterisk ) ) | ( ( Solidus ) ) ) - int alt21=2; - int LA21_0 = input.LA(1); + // InternalSolverLanguageParser.g:2689:1: ( ( ( Asterisk ) ) | ( ( Solidus ) ) ) + int alt26=2; + int LA26_0 = input.LA(1); - if ( (LA21_0==Asterisk) ) { - alt21=1; + if ( (LA26_0==Asterisk) ) { + alt26=1; } - else if ( (LA21_0==Solidus) ) { - alt21=2; + else if ( (LA26_0==Solidus) ) { + alt26=2; } else { NoViableAltException nvae = - new NoViableAltException("", 21, 0, input); + new NoViableAltException("", 26, 0, input); throw nvae; } - switch (alt21) { + switch (alt26) { case 1 : - // InternalSolverLanguageParser.g:2345:2: ( ( Asterisk ) ) + // InternalSolverLanguageParser.g:2690:2: ( ( Asterisk ) ) { - // InternalSolverLanguageParser.g:2345:2: ( ( Asterisk ) ) - // InternalSolverLanguageParser.g:2346:3: ( Asterisk ) + // InternalSolverLanguageParser.g:2690:2: ( ( Asterisk ) ) + // InternalSolverLanguageParser.g:2691:3: ( Asterisk ) { - before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULEnumLiteralDeclaration_0()); - // InternalSolverLanguageParser.g:2347:3: ( Asterisk ) - // InternalSolverLanguageParser.g:2347:4: Asterisk + before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULTIPLYEnumLiteralDeclaration_0()); + // InternalSolverLanguageParser.g:2692:3: ( Asterisk ) + // InternalSolverLanguageParser.g:2692:4: Asterisk { match(input,Asterisk,FOLLOW_2); } - after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULEnumLiteralDeclaration_0()); + after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULTIPLYEnumLiteralDeclaration_0()); } @@ -7518,20 +8700,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2351:2: ( ( Solidus ) ) + // InternalSolverLanguageParser.g:2696:2: ( ( Solidus ) ) { - // InternalSolverLanguageParser.g:2351:2: ( ( Solidus ) ) - // InternalSolverLanguageParser.g:2352:3: ( Solidus ) + // InternalSolverLanguageParser.g:2696:2: ( ( Solidus ) ) + // InternalSolverLanguageParser.g:2697:3: ( Solidus ) { - before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVEnumLiteralDeclaration_1()); - // InternalSolverLanguageParser.g:2353:3: ( Solidus ) - // InternalSolverLanguageParser.g:2353:4: Solidus + before(grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVIDEEnumLiteralDeclaration_1()); + // InternalSolverLanguageParser.g:2698:3: ( Solidus ) + // InternalSolverLanguageParser.g:2698:4: Solidus { match(input,Solidus,FOLLOW_2); } - after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVEnumLiteralDeclaration_1()); + after(grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVIDEEnumLiteralDeclaration_1()); } @@ -7555,69 +8737,59 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__MultiplicativeBinaryOperator__Alternatives" - // $ANTLR start "rule__UnaryOp__Alternatives" - // InternalSolverLanguageParser.g:2361:1: rule__UnaryOp__Alternatives : ( ( ( ExclamationMark ) ) | ( ( PlusSign ) ) | ( ( HyphenMinus ) ) | ( ( May ) ) | ( ( Must ) ) | ( ( Current ) ) ); - public final void rule__UnaryOp__Alternatives() throws RecognitionException { + // $ANTLR start "rule__UnaryOperator__Alternatives" + // InternalSolverLanguageParser.g:2706:1: rule__UnaryOperator__Alternatives : ( ( ( ExclamationMark ) ) | ( ( PlusSign ) ) | ( ( HyphenMinus ) ) | ( ( QuestionMark ) ) ); + public final void rule__UnaryOperator__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2365:1: ( ( ( ExclamationMark ) ) | ( ( PlusSign ) ) | ( ( HyphenMinus ) ) | ( ( May ) ) | ( ( Must ) ) | ( ( Current ) ) ) - int alt22=6; + // InternalSolverLanguageParser.g:2710:1: ( ( ( ExclamationMark ) ) | ( ( PlusSign ) ) | ( ( HyphenMinus ) ) | ( ( QuestionMark ) ) ) + int alt27=4; switch ( input.LA(1) ) { case ExclamationMark: { - alt22=1; + alt27=1; } break; case PlusSign: { - alt22=2; + alt27=2; } break; case HyphenMinus: { - alt22=3; - } - break; - case May: - { - alt22=4; - } - break; - case Must: - { - alt22=5; + alt27=3; } break; - case Current: + case QuestionMark: { - alt22=6; + alt27=4; } break; default: NoViableAltException nvae = - new NoViableAltException("", 22, 0, input); + new NoViableAltException("", 27, 0, input); throw nvae; } - switch (alt22) { + switch (alt27) { case 1 : - // InternalSolverLanguageParser.g:2366:2: ( ( ExclamationMark ) ) + // InternalSolverLanguageParser.g:2711:2: ( ( ExclamationMark ) ) { - // InternalSolverLanguageParser.g:2366:2: ( ( ExclamationMark ) ) - // InternalSolverLanguageParser.g:2367:3: ( ExclamationMark ) + // InternalSolverLanguageParser.g:2711:2: ( ( ExclamationMark ) ) + // InternalSolverLanguageParser.g:2712:3: ( ExclamationMark ) { - before(grammarAccess.getUnaryOpAccess().getNEGEnumLiteralDeclaration_0()); - // InternalSolverLanguageParser.g:2368:3: ( ExclamationMark ) - // InternalSolverLanguageParser.g:2368:4: ExclamationMark + before(grammarAccess.getUnaryOperatorAccess().getNOTEnumLiteralDeclaration_0()); + // InternalSolverLanguageParser.g:2713:3: ( ExclamationMark ) + // InternalSolverLanguageParser.g:2713:4: ExclamationMark { match(input,ExclamationMark,FOLLOW_2); } - after(grammarAccess.getUnaryOpAccess().getNEGEnumLiteralDeclaration_0()); + after(grammarAccess.getUnaryOperatorAccess().getNOTEnumLiteralDeclaration_0()); } @@ -7625,20 +8797,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2372:2: ( ( PlusSign ) ) + // InternalSolverLanguageParser.g:2717:2: ( ( PlusSign ) ) { - // InternalSolverLanguageParser.g:2372:2: ( ( PlusSign ) ) - // InternalSolverLanguageParser.g:2373:3: ( PlusSign ) + // InternalSolverLanguageParser.g:2717:2: ( ( PlusSign ) ) + // InternalSolverLanguageParser.g:2718:3: ( PlusSign ) { - before(grammarAccess.getUnaryOpAccess().getPLUSEnumLiteralDeclaration_1()); - // InternalSolverLanguageParser.g:2374:3: ( PlusSign ) - // InternalSolverLanguageParser.g:2374:4: PlusSign + before(grammarAccess.getUnaryOperatorAccess().getPLUSEnumLiteralDeclaration_1()); + // InternalSolverLanguageParser.g:2719:3: ( PlusSign ) + // InternalSolverLanguageParser.g:2719:4: PlusSign { match(input,PlusSign,FOLLOW_2); } - after(grammarAccess.getUnaryOpAccess().getPLUSEnumLiteralDeclaration_1()); + after(grammarAccess.getUnaryOperatorAccess().getPLUSEnumLiteralDeclaration_1()); } @@ -7646,20 +8818,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:2378:2: ( ( HyphenMinus ) ) + // InternalSolverLanguageParser.g:2723:2: ( ( HyphenMinus ) ) { - // InternalSolverLanguageParser.g:2378:2: ( ( HyphenMinus ) ) - // InternalSolverLanguageParser.g:2379:3: ( HyphenMinus ) + // InternalSolverLanguageParser.g:2723:2: ( ( HyphenMinus ) ) + // InternalSolverLanguageParser.g:2724:3: ( HyphenMinus ) { - before(grammarAccess.getUnaryOpAccess().getMINUSEnumLiteralDeclaration_2()); - // InternalSolverLanguageParser.g:2380:3: ( HyphenMinus ) - // InternalSolverLanguageParser.g:2380:4: HyphenMinus + before(grammarAccess.getUnaryOperatorAccess().getMINUSEnumLiteralDeclaration_2()); + // InternalSolverLanguageParser.g:2725:3: ( HyphenMinus ) + // InternalSolverLanguageParser.g:2725:4: HyphenMinus { match(input,HyphenMinus,FOLLOW_2); } - after(grammarAccess.getUnaryOpAccess().getMINUSEnumLiteralDeclaration_2()); + after(grammarAccess.getUnaryOperatorAccess().getMINUSEnumLiteralDeclaration_2()); } @@ -7667,62 +8839,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 4 : - // InternalSolverLanguageParser.g:2384:2: ( ( May ) ) - { - // InternalSolverLanguageParser.g:2384:2: ( ( May ) ) - // InternalSolverLanguageParser.g:2385:3: ( May ) - { - before(grammarAccess.getUnaryOpAccess().getMAYEnumLiteralDeclaration_3()); - // InternalSolverLanguageParser.g:2386:3: ( May ) - // InternalSolverLanguageParser.g:2386:4: May - { - match(input,May,FOLLOW_2); - - } - - after(grammarAccess.getUnaryOpAccess().getMAYEnumLiteralDeclaration_3()); - - } - - - } - break; - case 5 : - // InternalSolverLanguageParser.g:2390:2: ( ( Must ) ) - { - // InternalSolverLanguageParser.g:2390:2: ( ( Must ) ) - // InternalSolverLanguageParser.g:2391:3: ( Must ) - { - before(grammarAccess.getUnaryOpAccess().getMUSTEnumLiteralDeclaration_4()); - // InternalSolverLanguageParser.g:2392:3: ( Must ) - // InternalSolverLanguageParser.g:2392:4: Must - { - match(input,Must,FOLLOW_2); - - } - - after(grammarAccess.getUnaryOpAccess().getMUSTEnumLiteralDeclaration_4()); - - } - - - } - break; - case 6 : - // InternalSolverLanguageParser.g:2396:2: ( ( Current ) ) + // InternalSolverLanguageParser.g:2729:2: ( ( QuestionMark ) ) { - // InternalSolverLanguageParser.g:2396:2: ( ( Current ) ) - // InternalSolverLanguageParser.g:2397:3: ( Current ) + // InternalSolverLanguageParser.g:2729:2: ( ( QuestionMark ) ) + // InternalSolverLanguageParser.g:2730:3: ( QuestionMark ) { - before(grammarAccess.getUnaryOpAccess().getCURRENTEnumLiteralDeclaration_5()); - // InternalSolverLanguageParser.g:2398:3: ( Current ) - // InternalSolverLanguageParser.g:2398:4: Current + before(grammarAccess.getUnaryOperatorAccess().getMAYBEEnumLiteralDeclaration_3()); + // InternalSolverLanguageParser.g:2731:3: ( QuestionMark ) + // InternalSolverLanguageParser.g:2731:4: QuestionMark { - match(input,Current,FOLLOW_2); + match(input,QuestionMark,FOLLOW_2); } - after(grammarAccess.getUnaryOpAccess().getCURRENTEnumLiteralDeclaration_5()); + after(grammarAccess.getUnaryOperatorAccess().getMAYBEEnumLiteralDeclaration_3()); } @@ -7743,57 +8873,62 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnaryOp__Alternatives" + // $ANTLR end "rule__UnaryOperator__Alternatives" - // $ANTLR start "rule__Quantifier__Alternatives" - // InternalSolverLanguageParser.g:2406:1: rule__Quantifier__Alternatives : ( ( ( Exists ) ) | ( ( Forall ) ) | ( ( Count ) ) ); - public final void rule__Quantifier__Alternatives() throws RecognitionException { + // $ANTLR start "rule__LogicValue__Alternatives" + // InternalSolverLanguageParser.g:2739:1: rule__LogicValue__Alternatives : ( ( ( True ) ) | ( ( False ) ) | ( ( Unknown ) ) | ( ( Error ) ) ); + public final void rule__LogicValue__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2410:1: ( ( ( Exists ) ) | ( ( Forall ) ) | ( ( Count ) ) ) - int alt23=3; + // InternalSolverLanguageParser.g:2743:1: ( ( ( True ) ) | ( ( False ) ) | ( ( Unknown ) ) | ( ( Error ) ) ) + int alt28=4; switch ( input.LA(1) ) { - case Exists: + case True: { - alt23=1; + alt28=1; } break; - case Forall: + case False: { - alt23=2; + alt28=2; } break; - case Count: + case Unknown: { - alt23=3; + alt28=3; + } + break; + case Error: + { + alt28=4; } break; default: NoViableAltException nvae = - new NoViableAltException("", 23, 0, input); + new NoViableAltException("", 28, 0, input); throw nvae; } - switch (alt23) { + switch (alt28) { case 1 : - // InternalSolverLanguageParser.g:2411:2: ( ( Exists ) ) + // InternalSolverLanguageParser.g:2744:2: ( ( True ) ) { - // InternalSolverLanguageParser.g:2411:2: ( ( Exists ) ) - // InternalSolverLanguageParser.g:2412:3: ( Exists ) + // InternalSolverLanguageParser.g:2744:2: ( ( True ) ) + // InternalSolverLanguageParser.g:2745:3: ( True ) { - before(grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0()); - // InternalSolverLanguageParser.g:2413:3: ( Exists ) - // InternalSolverLanguageParser.g:2413:4: Exists + before(grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0()); + // InternalSolverLanguageParser.g:2746:3: ( True ) + // InternalSolverLanguageParser.g:2746:4: True { - match(input,Exists,FOLLOW_2); + match(input,True,FOLLOW_2); } - after(grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0()); + after(grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0()); } @@ -7801,20 +8936,20 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2417:2: ( ( Forall ) ) + // InternalSolverLanguageParser.g:2750:2: ( ( False ) ) { - // InternalSolverLanguageParser.g:2417:2: ( ( Forall ) ) - // InternalSolverLanguageParser.g:2418:3: ( Forall ) + // InternalSolverLanguageParser.g:2750:2: ( ( False ) ) + // InternalSolverLanguageParser.g:2751:3: ( False ) { - before(grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1()); - // InternalSolverLanguageParser.g:2419:3: ( Forall ) - // InternalSolverLanguageParser.g:2419:4: Forall + before(grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1()); + // InternalSolverLanguageParser.g:2752:3: ( False ) + // InternalSolverLanguageParser.g:2752:4: False { - match(input,Forall,FOLLOW_2); + match(input,False,FOLLOW_2); } - after(grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1()); + after(grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1()); } @@ -7822,20 +8957,41 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 3 : - // InternalSolverLanguageParser.g:2423:2: ( ( Count ) ) + // InternalSolverLanguageParser.g:2756:2: ( ( Unknown ) ) + { + // InternalSolverLanguageParser.g:2756:2: ( ( Unknown ) ) + // InternalSolverLanguageParser.g:2757:3: ( Unknown ) + { + before(grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2()); + // InternalSolverLanguageParser.g:2758:3: ( Unknown ) + // InternalSolverLanguageParser.g:2758:4: Unknown + { + match(input,Unknown,FOLLOW_2); + + } + + after(grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2()); + + } + + + } + break; + case 4 : + // InternalSolverLanguageParser.g:2762:2: ( ( Error ) ) { - // InternalSolverLanguageParser.g:2423:2: ( ( Count ) ) - // InternalSolverLanguageParser.g:2424:3: ( Count ) + // InternalSolverLanguageParser.g:2762:2: ( ( Error ) ) + // InternalSolverLanguageParser.g:2763:3: ( Error ) { - before(grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2()); - // InternalSolverLanguageParser.g:2425:3: ( Count ) - // InternalSolverLanguageParser.g:2425:4: Count + before(grammarAccess.getLogicValueAccess().getERROREnumLiteralDeclaration_3()); + // InternalSolverLanguageParser.g:2764:3: ( Error ) + // InternalSolverLanguageParser.g:2764:4: Error { - match(input,Count,FOLLOW_2); + match(input,Error,FOLLOW_2); } - after(grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2()); + after(grammarAccess.getLogicValueAccess().getERROREnumLiteralDeclaration_3()); } @@ -7856,62 +9012,48 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Quantifier__Alternatives" + // $ANTLR end "rule__LogicValue__Alternatives" - // $ANTLR start "rule__LogicValue__Alternatives" - // InternalSolverLanguageParser.g:2433:1: rule__LogicValue__Alternatives : ( ( ( True ) ) | ( ( False ) ) | ( ( Unknown ) ) | ( ( Error ) ) ); - public final void rule__LogicValue__Alternatives() throws RecognitionException { + // $ANTLR start "rule__ObjectiveKind__Alternatives" + // InternalSolverLanguageParser.g:2772:1: rule__ObjectiveKind__Alternatives : ( ( ( Minimize ) ) | ( ( Maximize ) ) ); + public final void rule__ObjectiveKind__Alternatives() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2437:1: ( ( ( True ) ) | ( ( False ) ) | ( ( Unknown ) ) | ( ( Error ) ) ) - int alt24=4; - switch ( input.LA(1) ) { - case True: - { - alt24=1; - } - break; - case False: - { - alt24=2; - } - break; - case Unknown: - { - alt24=3; - } - break; - case Error: - { - alt24=4; - } - break; - default: + // InternalSolverLanguageParser.g:2776:1: ( ( ( Minimize ) ) | ( ( Maximize ) ) ) + int alt29=2; + int LA29_0 = input.LA(1); + + if ( (LA29_0==Minimize) ) { + alt29=1; + } + else if ( (LA29_0==Maximize) ) { + alt29=2; + } + else { NoViableAltException nvae = - new NoViableAltException("", 24, 0, input); + new NoViableAltException("", 29, 0, input); throw nvae; } - - switch (alt24) { + switch (alt29) { case 1 : - // InternalSolverLanguageParser.g:2438:2: ( ( True ) ) + // InternalSolverLanguageParser.g:2777:2: ( ( Minimize ) ) { - // InternalSolverLanguageParser.g:2438:2: ( ( True ) ) - // InternalSolverLanguageParser.g:2439:3: ( True ) + // InternalSolverLanguageParser.g:2777:2: ( ( Minimize ) ) + // InternalSolverLanguageParser.g:2778:3: ( Minimize ) { - before(grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0()); - // InternalSolverLanguageParser.g:2440:3: ( True ) - // InternalSolverLanguageParser.g:2440:4: True + before(grammarAccess.getObjectiveKindAccess().getMINIMIZATIONEnumLiteralDeclaration_0()); + // InternalSolverLanguageParser.g:2779:3: ( Minimize ) + // InternalSolverLanguageParser.g:2779:4: Minimize { - match(input,True,FOLLOW_2); + match(input,Minimize,FOLLOW_2); } - after(grammarAccess.getLogicValueAccess().getTRUEEnumLiteralDeclaration_0()); + after(grammarAccess.getObjectiveKindAccess().getMINIMIZATIONEnumLiteralDeclaration_0()); } @@ -7919,70 +9061,66 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; case 2 : - // InternalSolverLanguageParser.g:2444:2: ( ( False ) ) + // InternalSolverLanguageParser.g:2783:2: ( ( Maximize ) ) { - // InternalSolverLanguageParser.g:2444:2: ( ( False ) ) - // InternalSolverLanguageParser.g:2445:3: ( False ) + // InternalSolverLanguageParser.g:2783:2: ( ( Maximize ) ) + // InternalSolverLanguageParser.g:2784:3: ( Maximize ) { - before(grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1()); - // InternalSolverLanguageParser.g:2446:3: ( False ) - // InternalSolverLanguageParser.g:2446:4: False + before(grammarAccess.getObjectiveKindAccess().getMAXIMIZATIONEnumLiteralDeclaration_1()); + // InternalSolverLanguageParser.g:2785:3: ( Maximize ) + // InternalSolverLanguageParser.g:2785:4: Maximize { - match(input,False,FOLLOW_2); + match(input,Maximize,FOLLOW_2); } - after(grammarAccess.getLogicValueAccess().getFALSEEnumLiteralDeclaration_1()); + after(grammarAccess.getObjectiveKindAccess().getMAXIMIZATIONEnumLiteralDeclaration_1()); } } break; - case 3 : - // InternalSolverLanguageParser.g:2450:2: ( ( Unknown ) ) - { - // InternalSolverLanguageParser.g:2450:2: ( ( Unknown ) ) - // InternalSolverLanguageParser.g:2451:3: ( Unknown ) - { - before(grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2()); - // InternalSolverLanguageParser.g:2452:3: ( Unknown ) - // InternalSolverLanguageParser.g:2452:4: Unknown - { - match(input,Unknown,FOLLOW_2); - } + } + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { - after(grammarAccess.getLogicValueAccess().getUNKNOWNEnumLiteralDeclaration_2()); + restoreStackSize(stackSize); - } + } + return ; + } + // $ANTLR end "rule__ObjectiveKind__Alternatives" - } - break; - case 4 : - // InternalSolverLanguageParser.g:2456:2: ( ( Error ) ) - { - // InternalSolverLanguageParser.g:2456:2: ( ( Error ) ) - // InternalSolverLanguageParser.g:2457:3: ( Error ) - { - before(grammarAccess.getLogicValueAccess().getERROREnumLiteralDeclaration_3()); - // InternalSolverLanguageParser.g:2458:3: ( Error ) - // InternalSolverLanguageParser.g:2458:4: Error - { - match(input,Error,FOLLOW_2); + // $ANTLR start "rule__Problem__Group__0" + // InternalSolverLanguageParser.g:2793:1: rule__Problem__Group__0 : rule__Problem__Group__0__Impl rule__Problem__Group__1 ; + public final void rule__Problem__Group__0() throws RecognitionException { - } + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2797:1: ( rule__Problem__Group__0__Impl rule__Problem__Group__1 ) + // InternalSolverLanguageParser.g:2798:2: rule__Problem__Group__0__Impl rule__Problem__Group__1 + { + pushFollow(FOLLOW_3); + rule__Problem__Group__0__Impl(); - after(grammarAccess.getLogicValueAccess().getERROREnumLiteralDeclaration_3()); + state._fsp--; - } + pushFollow(FOLLOW_2); + rule__Problem__Group__1(); + state._fsp--; - } - break; } + } catch (RecognitionException re) { reportError(re); @@ -7995,77 +9133,90 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LogicValue__Alternatives" + // $ANTLR end "rule__Problem__Group__0" - // $ANTLR start "rule__ObjectiveKind__Alternatives" - // InternalSolverLanguageParser.g:2466:1: rule__ObjectiveKind__Alternatives : ( ( ( Minimize ) ) | ( ( Maximize ) ) ); - public final void rule__ObjectiveKind__Alternatives() throws RecognitionException { + // $ANTLR start "rule__Problem__Group__0__Impl" + // InternalSolverLanguageParser.g:2805:1: rule__Problem__Group__0__Impl : ( ( rule__Problem__Group_0__0 )? ) ; + public final void rule__Problem__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2470:1: ( ( ( Minimize ) ) | ( ( Maximize ) ) ) - int alt25=2; - int LA25_0 = input.LA(1); - - if ( (LA25_0==Minimize) ) { - alt25=1; - } - else if ( (LA25_0==Maximize) ) { - alt25=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("", 25, 0, input); + // InternalSolverLanguageParser.g:2809:1: ( ( ( rule__Problem__Group_0__0 )? ) ) + // InternalSolverLanguageParser.g:2810:1: ( ( rule__Problem__Group_0__0 )? ) + { + // InternalSolverLanguageParser.g:2810:1: ( ( rule__Problem__Group_0__0 )? ) + // InternalSolverLanguageParser.g:2811:2: ( rule__Problem__Group_0__0 )? + { + before(grammarAccess.getProblemAccess().getGroup_0()); + // InternalSolverLanguageParser.g:2812:2: ( rule__Problem__Group_0__0 )? + int alt30=2; + int LA30_0 = input.LA(1); - throw nvae; + if ( (LA30_0==Problem) ) { + alt30=1; } - switch (alt25) { + switch (alt30) { case 1 : - // InternalSolverLanguageParser.g:2471:2: ( ( Minimize ) ) - { - // InternalSolverLanguageParser.g:2471:2: ( ( Minimize ) ) - // InternalSolverLanguageParser.g:2472:3: ( Minimize ) + // InternalSolverLanguageParser.g:2812:3: rule__Problem__Group_0__0 { - before(grammarAccess.getObjectiveKindAccess().getMINIMIZEEnumLiteralDeclaration_0()); - // InternalSolverLanguageParser.g:2473:3: ( Minimize ) - // InternalSolverLanguageParser.g:2473:4: Minimize - { - match(input,Minimize,FOLLOW_2); + pushFollow(FOLLOW_2); + rule__Problem__Group_0__0(); - } + state._fsp--; - after(grammarAccess.getObjectiveKindAccess().getMINIMIZEEnumLiteralDeclaration_0()); } + break; + } - } - break; - case 2 : - // InternalSolverLanguageParser.g:2477:2: ( ( Maximize ) ) - { - // InternalSolverLanguageParser.g:2477:2: ( ( Maximize ) ) - // InternalSolverLanguageParser.g:2478:3: ( Maximize ) - { - before(grammarAccess.getObjectiveKindAccess().getMAXIMIZEEnumLiteralDeclaration_1()); - // InternalSolverLanguageParser.g:2479:3: ( Maximize ) - // InternalSolverLanguageParser.g:2479:4: Maximize - { - match(input,Maximize,FOLLOW_2); + after(grammarAccess.getProblemAccess().getGroup_0()); - } + } - after(grammarAccess.getObjectiveKindAccess().getMAXIMIZEEnumLiteralDeclaration_1()); - } + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group__0__Impl" + + + // $ANTLR start "rule__Problem__Group__1" + // InternalSolverLanguageParser.g:2820:1: rule__Problem__Group__1 : rule__Problem__Group__1__Impl rule__Problem__Group__2 ; + public final void rule__Problem__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2824:1: ( rule__Problem__Group__1__Impl rule__Problem__Group__2 ) + // InternalSolverLanguageParser.g:2825:2: rule__Problem__Group__1__Impl rule__Problem__Group__2 + { + pushFollow(FOLLOW_3); + rule__Problem__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__Problem__Group__2(); + + state._fsp--; - } - break; } + } catch (RecognitionException re) { reportError(re); @@ -8078,26 +9229,86 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ObjectiveKind__Alternatives" + // $ANTLR end "rule__Problem__Group__1" - // $ANTLR start "rule__Statement__Group__0" - // InternalSolverLanguageParser.g:2487:1: rule__Statement__Group__0 : rule__Statement__Group__0__Impl rule__Statement__Group__1 ; - public final void rule__Statement__Group__0() throws RecognitionException { + // $ANTLR start "rule__Problem__Group__1__Impl" + // InternalSolverLanguageParser.g:2832:1: rule__Problem__Group__1__Impl : ( ( rule__Problem__ImportsAssignment_1 )* ) ; + public final void rule__Problem__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2491:1: ( rule__Statement__Group__0__Impl rule__Statement__Group__1 ) - // InternalSolverLanguageParser.g:2492:2: rule__Statement__Group__0__Impl rule__Statement__Group__1 + // InternalSolverLanguageParser.g:2836:1: ( ( ( rule__Problem__ImportsAssignment_1 )* ) ) + // InternalSolverLanguageParser.g:2837:1: ( ( rule__Problem__ImportsAssignment_1 )* ) + { + // InternalSolverLanguageParser.g:2837:1: ( ( rule__Problem__ImportsAssignment_1 )* ) + // InternalSolverLanguageParser.g:2838:2: ( rule__Problem__ImportsAssignment_1 )* { - pushFollow(FOLLOW_4); - rule__Statement__Group__0__Impl(); + before(grammarAccess.getProblemAccess().getImportsAssignment_1()); + // InternalSolverLanguageParser.g:2839:2: ( rule__Problem__ImportsAssignment_1 )* + loop31: + do { + int alt31=2; + int LA31_0 = input.LA(1); - state._fsp--; + if ( (LA31_0==Import) ) { + alt31=1; + } + + + switch (alt31) { + case 1 : + // InternalSolverLanguageParser.g:2839:3: rule__Problem__ImportsAssignment_1 + { + pushFollow(FOLLOW_4); + rule__Problem__ImportsAssignment_1(); + + state._fsp--; + + } + break; + + default : + break loop31; + } + } while (true); + + after(grammarAccess.getProblemAccess().getImportsAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group__1__Impl" + + + // $ANTLR start "rule__Problem__Group__2" + // InternalSolverLanguageParser.g:2847:1: rule__Problem__Group__2 : rule__Problem__Group__2__Impl ; + public final void rule__Problem__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2851:1: ( rule__Problem__Group__2__Impl ) + // InternalSolverLanguageParser.g:2852:2: rule__Problem__Group__2__Impl + { pushFollow(FOLLOW_2); - rule__Statement__Group__1(); + rule__Problem__Group__2__Impl(); state._fsp--; @@ -8116,35 +9327,3380 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Statement__Group__0" + // $ANTLR end "rule__Problem__Group__2" - // $ANTLR start "rule__Statement__Group__0__Impl" - // InternalSolverLanguageParser.g:2499:1: rule__Statement__Group__0__Impl : ( ( rule__Statement__Alternatives_0 ) ) ; - public final void rule__Statement__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Problem__Group__2__Impl" + // InternalSolverLanguageParser.g:2858:1: rule__Problem__Group__2__Impl : ( ( rule__Problem__StatementsAssignment_2 )* ) ; + public final void rule__Problem__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2503:1: ( ( ( rule__Statement__Alternatives_0 ) ) ) - // InternalSolverLanguageParser.g:2504:1: ( ( rule__Statement__Alternatives_0 ) ) + // InternalSolverLanguageParser.g:2862:1: ( ( ( rule__Problem__StatementsAssignment_2 )* ) ) + // InternalSolverLanguageParser.g:2863:1: ( ( rule__Problem__StatementsAssignment_2 )* ) { - // InternalSolverLanguageParser.g:2504:1: ( ( rule__Statement__Alternatives_0 ) ) - // InternalSolverLanguageParser.g:2505:2: ( rule__Statement__Alternatives_0 ) + // InternalSolverLanguageParser.g:2863:1: ( ( rule__Problem__StatementsAssignment_2 )* ) + // InternalSolverLanguageParser.g:2864:2: ( rule__Problem__StatementsAssignment_2 )* { - before(grammarAccess.getStatementAccess().getAlternatives_0()); - // InternalSolverLanguageParser.g:2506:2: ( rule__Statement__Alternatives_0 ) - // InternalSolverLanguageParser.g:2506:3: rule__Statement__Alternatives_0 + before(grammarAccess.getProblemAccess().getStatementsAssignment_2()); + // InternalSolverLanguageParser.g:2865:2: ( rule__Problem__StatementsAssignment_2 )* + loop32: + do { + int alt32=2; + int LA32_0 = input.LA(1); + + if ( ((LA32_0>=Containment && LA32_0<=Abstract)||(LA32_0>=Maximize && LA32_0<=Minimize)||LA32_0==Default||(LA32_0>=Unknown && LA32_0<=Extern)||LA32_0==Object||(LA32_0>=Class && LA32_0<=Scope)||(LA32_0>=Enum && LA32_0<=Root)||LA32_0==True||(LA32_0>=Inf && LA32_0<=Let)||LA32_0==If||(LA32_0>=ExclamationMark && LA32_0<=LeftParenthesis)||LA32_0==PlusSign||LA32_0==HyphenMinus||(LA32_0>=QuestionMark && LA32_0<=LeftSquareBracket)||(LA32_0>=Tilde && LA32_0<=RULE_QUOTED_ID)||(LA32_0>=RULE_ID && LA32_0<=RULE_INT)) ) { + alt32=1; + } + + + switch (alt32) { + case 1 : + // InternalSolverLanguageParser.g:2865:3: rule__Problem__StatementsAssignment_2 + { + pushFollow(FOLLOW_5); + rule__Problem__StatementsAssignment_2(); + + state._fsp--; + + + } + break; + + default : + break loop32; + } + } while (true); + + after(grammarAccess.getProblemAccess().getStatementsAssignment_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group__2__Impl" + + + // $ANTLR start "rule__Problem__Group_0__0" + // InternalSolverLanguageParser.g:2874:1: rule__Problem__Group_0__0 : rule__Problem__Group_0__0__Impl rule__Problem__Group_0__1 ; + public final void rule__Problem__Group_0__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2878:1: ( rule__Problem__Group_0__0__Impl rule__Problem__Group_0__1 ) + // InternalSolverLanguageParser.g:2879:2: rule__Problem__Group_0__0__Impl rule__Problem__Group_0__1 { + pushFollow(FOLLOW_6); + rule__Problem__Group_0__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__Statement__Alternatives_0(); + rule__Problem__Group_0__1(); state._fsp--; } - after(grammarAccess.getStatementAccess().getAlternatives_0()); + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group_0__0" + + + // $ANTLR start "rule__Problem__Group_0__0__Impl" + // InternalSolverLanguageParser.g:2886:1: rule__Problem__Group_0__0__Impl : ( Problem ) ; + public final void rule__Problem__Group_0__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2890:1: ( ( Problem ) ) + // InternalSolverLanguageParser.g:2891:1: ( Problem ) + { + // InternalSolverLanguageParser.g:2891:1: ( Problem ) + // InternalSolverLanguageParser.g:2892:2: Problem + { + before(grammarAccess.getProblemAccess().getProblemKeyword_0_0()); + match(input,Problem,FOLLOW_2); + after(grammarAccess.getProblemAccess().getProblemKeyword_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group_0__0__Impl" + + + // $ANTLR start "rule__Problem__Group_0__1" + // InternalSolverLanguageParser.g:2901:1: rule__Problem__Group_0__1 : rule__Problem__Group_0__1__Impl rule__Problem__Group_0__2 ; + public final void rule__Problem__Group_0__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2905:1: ( rule__Problem__Group_0__1__Impl rule__Problem__Group_0__2 ) + // InternalSolverLanguageParser.g:2906:2: rule__Problem__Group_0__1__Impl rule__Problem__Group_0__2 + { + pushFollow(FOLLOW_7); + rule__Problem__Group_0__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__Problem__Group_0__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group_0__1" + + + // $ANTLR start "rule__Problem__Group_0__1__Impl" + // InternalSolverLanguageParser.g:2913:1: rule__Problem__Group_0__1__Impl : ( ( rule__Problem__NameAssignment_0_1 ) ) ; + public final void rule__Problem__Group_0__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2917:1: ( ( ( rule__Problem__NameAssignment_0_1 ) ) ) + // InternalSolverLanguageParser.g:2918:1: ( ( rule__Problem__NameAssignment_0_1 ) ) + { + // InternalSolverLanguageParser.g:2918:1: ( ( rule__Problem__NameAssignment_0_1 ) ) + // InternalSolverLanguageParser.g:2919:2: ( rule__Problem__NameAssignment_0_1 ) + { + before(grammarAccess.getProblemAccess().getNameAssignment_0_1()); + // InternalSolverLanguageParser.g:2920:2: ( rule__Problem__NameAssignment_0_1 ) + // InternalSolverLanguageParser.g:2920:3: rule__Problem__NameAssignment_0_1 + { + pushFollow(FOLLOW_2); + rule__Problem__NameAssignment_0_1(); + + state._fsp--; + + + } + + after(grammarAccess.getProblemAccess().getNameAssignment_0_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group_0__1__Impl" + + + // $ANTLR start "rule__Problem__Group_0__2" + // InternalSolverLanguageParser.g:2928:1: rule__Problem__Group_0__2 : rule__Problem__Group_0__2__Impl ; + public final void rule__Problem__Group_0__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2932:1: ( rule__Problem__Group_0__2__Impl ) + // InternalSolverLanguageParser.g:2933:2: rule__Problem__Group_0__2__Impl + { + pushFollow(FOLLOW_2); + rule__Problem__Group_0__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group_0__2" + + + // $ANTLR start "rule__Problem__Group_0__2__Impl" + // InternalSolverLanguageParser.g:2939:1: rule__Problem__Group_0__2__Impl : ( RULE_FULL_STOP ) ; + public final void rule__Problem__Group_0__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2943:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:2944:1: ( RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:2944:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:2945:2: RULE_FULL_STOP + { + before(grammarAccess.getProblemAccess().getFULL_STOPTerminalRuleCall_0_2()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getProblemAccess().getFULL_STOPTerminalRuleCall_0_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Problem__Group_0__2__Impl" + + + // $ANTLR start "rule__UriImport__Group__0" + // InternalSolverLanguageParser.g:2955:1: rule__UriImport__Group__0 : rule__UriImport__Group__0__Impl rule__UriImport__Group__1 ; + public final void rule__UriImport__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2959:1: ( rule__UriImport__Group__0__Impl rule__UriImport__Group__1 ) + // InternalSolverLanguageParser.g:2960:2: rule__UriImport__Group__0__Impl rule__UriImport__Group__1 + { + pushFollow(FOLLOW_8); + rule__UriImport__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UriImport__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group__0" + + + // $ANTLR start "rule__UriImport__Group__0__Impl" + // InternalSolverLanguageParser.g:2967:1: rule__UriImport__Group__0__Impl : ( Import ) ; + public final void rule__UriImport__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2971:1: ( ( Import ) ) + // InternalSolverLanguageParser.g:2972:1: ( Import ) + { + // InternalSolverLanguageParser.g:2972:1: ( Import ) + // InternalSolverLanguageParser.g:2973:2: Import + { + before(grammarAccess.getUriImportAccess().getImportKeyword_0()); + match(input,Import,FOLLOW_2); + after(grammarAccess.getUriImportAccess().getImportKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group__0__Impl" + + + // $ANTLR start "rule__UriImport__Group__1" + // InternalSolverLanguageParser.g:2982:1: rule__UriImport__Group__1 : rule__UriImport__Group__1__Impl rule__UriImport__Group__2 ; + public final void rule__UriImport__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2986:1: ( rule__UriImport__Group__1__Impl rule__UriImport__Group__2 ) + // InternalSolverLanguageParser.g:2987:2: rule__UriImport__Group__1__Impl rule__UriImport__Group__2 + { + pushFollow(FOLLOW_9); + rule__UriImport__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UriImport__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group__1" + + + // $ANTLR start "rule__UriImport__Group__1__Impl" + // InternalSolverLanguageParser.g:2994:1: rule__UriImport__Group__1__Impl : ( ( rule__UriImport__UriAssignment_1 ) ) ; + public final void rule__UriImport__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:2998:1: ( ( ( rule__UriImport__UriAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:2999:1: ( ( rule__UriImport__UriAssignment_1 ) ) + { + // InternalSolverLanguageParser.g:2999:1: ( ( rule__UriImport__UriAssignment_1 ) ) + // InternalSolverLanguageParser.g:3000:2: ( rule__UriImport__UriAssignment_1 ) + { + before(grammarAccess.getUriImportAccess().getUriAssignment_1()); + // InternalSolverLanguageParser.g:3001:2: ( rule__UriImport__UriAssignment_1 ) + // InternalSolverLanguageParser.g:3001:3: rule__UriImport__UriAssignment_1 + { + pushFollow(FOLLOW_2); + rule__UriImport__UriAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getUriImportAccess().getUriAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group__1__Impl" + + + // $ANTLR start "rule__UriImport__Group__2" + // InternalSolverLanguageParser.g:3009:1: rule__UriImport__Group__2 : rule__UriImport__Group__2__Impl rule__UriImport__Group__3 ; + public final void rule__UriImport__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3013:1: ( rule__UriImport__Group__2__Impl rule__UriImport__Group__3 ) + // InternalSolverLanguageParser.g:3014:2: rule__UriImport__Group__2__Impl rule__UriImport__Group__3 + { + pushFollow(FOLLOW_7); + rule__UriImport__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UriImport__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group__2" + + + // $ANTLR start "rule__UriImport__Group__2__Impl" + // InternalSolverLanguageParser.g:3021:1: rule__UriImport__Group__2__Impl : ( ( rule__UriImport__Group_2__0 ) ) ; + public final void rule__UriImport__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3025:1: ( ( ( rule__UriImport__Group_2__0 ) ) ) + // InternalSolverLanguageParser.g:3026:1: ( ( rule__UriImport__Group_2__0 ) ) + { + // InternalSolverLanguageParser.g:3026:1: ( ( rule__UriImport__Group_2__0 ) ) + // InternalSolverLanguageParser.g:3027:2: ( rule__UriImport__Group_2__0 ) + { + before(grammarAccess.getUriImportAccess().getGroup_2()); + // InternalSolverLanguageParser.g:3028:2: ( rule__UriImport__Group_2__0 ) + // InternalSolverLanguageParser.g:3028:3: rule__UriImport__Group_2__0 + { + pushFollow(FOLLOW_2); + rule__UriImport__Group_2__0(); + + state._fsp--; + + + } + + after(grammarAccess.getUriImportAccess().getGroup_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group__2__Impl" + + + // $ANTLR start "rule__UriImport__Group__3" + // InternalSolverLanguageParser.g:3036:1: rule__UriImport__Group__3 : rule__UriImport__Group__3__Impl ; + public final void rule__UriImport__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3040:1: ( rule__UriImport__Group__3__Impl ) + // InternalSolverLanguageParser.g:3041:2: rule__UriImport__Group__3__Impl + { + pushFollow(FOLLOW_2); + rule__UriImport__Group__3__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group__3" + + + // $ANTLR start "rule__UriImport__Group__3__Impl" + // InternalSolverLanguageParser.g:3047:1: rule__UriImport__Group__3__Impl : ( RULE_FULL_STOP ) ; + public final void rule__UriImport__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3051:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:3052:1: ( RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:3052:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:3053:2: RULE_FULL_STOP + { + before(grammarAccess.getUriImportAccess().getFULL_STOPTerminalRuleCall_3()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getUriImportAccess().getFULL_STOPTerminalRuleCall_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group__3__Impl" + + + // $ANTLR start "rule__UriImport__Group_2__0" + // InternalSolverLanguageParser.g:3063:1: rule__UriImport__Group_2__0 : rule__UriImport__Group_2__0__Impl rule__UriImport__Group_2__1 ; + public final void rule__UriImport__Group_2__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3067:1: ( rule__UriImport__Group_2__0__Impl rule__UriImport__Group_2__1 ) + // InternalSolverLanguageParser.g:3068:2: rule__UriImport__Group_2__0__Impl rule__UriImport__Group_2__1 + { + pushFollow(FOLLOW_6); + rule__UriImport__Group_2__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UriImport__Group_2__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group_2__0" + + + // $ANTLR start "rule__UriImport__Group_2__0__Impl" + // InternalSolverLanguageParser.g:3075:1: rule__UriImport__Group_2__0__Impl : ( As ) ; + public final void rule__UriImport__Group_2__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3079:1: ( ( As ) ) + // InternalSolverLanguageParser.g:3080:1: ( As ) + { + // InternalSolverLanguageParser.g:3080:1: ( As ) + // InternalSolverLanguageParser.g:3081:2: As + { + before(grammarAccess.getUriImportAccess().getAsKeyword_2_0()); + match(input,As,FOLLOW_2); + after(grammarAccess.getUriImportAccess().getAsKeyword_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group_2__0__Impl" + + + // $ANTLR start "rule__UriImport__Group_2__1" + // InternalSolverLanguageParser.g:3090:1: rule__UriImport__Group_2__1 : rule__UriImport__Group_2__1__Impl ; + public final void rule__UriImport__Group_2__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3094:1: ( rule__UriImport__Group_2__1__Impl ) + // InternalSolverLanguageParser.g:3095:2: rule__UriImport__Group_2__1__Impl + { + pushFollow(FOLLOW_2); + rule__UriImport__Group_2__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group_2__1" + + + // $ANTLR start "rule__UriImport__Group_2__1__Impl" + // InternalSolverLanguageParser.g:3101:1: rule__UriImport__Group_2__1__Impl : ( ( rule__UriImport__AliasAssignment_2_1 ) ) ; + public final void rule__UriImport__Group_2__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3105:1: ( ( ( rule__UriImport__AliasAssignment_2_1 ) ) ) + // InternalSolverLanguageParser.g:3106:1: ( ( rule__UriImport__AliasAssignment_2_1 ) ) + { + // InternalSolverLanguageParser.g:3106:1: ( ( rule__UriImport__AliasAssignment_2_1 ) ) + // InternalSolverLanguageParser.g:3107:2: ( rule__UriImport__AliasAssignment_2_1 ) + { + before(grammarAccess.getUriImportAccess().getAliasAssignment_2_1()); + // InternalSolverLanguageParser.g:3108:2: ( rule__UriImport__AliasAssignment_2_1 ) + // InternalSolverLanguageParser.g:3108:3: rule__UriImport__AliasAssignment_2_1 + { + pushFollow(FOLLOW_2); + rule__UriImport__AliasAssignment_2_1(); + + state._fsp--; + + + } + + after(grammarAccess.getUriImportAccess().getAliasAssignment_2_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UriImport__Group_2__1__Impl" + + + // $ANTLR start "rule__NamespaceImport__Group__0" + // InternalSolverLanguageParser.g:3117:1: rule__NamespaceImport__Group__0 : rule__NamespaceImport__Group__0__Impl rule__NamespaceImport__Group__1 ; + public final void rule__NamespaceImport__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3121:1: ( rule__NamespaceImport__Group__0__Impl rule__NamespaceImport__Group__1 ) + // InternalSolverLanguageParser.g:3122:2: rule__NamespaceImport__Group__0__Impl rule__NamespaceImport__Group__1 + { + pushFollow(FOLLOW_6); + rule__NamespaceImport__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__NamespaceImport__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group__0" + + + // $ANTLR start "rule__NamespaceImport__Group__0__Impl" + // InternalSolverLanguageParser.g:3129:1: rule__NamespaceImport__Group__0__Impl : ( Import ) ; + public final void rule__NamespaceImport__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3133:1: ( ( Import ) ) + // InternalSolverLanguageParser.g:3134:1: ( Import ) + { + // InternalSolverLanguageParser.g:3134:1: ( Import ) + // InternalSolverLanguageParser.g:3135:2: Import + { + before(grammarAccess.getNamespaceImportAccess().getImportKeyword_0()); + match(input,Import,FOLLOW_2); + after(grammarAccess.getNamespaceImportAccess().getImportKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group__0__Impl" + + + // $ANTLR start "rule__NamespaceImport__Group__1" + // InternalSolverLanguageParser.g:3144:1: rule__NamespaceImport__Group__1 : rule__NamespaceImport__Group__1__Impl rule__NamespaceImport__Group__2 ; + public final void rule__NamespaceImport__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3148:1: ( rule__NamespaceImport__Group__1__Impl rule__NamespaceImport__Group__2 ) + // InternalSolverLanguageParser.g:3149:2: rule__NamespaceImport__Group__1__Impl rule__NamespaceImport__Group__2 + { + pushFollow(FOLLOW_9); + rule__NamespaceImport__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__NamespaceImport__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group__1" + + + // $ANTLR start "rule__NamespaceImport__Group__1__Impl" + // InternalSolverLanguageParser.g:3156:1: rule__NamespaceImport__Group__1__Impl : ( ( rule__NamespaceImport__ImportedNamespaceAssignment_1 ) ) ; + public final void rule__NamespaceImport__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3160:1: ( ( ( rule__NamespaceImport__ImportedNamespaceAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:3161:1: ( ( rule__NamespaceImport__ImportedNamespaceAssignment_1 ) ) + { + // InternalSolverLanguageParser.g:3161:1: ( ( rule__NamespaceImport__ImportedNamespaceAssignment_1 ) ) + // InternalSolverLanguageParser.g:3162:2: ( rule__NamespaceImport__ImportedNamespaceAssignment_1 ) + { + before(grammarAccess.getNamespaceImportAccess().getImportedNamespaceAssignment_1()); + // InternalSolverLanguageParser.g:3163:2: ( rule__NamespaceImport__ImportedNamespaceAssignment_1 ) + // InternalSolverLanguageParser.g:3163:3: rule__NamespaceImport__ImportedNamespaceAssignment_1 + { + pushFollow(FOLLOW_2); + rule__NamespaceImport__ImportedNamespaceAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getNamespaceImportAccess().getImportedNamespaceAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group__1__Impl" + + + // $ANTLR start "rule__NamespaceImport__Group__2" + // InternalSolverLanguageParser.g:3171:1: rule__NamespaceImport__Group__2 : rule__NamespaceImport__Group__2__Impl rule__NamespaceImport__Group__3 ; + public final void rule__NamespaceImport__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3175:1: ( rule__NamespaceImport__Group__2__Impl rule__NamespaceImport__Group__3 ) + // InternalSolverLanguageParser.g:3176:2: rule__NamespaceImport__Group__2__Impl rule__NamespaceImport__Group__3 + { + pushFollow(FOLLOW_7); + rule__NamespaceImport__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__NamespaceImport__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group__2" + + + // $ANTLR start "rule__NamespaceImport__Group__2__Impl" + // InternalSolverLanguageParser.g:3183:1: rule__NamespaceImport__Group__2__Impl : ( ( rule__NamespaceImport__Group_2__0 ) ) ; + public final void rule__NamespaceImport__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3187:1: ( ( ( rule__NamespaceImport__Group_2__0 ) ) ) + // InternalSolverLanguageParser.g:3188:1: ( ( rule__NamespaceImport__Group_2__0 ) ) + { + // InternalSolverLanguageParser.g:3188:1: ( ( rule__NamespaceImport__Group_2__0 ) ) + // InternalSolverLanguageParser.g:3189:2: ( rule__NamespaceImport__Group_2__0 ) + { + before(grammarAccess.getNamespaceImportAccess().getGroup_2()); + // InternalSolverLanguageParser.g:3190:2: ( rule__NamespaceImport__Group_2__0 ) + // InternalSolverLanguageParser.g:3190:3: rule__NamespaceImport__Group_2__0 + { + pushFollow(FOLLOW_2); + rule__NamespaceImport__Group_2__0(); + + state._fsp--; + + + } + + after(grammarAccess.getNamespaceImportAccess().getGroup_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group__2__Impl" + + + // $ANTLR start "rule__NamespaceImport__Group__3" + // InternalSolverLanguageParser.g:3198:1: rule__NamespaceImport__Group__3 : rule__NamespaceImport__Group__3__Impl ; + public final void rule__NamespaceImport__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3202:1: ( rule__NamespaceImport__Group__3__Impl ) + // InternalSolverLanguageParser.g:3203:2: rule__NamespaceImport__Group__3__Impl + { + pushFollow(FOLLOW_2); + rule__NamespaceImport__Group__3__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group__3" + + + // $ANTLR start "rule__NamespaceImport__Group__3__Impl" + // InternalSolverLanguageParser.g:3209:1: rule__NamespaceImport__Group__3__Impl : ( RULE_FULL_STOP ) ; + public final void rule__NamespaceImport__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3213:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:3214:1: ( RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:3214:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:3215:2: RULE_FULL_STOP + { + before(grammarAccess.getNamespaceImportAccess().getFULL_STOPTerminalRuleCall_3()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getNamespaceImportAccess().getFULL_STOPTerminalRuleCall_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group__3__Impl" + + + // $ANTLR start "rule__NamespaceImport__Group_2__0" + // InternalSolverLanguageParser.g:3225:1: rule__NamespaceImport__Group_2__0 : rule__NamespaceImport__Group_2__0__Impl rule__NamespaceImport__Group_2__1 ; + public final void rule__NamespaceImport__Group_2__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3229:1: ( rule__NamespaceImport__Group_2__0__Impl rule__NamespaceImport__Group_2__1 ) + // InternalSolverLanguageParser.g:3230:2: rule__NamespaceImport__Group_2__0__Impl rule__NamespaceImport__Group_2__1 + { + pushFollow(FOLLOW_6); + rule__NamespaceImport__Group_2__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__NamespaceImport__Group_2__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group_2__0" + + + // $ANTLR start "rule__NamespaceImport__Group_2__0__Impl" + // InternalSolverLanguageParser.g:3237:1: rule__NamespaceImport__Group_2__0__Impl : ( As ) ; + public final void rule__NamespaceImport__Group_2__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3241:1: ( ( As ) ) + // InternalSolverLanguageParser.g:3242:1: ( As ) + { + // InternalSolverLanguageParser.g:3242:1: ( As ) + // InternalSolverLanguageParser.g:3243:2: As + { + before(grammarAccess.getNamespaceImportAccess().getAsKeyword_2_0()); + match(input,As,FOLLOW_2); + after(grammarAccess.getNamespaceImportAccess().getAsKeyword_2_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group_2__0__Impl" + + + // $ANTLR start "rule__NamespaceImport__Group_2__1" + // InternalSolverLanguageParser.g:3252:1: rule__NamespaceImport__Group_2__1 : rule__NamespaceImport__Group_2__1__Impl ; + public final void rule__NamespaceImport__Group_2__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3256:1: ( rule__NamespaceImport__Group_2__1__Impl ) + // InternalSolverLanguageParser.g:3257:2: rule__NamespaceImport__Group_2__1__Impl + { + pushFollow(FOLLOW_2); + rule__NamespaceImport__Group_2__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group_2__1" + + + // $ANTLR start "rule__NamespaceImport__Group_2__1__Impl" + // InternalSolverLanguageParser.g:3263:1: rule__NamespaceImport__Group_2__1__Impl : ( ( rule__NamespaceImport__AliasAssignment_2_1 ) ) ; + public final void rule__NamespaceImport__Group_2__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3267:1: ( ( ( rule__NamespaceImport__AliasAssignment_2_1 ) ) ) + // InternalSolverLanguageParser.g:3268:1: ( ( rule__NamespaceImport__AliasAssignment_2_1 ) ) + { + // InternalSolverLanguageParser.g:3268:1: ( ( rule__NamespaceImport__AliasAssignment_2_1 ) ) + // InternalSolverLanguageParser.g:3269:2: ( rule__NamespaceImport__AliasAssignment_2_1 ) + { + before(grammarAccess.getNamespaceImportAccess().getAliasAssignment_2_1()); + // InternalSolverLanguageParser.g:3270:2: ( rule__NamespaceImport__AliasAssignment_2_1 ) + // InternalSolverLanguageParser.g:3270:3: rule__NamespaceImport__AliasAssignment_2_1 + { + pushFollow(FOLLOW_2); + rule__NamespaceImport__AliasAssignment_2_1(); + + state._fsp--; + + + } + + after(grammarAccess.getNamespaceImportAccess().getAliasAssignment_2_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__NamespaceImport__Group_2__1__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group__0" + // InternalSolverLanguageParser.g:3279:1: rule__AssertionOrDefinition__Group__0 : rule__AssertionOrDefinition__Group__0__Impl rule__AssertionOrDefinition__Group__1 ; + public final void rule__AssertionOrDefinition__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3283:1: ( rule__AssertionOrDefinition__Group__0__Impl rule__AssertionOrDefinition__Group__1 ) + // InternalSolverLanguageParser.g:3284:2: rule__AssertionOrDefinition__Group__0__Impl rule__AssertionOrDefinition__Group__1 + { + pushFollow(FOLLOW_10); + rule__AssertionOrDefinition__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group__0" + + + // $ANTLR start "rule__AssertionOrDefinition__Group__0__Impl" + // InternalSolverLanguageParser.g:3291:1: rule__AssertionOrDefinition__Group__0__Impl : ( ruleExpression ) ; + public final void rule__AssertionOrDefinition__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3295:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:3296:1: ( ruleExpression ) + { + // InternalSolverLanguageParser.g:3296:1: ( ruleExpression ) + // InternalSolverLanguageParser.g:3297:2: ruleExpression + { + before(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleExpression(); + + state._fsp--; + + after(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group__0__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group__1" + // InternalSolverLanguageParser.g:3306:1: rule__AssertionOrDefinition__Group__1 : rule__AssertionOrDefinition__Group__1__Impl rule__AssertionOrDefinition__Group__2 ; + public final void rule__AssertionOrDefinition__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3310:1: ( rule__AssertionOrDefinition__Group__1__Impl rule__AssertionOrDefinition__Group__2 ) + // InternalSolverLanguageParser.g:3311:2: rule__AssertionOrDefinition__Group__1__Impl rule__AssertionOrDefinition__Group__2 + { + pushFollow(FOLLOW_7); + rule__AssertionOrDefinition__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group__1" + + + // $ANTLR start "rule__AssertionOrDefinition__Group__1__Impl" + // InternalSolverLanguageParser.g:3318:1: rule__AssertionOrDefinition__Group__1__Impl : ( ( rule__AssertionOrDefinition__Alternatives_1 ) ) ; + public final void rule__AssertionOrDefinition__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3322:1: ( ( ( rule__AssertionOrDefinition__Alternatives_1 ) ) ) + // InternalSolverLanguageParser.g:3323:1: ( ( rule__AssertionOrDefinition__Alternatives_1 ) ) + { + // InternalSolverLanguageParser.g:3323:1: ( ( rule__AssertionOrDefinition__Alternatives_1 ) ) + // InternalSolverLanguageParser.g:3324:2: ( rule__AssertionOrDefinition__Alternatives_1 ) + { + before(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); + // InternalSolverLanguageParser.g:3325:2: ( rule__AssertionOrDefinition__Alternatives_1 ) + // InternalSolverLanguageParser.g:3325:3: rule__AssertionOrDefinition__Alternatives_1 + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Alternatives_1(); + + state._fsp--; + + + } + + after(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group__1__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group__2" + // InternalSolverLanguageParser.g:3333:1: rule__AssertionOrDefinition__Group__2 : rule__AssertionOrDefinition__Group__2__Impl ; + public final void rule__AssertionOrDefinition__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3337:1: ( rule__AssertionOrDefinition__Group__2__Impl ) + // InternalSolverLanguageParser.g:3338:2: rule__AssertionOrDefinition__Group__2__Impl + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group__2" + + + // $ANTLR start "rule__AssertionOrDefinition__Group__2__Impl" + // InternalSolverLanguageParser.g:3344:1: rule__AssertionOrDefinition__Group__2__Impl : ( RULE_FULL_STOP ) ; + public final void rule__AssertionOrDefinition__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3348:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:3349:1: ( RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:3349:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:3350:2: RULE_FULL_STOP + { + before(grammarAccess.getAssertionOrDefinitionAccess().getFULL_STOPTerminalRuleCall_2()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getAssertionOrDefinitionAccess().getFULL_STOPTerminalRuleCall_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group__2__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__0" + // InternalSolverLanguageParser.g:3360:1: rule__AssertionOrDefinition__Group_1_0__0 : rule__AssertionOrDefinition__Group_1_0__0__Impl rule__AssertionOrDefinition__Group_1_0__1 ; + public final void rule__AssertionOrDefinition__Group_1_0__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3364:1: ( rule__AssertionOrDefinition__Group_1_0__0__Impl rule__AssertionOrDefinition__Group_1_0__1 ) + // InternalSolverLanguageParser.g:3365:2: rule__AssertionOrDefinition__Group_1_0__0__Impl rule__AssertionOrDefinition__Group_1_0__1 + { + pushFollow(FOLLOW_11); + rule__AssertionOrDefinition__Group_1_0__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_0__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__0" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__0__Impl" + // InternalSolverLanguageParser.g:3372:1: rule__AssertionOrDefinition__Group_1_0__0__Impl : ( () ) ; + public final void rule__AssertionOrDefinition__Group_1_0__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3376:1: ( ( () ) ) + // InternalSolverLanguageParser.g:3377:1: ( () ) + { + // InternalSolverLanguageParser.g:3377:1: ( () ) + // InternalSolverLanguageParser.g:3378:2: () + { + before(grammarAccess.getAssertionOrDefinitionAccess().getAssertionExpressionAction_1_0_0()); + // InternalSolverLanguageParser.g:3379:2: () + // InternalSolverLanguageParser.g:3379:3: + { + } + + after(grammarAccess.getAssertionOrDefinitionAccess().getAssertionExpressionAction_1_0_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__0__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__1" + // InternalSolverLanguageParser.g:3387:1: rule__AssertionOrDefinition__Group_1_0__1 : rule__AssertionOrDefinition__Group_1_0__1__Impl ; + public final void rule__AssertionOrDefinition__Group_1_0__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3391:1: ( rule__AssertionOrDefinition__Group_1_0__1__Impl ) + // InternalSolverLanguageParser.g:3392:2: rule__AssertionOrDefinition__Group_1_0__1__Impl + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_0__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__1" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__1__Impl" + // InternalSolverLanguageParser.g:3398:1: rule__AssertionOrDefinition__Group_1_0__1__Impl : ( ( rule__AssertionOrDefinition__Group_1_0_1__0 )? ) ; + public final void rule__AssertionOrDefinition__Group_1_0__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3402:1: ( ( ( rule__AssertionOrDefinition__Group_1_0_1__0 )? ) ) + // InternalSolverLanguageParser.g:3403:1: ( ( rule__AssertionOrDefinition__Group_1_0_1__0 )? ) + { + // InternalSolverLanguageParser.g:3403:1: ( ( rule__AssertionOrDefinition__Group_1_0_1__0 )? ) + // InternalSolverLanguageParser.g:3404:2: ( rule__AssertionOrDefinition__Group_1_0_1__0 )? + { + before(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0_1()); + // InternalSolverLanguageParser.g:3405:2: ( rule__AssertionOrDefinition__Group_1_0_1__0 )? + int alt33=2; + int LA33_0 = input.LA(1); + + if ( (LA33_0==Colon) ) { + alt33=1; + } + switch (alt33) { + case 1 : + // InternalSolverLanguageParser.g:3405:3: rule__AssertionOrDefinition__Group_1_0_1__0 + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_0_1__0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getAssertionOrDefinitionAccess().getGroup_1_0_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__1__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_0_1__0" + // InternalSolverLanguageParser.g:3414:1: rule__AssertionOrDefinition__Group_1_0_1__0 : rule__AssertionOrDefinition__Group_1_0_1__0__Impl rule__AssertionOrDefinition__Group_1_0_1__1 ; + public final void rule__AssertionOrDefinition__Group_1_0_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3418:1: ( rule__AssertionOrDefinition__Group_1_0_1__0__Impl rule__AssertionOrDefinition__Group_1_0_1__1 ) + // InternalSolverLanguageParser.g:3419:2: rule__AssertionOrDefinition__Group_1_0_1__0__Impl rule__AssertionOrDefinition__Group_1_0_1__1 + { + pushFollow(FOLLOW_12); + rule__AssertionOrDefinition__Group_1_0_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_0_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_0_1__0" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_0_1__0__Impl" + // InternalSolverLanguageParser.g:3426:1: rule__AssertionOrDefinition__Group_1_0_1__0__Impl : ( Colon ) ; + public final void rule__AssertionOrDefinition__Group_1_0_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3430:1: ( ( Colon ) ) + // InternalSolverLanguageParser.g:3431:1: ( Colon ) + { + // InternalSolverLanguageParser.g:3431:1: ( Colon ) + // InternalSolverLanguageParser.g:3432:2: Colon + { + before(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0()); + match(input,Colon,FOLLOW_2); + after(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_0_1__0__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_0_1__1" + // InternalSolverLanguageParser.g:3441:1: rule__AssertionOrDefinition__Group_1_0_1__1 : rule__AssertionOrDefinition__Group_1_0_1__1__Impl ; + public final void rule__AssertionOrDefinition__Group_1_0_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3445:1: ( rule__AssertionOrDefinition__Group_1_0_1__1__Impl ) + // InternalSolverLanguageParser.g:3446:2: rule__AssertionOrDefinition__Group_1_0_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_0_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_0_1__1" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_0_1__1__Impl" + // InternalSolverLanguageParser.g:3452:1: rule__AssertionOrDefinition__Group_1_0_1__1__Impl : ( ( rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 ) ) ; + public final void rule__AssertionOrDefinition__Group_1_0_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3456:1: ( ( ( rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 ) ) ) + // InternalSolverLanguageParser.g:3457:1: ( ( rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 ) ) + { + // InternalSolverLanguageParser.g:3457:1: ( ( rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 ) ) + // InternalSolverLanguageParser.g:3458:2: ( rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 ) + { + before(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_1_1()); + // InternalSolverLanguageParser.g:3459:2: ( rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 ) + // InternalSolverLanguageParser.g:3459:3: rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__RangeAssignment_1_0_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_0_1__1__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__0" + // InternalSolverLanguageParser.g:3468:1: rule__AssertionOrDefinition__Group_1_1__0 : rule__AssertionOrDefinition__Group_1_1__0__Impl rule__AssertionOrDefinition__Group_1_1__1 ; + public final void rule__AssertionOrDefinition__Group_1_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3472:1: ( rule__AssertionOrDefinition__Group_1_1__0__Impl rule__AssertionOrDefinition__Group_1_1__1 ) + // InternalSolverLanguageParser.g:3473:2: rule__AssertionOrDefinition__Group_1_1__0__Impl rule__AssertionOrDefinition__Group_1_1__1 + { + pushFollow(FOLLOW_13); + rule__AssertionOrDefinition__Group_1_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__0" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__0__Impl" + // InternalSolverLanguageParser.g:3480:1: rule__AssertionOrDefinition__Group_1_1__0__Impl : ( () ) ; + public final void rule__AssertionOrDefinition__Group_1_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3484:1: ( ( () ) ) + // InternalSolverLanguageParser.g:3485:1: ( () ) + { + // InternalSolverLanguageParser.g:3485:1: ( () ) + // InternalSolverLanguageParser.g:3486:2: () + { + before(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0()); + // InternalSolverLanguageParser.g:3487:2: () + // InternalSolverLanguageParser.g:3487:3: + { + } + + after(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__0__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__1" + // InternalSolverLanguageParser.g:3495:1: rule__AssertionOrDefinition__Group_1_1__1 : rule__AssertionOrDefinition__Group_1_1__1__Impl rule__AssertionOrDefinition__Group_1_1__2 ; + public final void rule__AssertionOrDefinition__Group_1_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3499:1: ( rule__AssertionOrDefinition__Group_1_1__1__Impl rule__AssertionOrDefinition__Group_1_1__2 ) + // InternalSolverLanguageParser.g:3500:2: rule__AssertionOrDefinition__Group_1_1__1__Impl rule__AssertionOrDefinition__Group_1_1__2 + { + pushFollow(FOLLOW_12); + rule__AssertionOrDefinition__Group_1_1__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_1__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__1" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__1__Impl" + // InternalSolverLanguageParser.g:3507:1: rule__AssertionOrDefinition__Group_1_1__1__Impl : ( ColonHyphenMinus ) ; + public final void rule__AssertionOrDefinition__Group_1_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3511:1: ( ( ColonHyphenMinus ) ) + // InternalSolverLanguageParser.g:3512:1: ( ColonHyphenMinus ) + { + // InternalSolverLanguageParser.g:3512:1: ( ColonHyphenMinus ) + // InternalSolverLanguageParser.g:3513:2: ColonHyphenMinus + { + before(grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); + match(input,ColonHyphenMinus,FOLLOW_2); + after(grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__1__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__2" + // InternalSolverLanguageParser.g:3522:1: rule__AssertionOrDefinition__Group_1_1__2 : rule__AssertionOrDefinition__Group_1_1__2__Impl ; + public final void rule__AssertionOrDefinition__Group_1_1__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3526:1: ( rule__AssertionOrDefinition__Group_1_1__2__Impl ) + // InternalSolverLanguageParser.g:3527:2: rule__AssertionOrDefinition__Group_1_1__2__Impl + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_1__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__2" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__2__Impl" + // InternalSolverLanguageParser.g:3533:1: rule__AssertionOrDefinition__Group_1_1__2__Impl : ( ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) ) ; + public final void rule__AssertionOrDefinition__Group_1_1__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3537:1: ( ( ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) ) ) + // InternalSolverLanguageParser.g:3538:1: ( ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) ) + { + // InternalSolverLanguageParser.g:3538:1: ( ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) ) + // InternalSolverLanguageParser.g:3539:2: ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) + { + before(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2()); + // InternalSolverLanguageParser.g:3540:2: ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) + // InternalSolverLanguageParser.g:3540:3: rule__AssertionOrDefinition__BodyAssignment_1_1_2 + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__BodyAssignment_1_1_2(); + + state._fsp--; + + + } + + after(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__2__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__0" + // InternalSolverLanguageParser.g:3549:1: rule__AssertionOrDefinition__Group_1_2__0 : rule__AssertionOrDefinition__Group_1_2__0__Impl rule__AssertionOrDefinition__Group_1_2__1 ; + public final void rule__AssertionOrDefinition__Group_1_2__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3553:1: ( rule__AssertionOrDefinition__Group_1_2__0__Impl rule__AssertionOrDefinition__Group_1_2__1 ) + // InternalSolverLanguageParser.g:3554:2: rule__AssertionOrDefinition__Group_1_2__0__Impl rule__AssertionOrDefinition__Group_1_2__1 + { + pushFollow(FOLLOW_10); + rule__AssertionOrDefinition__Group_1_2__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_2__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__0" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__0__Impl" + // InternalSolverLanguageParser.g:3561:1: rule__AssertionOrDefinition__Group_1_2__0__Impl : ( () ) ; + public final void rule__AssertionOrDefinition__Group_1_2__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3565:1: ( ( () ) ) + // InternalSolverLanguageParser.g:3566:1: ( () ) + { + // InternalSolverLanguageParser.g:3566:1: ( () ) + // InternalSolverLanguageParser.g:3567:2: () + { + before(grammarAccess.getAssertionOrDefinitionAccess().getFunctionDefinitionHeadAction_1_2_0()); + // InternalSolverLanguageParser.g:3568:2: () + // InternalSolverLanguageParser.g:3568:3: + { + } + + after(grammarAccess.getAssertionOrDefinitionAccess().getFunctionDefinitionHeadAction_1_2_0()); + + } + + + } + + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__0__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__1" + // InternalSolverLanguageParser.g:3576:1: rule__AssertionOrDefinition__Group_1_2__1 : rule__AssertionOrDefinition__Group_1_2__1__Impl rule__AssertionOrDefinition__Group_1_2__2 ; + public final void rule__AssertionOrDefinition__Group_1_2__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3580:1: ( rule__AssertionOrDefinition__Group_1_2__1__Impl rule__AssertionOrDefinition__Group_1_2__2 ) + // InternalSolverLanguageParser.g:3581:2: rule__AssertionOrDefinition__Group_1_2__1__Impl rule__AssertionOrDefinition__Group_1_2__2 + { + pushFollow(FOLLOW_12); + rule__AssertionOrDefinition__Group_1_2__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_2__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__1" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__1__Impl" + // InternalSolverLanguageParser.g:3588:1: rule__AssertionOrDefinition__Group_1_2__1__Impl : ( ColonEqualsSign ) ; + public final void rule__AssertionOrDefinition__Group_1_2__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3592:1: ( ( ColonEqualsSign ) ) + // InternalSolverLanguageParser.g:3593:1: ( ColonEqualsSign ) + { + // InternalSolverLanguageParser.g:3593:1: ( ColonEqualsSign ) + // InternalSolverLanguageParser.g:3594:2: ColonEqualsSign + { + before(grammarAccess.getAssertionOrDefinitionAccess().getColonEqualsSignKeyword_1_2_1()); + match(input,ColonEqualsSign,FOLLOW_2); + after(grammarAccess.getAssertionOrDefinitionAccess().getColonEqualsSignKeyword_1_2_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__1__Impl" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__2" + // InternalSolverLanguageParser.g:3603:1: rule__AssertionOrDefinition__Group_1_2__2 : rule__AssertionOrDefinition__Group_1_2__2__Impl ; + public final void rule__AssertionOrDefinition__Group_1_2__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3607:1: ( rule__AssertionOrDefinition__Group_1_2__2__Impl ) + // InternalSolverLanguageParser.g:3608:2: rule__AssertionOrDefinition__Group_1_2__2__Impl + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__Group_1_2__2__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__2" + + + // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__2__Impl" + // InternalSolverLanguageParser.g:3614:1: rule__AssertionOrDefinition__Group_1_2__2__Impl : ( ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) ) ; + public final void rule__AssertionOrDefinition__Group_1_2__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3618:1: ( ( ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) ) ) + // InternalSolverLanguageParser.g:3619:1: ( ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) ) + { + // InternalSolverLanguageParser.g:3619:1: ( ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) ) + // InternalSolverLanguageParser.g:3620:2: ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) + { + before(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2()); + // InternalSolverLanguageParser.g:3621:2: ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) + // InternalSolverLanguageParser.g:3621:3: rule__AssertionOrDefinition__BodyAssignment_1_2_2 + { + pushFollow(FOLLOW_2); + rule__AssertionOrDefinition__BodyAssignment_1_2_2(); + + state._fsp--; + + + } + + after(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__2__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group__0" + // InternalSolverLanguageParser.g:3630:1: rule__PredicateDefinition__Group__0 : rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1 ; + public final void rule__PredicateDefinition__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3634:1: ( rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1 ) + // InternalSolverLanguageParser.g:3635:2: rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1 + { + pushFollow(FOLLOW_6); + rule__PredicateDefinition__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__0" + + + // $ANTLR start "rule__PredicateDefinition__Group__0__Impl" + // InternalSolverLanguageParser.g:3642:1: rule__PredicateDefinition__Group__0__Impl : ( ( rule__PredicateDefinition__Alternatives_0 ) ) ; + public final void rule__PredicateDefinition__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3646:1: ( ( ( rule__PredicateDefinition__Alternatives_0 ) ) ) + // InternalSolverLanguageParser.g:3647:1: ( ( rule__PredicateDefinition__Alternatives_0 ) ) + { + // InternalSolverLanguageParser.g:3647:1: ( ( rule__PredicateDefinition__Alternatives_0 ) ) + // InternalSolverLanguageParser.g:3648:2: ( rule__PredicateDefinition__Alternatives_0 ) + { + before(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); + // InternalSolverLanguageParser.g:3649:2: ( rule__PredicateDefinition__Alternatives_0 ) + // InternalSolverLanguageParser.g:3649:3: rule__PredicateDefinition__Alternatives_0 + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Alternatives_0(); + + state._fsp--; + + + } + + after(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__0__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group__1" + // InternalSolverLanguageParser.g:3657:1: rule__PredicateDefinition__Group__1 : rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2 ; + public final void rule__PredicateDefinition__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3661:1: ( rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2 ) + // InternalSolverLanguageParser.g:3662:2: rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2 + { + pushFollow(FOLLOW_13); + rule__PredicateDefinition__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__1" + + + // $ANTLR start "rule__PredicateDefinition__Group__1__Impl" + // InternalSolverLanguageParser.g:3669:1: rule__PredicateDefinition__Group__1__Impl : ( ( rule__PredicateDefinition__HeadAssignment_1 ) ) ; + public final void rule__PredicateDefinition__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3673:1: ( ( ( rule__PredicateDefinition__HeadAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:3674:1: ( ( rule__PredicateDefinition__HeadAssignment_1 ) ) + { + // InternalSolverLanguageParser.g:3674:1: ( ( rule__PredicateDefinition__HeadAssignment_1 ) ) + // InternalSolverLanguageParser.g:3675:2: ( rule__PredicateDefinition__HeadAssignment_1 ) + { + before(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1()); + // InternalSolverLanguageParser.g:3676:2: ( rule__PredicateDefinition__HeadAssignment_1 ) + // InternalSolverLanguageParser.g:3676:3: rule__PredicateDefinition__HeadAssignment_1 + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__HeadAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__1__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group__2" + // InternalSolverLanguageParser.g:3684:1: rule__PredicateDefinition__Group__2 : rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3 ; + public final void rule__PredicateDefinition__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3688:1: ( rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3 ) + // InternalSolverLanguageParser.g:3689:2: rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3 + { + pushFollow(FOLLOW_12); + rule__PredicateDefinition__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__2" + + + // $ANTLR start "rule__PredicateDefinition__Group__2__Impl" + // InternalSolverLanguageParser.g:3696:1: rule__PredicateDefinition__Group__2__Impl : ( ColonHyphenMinus ) ; + public final void rule__PredicateDefinition__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3700:1: ( ( ColonHyphenMinus ) ) + // InternalSolverLanguageParser.g:3701:1: ( ColonHyphenMinus ) + { + // InternalSolverLanguageParser.g:3701:1: ( ColonHyphenMinus ) + // InternalSolverLanguageParser.g:3702:2: ColonHyphenMinus + { + before(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); + match(input,ColonHyphenMinus,FOLLOW_2); + after(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__2__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group__3" + // InternalSolverLanguageParser.g:3711:1: rule__PredicateDefinition__Group__3 : rule__PredicateDefinition__Group__3__Impl rule__PredicateDefinition__Group__4 ; + public final void rule__PredicateDefinition__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3715:1: ( rule__PredicateDefinition__Group__3__Impl rule__PredicateDefinition__Group__4 ) + // InternalSolverLanguageParser.g:3716:2: rule__PredicateDefinition__Group__3__Impl rule__PredicateDefinition__Group__4 + { + pushFollow(FOLLOW_7); + rule__PredicateDefinition__Group__3__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group__4(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__3" + + + // $ANTLR start "rule__PredicateDefinition__Group__3__Impl" + // InternalSolverLanguageParser.g:3723:1: rule__PredicateDefinition__Group__3__Impl : ( ( rule__PredicateDefinition__BodyAssignment_3 ) ) ; + public final void rule__PredicateDefinition__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3727:1: ( ( ( rule__PredicateDefinition__BodyAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:3728:1: ( ( rule__PredicateDefinition__BodyAssignment_3 ) ) + { + // InternalSolverLanguageParser.g:3728:1: ( ( rule__PredicateDefinition__BodyAssignment_3 ) ) + // InternalSolverLanguageParser.g:3729:2: ( rule__PredicateDefinition__BodyAssignment_3 ) + { + before(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3()); + // InternalSolverLanguageParser.g:3730:2: ( rule__PredicateDefinition__BodyAssignment_3 ) + // InternalSolverLanguageParser.g:3730:3: rule__PredicateDefinition__BodyAssignment_3 + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__BodyAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__3__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group__4" + // InternalSolverLanguageParser.g:3738:1: rule__PredicateDefinition__Group__4 : rule__PredicateDefinition__Group__4__Impl ; + public final void rule__PredicateDefinition__Group__4() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3742:1: ( rule__PredicateDefinition__Group__4__Impl ) + // InternalSolverLanguageParser.g:3743:2: rule__PredicateDefinition__Group__4__Impl + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group__4__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__4" + + + // $ANTLR start "rule__PredicateDefinition__Group__4__Impl" + // InternalSolverLanguageParser.g:3749:1: rule__PredicateDefinition__Group__4__Impl : ( RULE_FULL_STOP ) ; + public final void rule__PredicateDefinition__Group__4__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3753:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:3754:1: ( RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:3754:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:3755:2: RULE_FULL_STOP + { + before(grammarAccess.getPredicateDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getPredicateDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group__4__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group_0_0__0" + // InternalSolverLanguageParser.g:3765:1: rule__PredicateDefinition__Group_0_0__0 : rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1 ; + public final void rule__PredicateDefinition__Group_0_0__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3769:1: ( rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1 ) + // InternalSolverLanguageParser.g:3770:2: rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1 + { + pushFollow(FOLLOW_14); + rule__PredicateDefinition__Group_0_0__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group_0_0__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group_0_0__0" + + + // $ANTLR start "rule__PredicateDefinition__Group_0_0__0__Impl" + // InternalSolverLanguageParser.g:3777:1: rule__PredicateDefinition__Group_0_0__0__Impl : ( ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) ) ; + public final void rule__PredicateDefinition__Group_0_0__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3781:1: ( ( ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) ) ) + // InternalSolverLanguageParser.g:3782:1: ( ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) ) + { + // InternalSolverLanguageParser.g:3782:1: ( ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) ) + // InternalSolverLanguageParser.g:3783:2: ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) + { + before(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0()); + // InternalSolverLanguageParser.g:3784:2: ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) + // InternalSolverLanguageParser.g:3784:3: rule__PredicateDefinition__FunctionalAssignment_0_0_0 + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__FunctionalAssignment_0_0_0(); + + state._fsp--; + + + } + + after(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group_0_0__0__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group_0_0__1" + // InternalSolverLanguageParser.g:3792:1: rule__PredicateDefinition__Group_0_0__1 : rule__PredicateDefinition__Group_0_0__1__Impl ; + public final void rule__PredicateDefinition__Group_0_0__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3796:1: ( rule__PredicateDefinition__Group_0_0__1__Impl ) + // InternalSolverLanguageParser.g:3797:2: rule__PredicateDefinition__Group_0_0__1__Impl + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group_0_0__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group_0_0__1" + + + // $ANTLR start "rule__PredicateDefinition__Group_0_0__1__Impl" + // InternalSolverLanguageParser.g:3803:1: rule__PredicateDefinition__Group_0_0__1__Impl : ( ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? ) ; + public final void rule__PredicateDefinition__Group_0_0__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3807:1: ( ( ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? ) ) + // InternalSolverLanguageParser.g:3808:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? ) + { + // InternalSolverLanguageParser.g:3808:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? ) + // InternalSolverLanguageParser.g:3809:2: ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? + { + before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_1()); + // InternalSolverLanguageParser.g:3810:2: ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? + int alt34=2; + int LA34_0 = input.LA(1); + + if ( (LA34_0==Error) ) { + alt34=1; + } + switch (alt34) { + case 1 : + // InternalSolverLanguageParser.g:3810:3: rule__PredicateDefinition__ErrorAssignment_0_0_1 + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__ErrorAssignment_0_0_1(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group_0_0__1__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group_0_1__0" + // InternalSolverLanguageParser.g:3819:1: rule__PredicateDefinition__Group_0_1__0 : rule__PredicateDefinition__Group_0_1__0__Impl rule__PredicateDefinition__Group_0_1__1 ; + public final void rule__PredicateDefinition__Group_0_1__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3823:1: ( rule__PredicateDefinition__Group_0_1__0__Impl rule__PredicateDefinition__Group_0_1__1 ) + // InternalSolverLanguageParser.g:3824:2: rule__PredicateDefinition__Group_0_1__0__Impl rule__PredicateDefinition__Group_0_1__1 + { + pushFollow(FOLLOW_15); + rule__PredicateDefinition__Group_0_1__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group_0_1__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group_0_1__0" + + + // $ANTLR start "rule__PredicateDefinition__Group_0_1__0__Impl" + // InternalSolverLanguageParser.g:3831:1: rule__PredicateDefinition__Group_0_1__0__Impl : ( ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) ) ; + public final void rule__PredicateDefinition__Group_0_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3835:1: ( ( ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) ) ) + // InternalSolverLanguageParser.g:3836:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) ) + { + // InternalSolverLanguageParser.g:3836:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) ) + // InternalSolverLanguageParser.g:3837:2: ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) + { + before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_1_0()); + // InternalSolverLanguageParser.g:3838:2: ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) + // InternalSolverLanguageParser.g:3838:3: rule__PredicateDefinition__ErrorAssignment_0_1_0 + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__ErrorAssignment_0_1_0(); + + state._fsp--; + + + } + + after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group_0_1__0__Impl" + + + // $ANTLR start "rule__PredicateDefinition__Group_0_1__1" + // InternalSolverLanguageParser.g:3846:1: rule__PredicateDefinition__Group_0_1__1 : rule__PredicateDefinition__Group_0_1__1__Impl ; + public final void rule__PredicateDefinition__Group_0_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3850:1: ( rule__PredicateDefinition__Group_0_1__1__Impl ) + // InternalSolverLanguageParser.g:3851:2: rule__PredicateDefinition__Group_0_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__Group_0_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group_0_1__1" + + + // $ANTLR start "rule__PredicateDefinition__Group_0_1__1__Impl" + // InternalSolverLanguageParser.g:3857:1: rule__PredicateDefinition__Group_0_1__1__Impl : ( ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? ) ; + public final void rule__PredicateDefinition__Group_0_1__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3861:1: ( ( ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? ) ) + // InternalSolverLanguageParser.g:3862:1: ( ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? ) + { + // InternalSolverLanguageParser.g:3862:1: ( ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? ) + // InternalSolverLanguageParser.g:3863:2: ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? + { + before(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1()); + // InternalSolverLanguageParser.g:3864:2: ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? + int alt35=2; + int LA35_0 = input.LA(1); + + if ( (LA35_0==Functional) ) { + alt35=1; + } + switch (alt35) { + case 1 : + // InternalSolverLanguageParser.g:3864:3: rule__PredicateDefinition__FunctionalAssignment_0_1_1 + { + pushFollow(FOLLOW_2); + rule__PredicateDefinition__FunctionalAssignment_0_1_1(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__PredicateDefinition__Group_0_1__1__Impl" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__0" + // InternalSolverLanguageParser.g:3873:1: rule__UnnamedErrorPredicateDefintion__Group__0 : rule__UnnamedErrorPredicateDefintion__Group__0__Impl rule__UnnamedErrorPredicateDefintion__Group__1 ; + public final void rule__UnnamedErrorPredicateDefintion__Group__0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3877:1: ( rule__UnnamedErrorPredicateDefintion__Group__0__Impl rule__UnnamedErrorPredicateDefintion__Group__1 ) + // InternalSolverLanguageParser.g:3878:2: rule__UnnamedErrorPredicateDefintion__Group__0__Impl rule__UnnamedErrorPredicateDefintion__Group__1 + { + pushFollow(FOLLOW_16); + rule__UnnamedErrorPredicateDefintion__Group__0__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UnnamedErrorPredicateDefintion__Group__1(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__0" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__0__Impl" + // InternalSolverLanguageParser.g:3885:1: rule__UnnamedErrorPredicateDefintion__Group__0__Impl : ( Error ) ; + public final void rule__UnnamedErrorPredicateDefintion__Group__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3889:1: ( ( Error ) ) + // InternalSolverLanguageParser.g:3890:1: ( Error ) + { + // InternalSolverLanguageParser.g:3890:1: ( Error ) + // InternalSolverLanguageParser.g:3891:2: Error + { + before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getErrorKeyword_0()); + match(input,Error,FOLLOW_2); + after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getErrorKeyword_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__0__Impl" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__1" + // InternalSolverLanguageParser.g:3900:1: rule__UnnamedErrorPredicateDefintion__Group__1 : rule__UnnamedErrorPredicateDefintion__Group__1__Impl rule__UnnamedErrorPredicateDefintion__Group__2 ; + public final void rule__UnnamedErrorPredicateDefintion__Group__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3904:1: ( rule__UnnamedErrorPredicateDefintion__Group__1__Impl rule__UnnamedErrorPredicateDefintion__Group__2 ) + // InternalSolverLanguageParser.g:3905:2: rule__UnnamedErrorPredicateDefintion__Group__1__Impl rule__UnnamedErrorPredicateDefintion__Group__2 + { + pushFollow(FOLLOW_13); + rule__UnnamedErrorPredicateDefintion__Group__1__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UnnamedErrorPredicateDefintion__Group__2(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__1" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__1__Impl" + // InternalSolverLanguageParser.g:3912:1: rule__UnnamedErrorPredicateDefintion__Group__1__Impl : ( ( rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 ) ) ; + public final void rule__UnnamedErrorPredicateDefintion__Group__1__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3916:1: ( ( ( rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:3917:1: ( ( rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 ) ) + { + // InternalSolverLanguageParser.g:3917:1: ( ( rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 ) ) + // InternalSolverLanguageParser.g:3918:2: ( rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 ) + { + before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListAssignment_1()); + // InternalSolverLanguageParser.g:3919:2: ( rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 ) + // InternalSolverLanguageParser.g:3919:3: rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 + { + pushFollow(FOLLOW_2); + rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListAssignment_1()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__1__Impl" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__2" + // InternalSolverLanguageParser.g:3927:1: rule__UnnamedErrorPredicateDefintion__Group__2 : rule__UnnamedErrorPredicateDefintion__Group__2__Impl rule__UnnamedErrorPredicateDefintion__Group__3 ; + public final void rule__UnnamedErrorPredicateDefintion__Group__2() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3931:1: ( rule__UnnamedErrorPredicateDefintion__Group__2__Impl rule__UnnamedErrorPredicateDefintion__Group__3 ) + // InternalSolverLanguageParser.g:3932:2: rule__UnnamedErrorPredicateDefintion__Group__2__Impl rule__UnnamedErrorPredicateDefintion__Group__3 + { + pushFollow(FOLLOW_12); + rule__UnnamedErrorPredicateDefintion__Group__2__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UnnamedErrorPredicateDefintion__Group__3(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__2" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__2__Impl" + // InternalSolverLanguageParser.g:3939:1: rule__UnnamedErrorPredicateDefintion__Group__2__Impl : ( ColonHyphenMinus ) ; + public final void rule__UnnamedErrorPredicateDefintion__Group__2__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3943:1: ( ( ColonHyphenMinus ) ) + // InternalSolverLanguageParser.g:3944:1: ( ColonHyphenMinus ) + { + // InternalSolverLanguageParser.g:3944:1: ( ColonHyphenMinus ) + // InternalSolverLanguageParser.g:3945:2: ColonHyphenMinus + { + before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getColonHyphenMinusKeyword_2()); + match(input,ColonHyphenMinus,FOLLOW_2); + after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getColonHyphenMinusKeyword_2()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__2__Impl" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__3" + // InternalSolverLanguageParser.g:3954:1: rule__UnnamedErrorPredicateDefintion__Group__3 : rule__UnnamedErrorPredicateDefintion__Group__3__Impl rule__UnnamedErrorPredicateDefintion__Group__4 ; + public final void rule__UnnamedErrorPredicateDefintion__Group__3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3958:1: ( rule__UnnamedErrorPredicateDefintion__Group__3__Impl rule__UnnamedErrorPredicateDefintion__Group__4 ) + // InternalSolverLanguageParser.g:3959:2: rule__UnnamedErrorPredicateDefintion__Group__3__Impl rule__UnnamedErrorPredicateDefintion__Group__4 + { + pushFollow(FOLLOW_7); + rule__UnnamedErrorPredicateDefintion__Group__3__Impl(); + + state._fsp--; + + pushFollow(FOLLOW_2); + rule__UnnamedErrorPredicateDefintion__Group__4(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__3" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__3__Impl" + // InternalSolverLanguageParser.g:3966:1: rule__UnnamedErrorPredicateDefintion__Group__3__Impl : ( ( rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 ) ) ; + public final void rule__UnnamedErrorPredicateDefintion__Group__3__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3970:1: ( ( ( rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:3971:1: ( ( rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 ) ) + { + // InternalSolverLanguageParser.g:3971:1: ( ( rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 ) ) + // InternalSolverLanguageParser.g:3972:2: ( rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 ) + { + before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyAssignment_3()); + // InternalSolverLanguageParser.g:3973:2: ( rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 ) + // InternalSolverLanguageParser.g:3973:3: rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 + { + pushFollow(FOLLOW_2); + rule__UnnamedErrorPredicateDefintion__BodyAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyAssignment_3()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__3__Impl" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__4" + // InternalSolverLanguageParser.g:3981:1: rule__UnnamedErrorPredicateDefintion__Group__4 : rule__UnnamedErrorPredicateDefintion__Group__4__Impl ; + public final void rule__UnnamedErrorPredicateDefintion__Group__4() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3985:1: ( rule__UnnamedErrorPredicateDefintion__Group__4__Impl ) + // InternalSolverLanguageParser.g:3986:2: rule__UnnamedErrorPredicateDefintion__Group__4__Impl + { + pushFollow(FOLLOW_2); + rule__UnnamedErrorPredicateDefintion__Group__4__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__4" + + + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__Group__4__Impl" + // InternalSolverLanguageParser.g:3992:1: rule__UnnamedErrorPredicateDefintion__Group__4__Impl : ( RULE_FULL_STOP ) ; + public final void rule__UnnamedErrorPredicateDefintion__Group__4__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:3996:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:3997:1: ( RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:3997:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:3998:2: RULE_FULL_STOP + { + before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getFULL_STOPTerminalRuleCall_4()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getFULL_STOPTerminalRuleCall_4()); } @@ -8163,21 +12719,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Statement__Group__0__Impl" + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__Group__4__Impl" - // $ANTLR start "rule__Statement__Group__1" - // InternalSolverLanguageParser.g:2514:1: rule__Statement__Group__1 : rule__Statement__Group__1__Impl ; - public final void rule__Statement__Group__1() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group__0" + // InternalSolverLanguageParser.g:4008:1: rule__DefaultAssertion__Group__0 : rule__DefaultAssertion__Group__0__Impl rule__DefaultAssertion__Group__1 ; + public final void rule__DefaultAssertion__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2518:1: ( rule__Statement__Group__1__Impl ) - // InternalSolverLanguageParser.g:2519:2: rule__Statement__Group__1__Impl + // InternalSolverLanguageParser.g:4012:1: ( rule__DefaultAssertion__Group__0__Impl rule__DefaultAssertion__Group__1 ) + // InternalSolverLanguageParser.g:4013:2: rule__DefaultAssertion__Group__0__Impl rule__DefaultAssertion__Group__1 { + pushFollow(FOLLOW_6); + rule__DefaultAssertion__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__Statement__Group__1__Impl(); + rule__DefaultAssertion__Group__1(); state._fsp--; @@ -8196,25 +12757,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Statement__Group__1" + // $ANTLR end "rule__DefaultAssertion__Group__0" - // $ANTLR start "rule__Statement__Group__1__Impl" - // InternalSolverLanguageParser.g:2525:1: rule__Statement__Group__1__Impl : ( RULE_FULL_STOP ) ; - public final void rule__Statement__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group__0__Impl" + // InternalSolverLanguageParser.g:4020:1: rule__DefaultAssertion__Group__0__Impl : ( Default ) ; + public final void rule__DefaultAssertion__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2529:1: ( ( RULE_FULL_STOP ) ) - // InternalSolverLanguageParser.g:2530:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4024:1: ( ( Default ) ) + // InternalSolverLanguageParser.g:4025:1: ( Default ) { - // InternalSolverLanguageParser.g:2530:1: ( RULE_FULL_STOP ) - // InternalSolverLanguageParser.g:2531:2: RULE_FULL_STOP + // InternalSolverLanguageParser.g:4025:1: ( Default ) + // InternalSolverLanguageParser.g:4026:2: Default { - before(grammarAccess.getStatementAccess().getFULL_STOPTerminalRuleCall_1()); - match(input,RULE_FULL_STOP,FOLLOW_2); - after(grammarAccess.getStatementAccess().getFULL_STOPTerminalRuleCall_1()); + before(grammarAccess.getDefaultAssertionAccess().getDefaultKeyword_0()); + match(input,Default,FOLLOW_2); + after(grammarAccess.getDefaultAssertionAccess().getDefaultKeyword_0()); } @@ -8233,26 +12794,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Statement__Group__1__Impl" + // $ANTLR end "rule__DefaultAssertion__Group__0__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group__0" - // InternalSolverLanguageParser.g:2541:1: rule__AssertionOrDefinition__Group__0 : rule__AssertionOrDefinition__Group__0__Impl rule__AssertionOrDefinition__Group__1 ; - public final void rule__AssertionOrDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group__1" + // InternalSolverLanguageParser.g:4035:1: rule__DefaultAssertion__Group__1 : rule__DefaultAssertion__Group__1__Impl rule__DefaultAssertion__Group__2 ; + public final void rule__DefaultAssertion__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2545:1: ( rule__AssertionOrDefinition__Group__0__Impl rule__AssertionOrDefinition__Group__1 ) - // InternalSolverLanguageParser.g:2546:2: rule__AssertionOrDefinition__Group__0__Impl rule__AssertionOrDefinition__Group__1 + // InternalSolverLanguageParser.g:4039:1: ( rule__DefaultAssertion__Group__1__Impl rule__DefaultAssertion__Group__2 ) + // InternalSolverLanguageParser.g:4040:2: rule__DefaultAssertion__Group__1__Impl rule__DefaultAssertion__Group__2 { - pushFollow(FOLLOW_5); - rule__AssertionOrDefinition__Group__0__Impl(); + pushFollow(FOLLOW_17); + rule__DefaultAssertion__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group__1(); + rule__DefaultAssertion__Group__2(); state._fsp--; @@ -8271,29 +12832,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group__0" + // $ANTLR end "rule__DefaultAssertion__Group__1" - // $ANTLR start "rule__AssertionOrDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:2553:1: rule__AssertionOrDefinition__Group__0__Impl : ( ruleExpression ) ; - public final void rule__AssertionOrDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group__1__Impl" + // InternalSolverLanguageParser.g:4047:1: rule__DefaultAssertion__Group__1__Impl : ( ( rule__DefaultAssertion__ExpressionAssignment_1 ) ) ; + public final void rule__DefaultAssertion__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2557:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:2558:1: ( ruleExpression ) + // InternalSolverLanguageParser.g:4051:1: ( ( ( rule__DefaultAssertion__ExpressionAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:4052:1: ( ( rule__DefaultAssertion__ExpressionAssignment_1 ) ) { - // InternalSolverLanguageParser.g:2558:1: ( ruleExpression ) - // InternalSolverLanguageParser.g:2559:2: ruleExpression + // InternalSolverLanguageParser.g:4052:1: ( ( rule__DefaultAssertion__ExpressionAssignment_1 ) ) + // InternalSolverLanguageParser.g:4053:2: ( rule__DefaultAssertion__ExpressionAssignment_1 ) + { + before(grammarAccess.getDefaultAssertionAccess().getExpressionAssignment_1()); + // InternalSolverLanguageParser.g:4054:2: ( rule__DefaultAssertion__ExpressionAssignment_1 ) + // InternalSolverLanguageParser.g:4054:3: rule__DefaultAssertion__ExpressionAssignment_1 { - before(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleExpression(); + rule__DefaultAssertion__ExpressionAssignment_1(); state._fsp--; - after(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); + + } + + after(grammarAccess.getDefaultAssertionAccess().getExpressionAssignment_1()); } @@ -8312,21 +12879,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group__0__Impl" + // $ANTLR end "rule__DefaultAssertion__Group__1__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group__1" - // InternalSolverLanguageParser.g:2568:1: rule__AssertionOrDefinition__Group__1 : rule__AssertionOrDefinition__Group__1__Impl ; - public final void rule__AssertionOrDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group__2" + // InternalSolverLanguageParser.g:4062:1: rule__DefaultAssertion__Group__2 : rule__DefaultAssertion__Group__2__Impl rule__DefaultAssertion__Group__3 ; + public final void rule__DefaultAssertion__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2572:1: ( rule__AssertionOrDefinition__Group__1__Impl ) - // InternalSolverLanguageParser.g:2573:2: rule__AssertionOrDefinition__Group__1__Impl + // InternalSolverLanguageParser.g:4066:1: ( rule__DefaultAssertion__Group__2__Impl rule__DefaultAssertion__Group__3 ) + // InternalSolverLanguageParser.g:4067:2: rule__DefaultAssertion__Group__2__Impl rule__DefaultAssertion__Group__3 { + pushFollow(FOLLOW_17); + rule__DefaultAssertion__Group__2__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group__1__Impl(); + rule__DefaultAssertion__Group__3(); state._fsp--; @@ -8345,36 +12917,36 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group__1" + // $ANTLR end "rule__DefaultAssertion__Group__2" - // $ANTLR start "rule__AssertionOrDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:2579:1: rule__AssertionOrDefinition__Group__1__Impl : ( ( rule__AssertionOrDefinition__Alternatives_1 )? ) ; - public final void rule__AssertionOrDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group__2__Impl" + // InternalSolverLanguageParser.g:4074:1: rule__DefaultAssertion__Group__2__Impl : ( ( rule__DefaultAssertion__Group_2__0 )? ) ; + public final void rule__DefaultAssertion__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2583:1: ( ( ( rule__AssertionOrDefinition__Alternatives_1 )? ) ) - // InternalSolverLanguageParser.g:2584:1: ( ( rule__AssertionOrDefinition__Alternatives_1 )? ) + // InternalSolverLanguageParser.g:4078:1: ( ( ( rule__DefaultAssertion__Group_2__0 )? ) ) + // InternalSolverLanguageParser.g:4079:1: ( ( rule__DefaultAssertion__Group_2__0 )? ) { - // InternalSolverLanguageParser.g:2584:1: ( ( rule__AssertionOrDefinition__Alternatives_1 )? ) - // InternalSolverLanguageParser.g:2585:2: ( rule__AssertionOrDefinition__Alternatives_1 )? + // InternalSolverLanguageParser.g:4079:1: ( ( rule__DefaultAssertion__Group_2__0 )? ) + // InternalSolverLanguageParser.g:4080:2: ( rule__DefaultAssertion__Group_2__0 )? { - before(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); - // InternalSolverLanguageParser.g:2586:2: ( rule__AssertionOrDefinition__Alternatives_1 )? - int alt26=2; - int LA26_0 = input.LA(1); + before(grammarAccess.getDefaultAssertionAccess().getGroup_2()); + // InternalSolverLanguageParser.g:4081:2: ( rule__DefaultAssertion__Group_2__0 )? + int alt36=2; + int LA36_0 = input.LA(1); - if ( (LA26_0==ColonHyphenMinus||LA26_0==Colon||LA26_0==EqualsSign) ) { - alt26=1; + if ( (LA36_0==Colon) ) { + alt36=1; } - switch (alt26) { + switch (alt36) { case 1 : - // InternalSolverLanguageParser.g:2586:3: rule__AssertionOrDefinition__Alternatives_1 + // InternalSolverLanguageParser.g:4081:3: rule__DefaultAssertion__Group_2__0 { pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Alternatives_1(); + rule__DefaultAssertion__Group_2__0(); state._fsp--; @@ -8384,7 +12956,7 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } - after(grammarAccess.getAssertionOrDefinitionAccess().getAlternatives_1()); + after(grammarAccess.getDefaultAssertionAccess().getGroup_2()); } @@ -8403,26 +12975,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group__1__Impl" + // $ANTLR end "rule__DefaultAssertion__Group__2__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__0" - // InternalSolverLanguageParser.g:2595:1: rule__AssertionOrDefinition__Group_1_0__0 : rule__AssertionOrDefinition__Group_1_0__0__Impl rule__AssertionOrDefinition__Group_1_0__1 ; - public final void rule__AssertionOrDefinition__Group_1_0__0() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group__3" + // InternalSolverLanguageParser.g:4089:1: rule__DefaultAssertion__Group__3 : rule__DefaultAssertion__Group__3__Impl ; + public final void rule__DefaultAssertion__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2599:1: ( rule__AssertionOrDefinition__Group_1_0__0__Impl rule__AssertionOrDefinition__Group_1_0__1 ) - // InternalSolverLanguageParser.g:2600:2: rule__AssertionOrDefinition__Group_1_0__0__Impl rule__AssertionOrDefinition__Group_1_0__1 + // InternalSolverLanguageParser.g:4093:1: ( rule__DefaultAssertion__Group__3__Impl ) + // InternalSolverLanguageParser.g:4094:2: rule__DefaultAssertion__Group__3__Impl { - pushFollow(FOLLOW_6); - rule__AssertionOrDefinition__Group_1_0__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_0__1(); + rule__DefaultAssertion__Group__3__Impl(); state._fsp--; @@ -8441,29 +13008,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__0" + // $ANTLR end "rule__DefaultAssertion__Group__3" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__0__Impl" - // InternalSolverLanguageParser.g:2607:1: rule__AssertionOrDefinition__Group_1_0__0__Impl : ( () ) ; - public final void rule__AssertionOrDefinition__Group_1_0__0__Impl() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group__3__Impl" + // InternalSolverLanguageParser.g:4100:1: rule__DefaultAssertion__Group__3__Impl : ( RULE_FULL_STOP ) ; + public final void rule__DefaultAssertion__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2611:1: ( ( () ) ) - // InternalSolverLanguageParser.g:2612:1: ( () ) - { - // InternalSolverLanguageParser.g:2612:1: ( () ) - // InternalSolverLanguageParser.g:2613:2: () + // InternalSolverLanguageParser.g:4104:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4105:1: ( RULE_FULL_STOP ) { - before(grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0()); - // InternalSolverLanguageParser.g:2614:2: () - // InternalSolverLanguageParser.g:2614:3: + // InternalSolverLanguageParser.g:4105:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4106:2: RULE_FULL_STOP { - } - - after(grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0()); + before(grammarAccess.getDefaultAssertionAccess().getFULL_STOPTerminalRuleCall_3()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getDefaultAssertionAccess().getFULL_STOPTerminalRuleCall_3()); } @@ -8471,6 +13034,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -8478,26 +13045,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__0__Impl" + // $ANTLR end "rule__DefaultAssertion__Group__3__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__1" - // InternalSolverLanguageParser.g:2622:1: rule__AssertionOrDefinition__Group_1_0__1 : rule__AssertionOrDefinition__Group_1_0__1__Impl rule__AssertionOrDefinition__Group_1_0__2 ; - public final void rule__AssertionOrDefinition__Group_1_0__1() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group_2__0" + // InternalSolverLanguageParser.g:4116:1: rule__DefaultAssertion__Group_2__0 : rule__DefaultAssertion__Group_2__0__Impl rule__DefaultAssertion__Group_2__1 ; + public final void rule__DefaultAssertion__Group_2__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2626:1: ( rule__AssertionOrDefinition__Group_1_0__1__Impl rule__AssertionOrDefinition__Group_1_0__2 ) - // InternalSolverLanguageParser.g:2627:2: rule__AssertionOrDefinition__Group_1_0__1__Impl rule__AssertionOrDefinition__Group_1_0__2 + // InternalSolverLanguageParser.g:4120:1: ( rule__DefaultAssertion__Group_2__0__Impl rule__DefaultAssertion__Group_2__1 ) + // InternalSolverLanguageParser.g:4121:2: rule__DefaultAssertion__Group_2__0__Impl rule__DefaultAssertion__Group_2__1 { - pushFollow(FOLLOW_7); - rule__AssertionOrDefinition__Group_1_0__1__Impl(); + pushFollow(FOLLOW_12); + rule__DefaultAssertion__Group_2__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_0__2(); + rule__DefaultAssertion__Group_2__1(); state._fsp--; @@ -8516,25 +13083,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__1" + // $ANTLR end "rule__DefaultAssertion__Group_2__0" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__1__Impl" - // InternalSolverLanguageParser.g:2634:1: rule__AssertionOrDefinition__Group_1_0__1__Impl : ( Colon ) ; - public final void rule__AssertionOrDefinition__Group_1_0__1__Impl() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group_2__0__Impl" + // InternalSolverLanguageParser.g:4128:1: rule__DefaultAssertion__Group_2__0__Impl : ( Colon ) ; + public final void rule__DefaultAssertion__Group_2__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2638:1: ( ( Colon ) ) - // InternalSolverLanguageParser.g:2639:1: ( Colon ) + // InternalSolverLanguageParser.g:4132:1: ( ( Colon ) ) + // InternalSolverLanguageParser.g:4133:1: ( Colon ) { - // InternalSolverLanguageParser.g:2639:1: ( Colon ) - // InternalSolverLanguageParser.g:2640:2: Colon + // InternalSolverLanguageParser.g:4133:1: ( Colon ) + // InternalSolverLanguageParser.g:4134:2: Colon { - before(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1()); + before(grammarAccess.getDefaultAssertionAccess().getColonKeyword_2_0()); match(input,Colon,FOLLOW_2); - after(grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1()); + after(grammarAccess.getDefaultAssertionAccess().getColonKeyword_2_0()); } @@ -8553,21 +13120,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__1__Impl" + // $ANTLR end "rule__DefaultAssertion__Group_2__0__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__2" - // InternalSolverLanguageParser.g:2649:1: rule__AssertionOrDefinition__Group_1_0__2 : rule__AssertionOrDefinition__Group_1_0__2__Impl ; - public final void rule__AssertionOrDefinition__Group_1_0__2() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group_2__1" + // InternalSolverLanguageParser.g:4143:1: rule__DefaultAssertion__Group_2__1 : rule__DefaultAssertion__Group_2__1__Impl ; + public final void rule__DefaultAssertion__Group_2__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2653:1: ( rule__AssertionOrDefinition__Group_1_0__2__Impl ) - // InternalSolverLanguageParser.g:2654:2: rule__AssertionOrDefinition__Group_1_0__2__Impl + // InternalSolverLanguageParser.g:4147:1: ( rule__DefaultAssertion__Group_2__1__Impl ) + // InternalSolverLanguageParser.g:4148:2: rule__DefaultAssertion__Group_2__1__Impl { pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_0__2__Impl(); + rule__DefaultAssertion__Group_2__1__Impl(); state._fsp--; @@ -8586,35 +13153,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__2" + // $ANTLR end "rule__DefaultAssertion__Group_2__1" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_0__2__Impl" - // InternalSolverLanguageParser.g:2660:1: rule__AssertionOrDefinition__Group_1_0__2__Impl : ( ( rule__AssertionOrDefinition__RangeAssignment_1_0_2 ) ) ; - public final void rule__AssertionOrDefinition__Group_1_0__2__Impl() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__Group_2__1__Impl" + // InternalSolverLanguageParser.g:4154:1: rule__DefaultAssertion__Group_2__1__Impl : ( ( rule__DefaultAssertion__RangeAssignment_2_1 ) ) ; + public final void rule__DefaultAssertion__Group_2__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2664:1: ( ( ( rule__AssertionOrDefinition__RangeAssignment_1_0_2 ) ) ) - // InternalSolverLanguageParser.g:2665:1: ( ( rule__AssertionOrDefinition__RangeAssignment_1_0_2 ) ) + // InternalSolverLanguageParser.g:4158:1: ( ( ( rule__DefaultAssertion__RangeAssignment_2_1 ) ) ) + // InternalSolverLanguageParser.g:4159:1: ( ( rule__DefaultAssertion__RangeAssignment_2_1 ) ) { - // InternalSolverLanguageParser.g:2665:1: ( ( rule__AssertionOrDefinition__RangeAssignment_1_0_2 ) ) - // InternalSolverLanguageParser.g:2666:2: ( rule__AssertionOrDefinition__RangeAssignment_1_0_2 ) + // InternalSolverLanguageParser.g:4159:1: ( ( rule__DefaultAssertion__RangeAssignment_2_1 ) ) + // InternalSolverLanguageParser.g:4160:2: ( rule__DefaultAssertion__RangeAssignment_2_1 ) { - before(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_2()); - // InternalSolverLanguageParser.g:2667:2: ( rule__AssertionOrDefinition__RangeAssignment_1_0_2 ) - // InternalSolverLanguageParser.g:2667:3: rule__AssertionOrDefinition__RangeAssignment_1_0_2 + before(grammarAccess.getDefaultAssertionAccess().getRangeAssignment_2_1()); + // InternalSolverLanguageParser.g:4161:2: ( rule__DefaultAssertion__RangeAssignment_2_1 ) + // InternalSolverLanguageParser.g:4161:3: rule__DefaultAssertion__RangeAssignment_2_1 { pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__RangeAssignment_1_0_2(); + rule__DefaultAssertion__RangeAssignment_2_1(); state._fsp--; } - after(grammarAccess.getAssertionOrDefinitionAccess().getRangeAssignment_1_0_2()); + after(grammarAccess.getDefaultAssertionAccess().getRangeAssignment_2_1()); } @@ -8633,26 +13200,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_0__2__Impl" + // $ANTLR end "rule__DefaultAssertion__Group_2__1__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__0" - // InternalSolverLanguageParser.g:2676:1: rule__AssertionOrDefinition__Group_1_1__0 : rule__AssertionOrDefinition__Group_1_1__0__Impl rule__AssertionOrDefinition__Group_1_1__1 ; - public final void rule__AssertionOrDefinition__Group_1_1__0() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__0" + // InternalSolverLanguageParser.g:4170:1: rule__FunctionDefinition__Group__0 : rule__FunctionDefinition__Group__0__Impl rule__FunctionDefinition__Group__1 ; + public final void rule__FunctionDefinition__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2680:1: ( rule__AssertionOrDefinition__Group_1_1__0__Impl rule__AssertionOrDefinition__Group_1_1__1 ) - // InternalSolverLanguageParser.g:2681:2: rule__AssertionOrDefinition__Group_1_1__0__Impl rule__AssertionOrDefinition__Group_1_1__1 + // InternalSolverLanguageParser.g:4174:1: ( rule__FunctionDefinition__Group__0__Impl rule__FunctionDefinition__Group__1 ) + // InternalSolverLanguageParser.g:4175:2: rule__FunctionDefinition__Group__0__Impl rule__FunctionDefinition__Group__1 { - pushFollow(FOLLOW_8); - rule__AssertionOrDefinition__Group_1_1__0__Impl(); + pushFollow(FOLLOW_6); + rule__FunctionDefinition__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_1__1(); + rule__FunctionDefinition__Group__1(); state._fsp--; @@ -8671,100 +13238,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__0" + // $ANTLR end "rule__FunctionDefinition__Group__0" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__0__Impl" - // InternalSolverLanguageParser.g:2688:1: rule__AssertionOrDefinition__Group_1_1__0__Impl : ( () ) ; - public final void rule__AssertionOrDefinition__Group_1_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__0__Impl" + // InternalSolverLanguageParser.g:4182:1: rule__FunctionDefinition__Group__0__Impl : ( ( rule__FunctionDefinition__ResultTypeAssignment_0 ) ) ; + public final void rule__FunctionDefinition__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2692:1: ( ( () ) ) - // InternalSolverLanguageParser.g:2693:1: ( () ) + // InternalSolverLanguageParser.g:4186:1: ( ( ( rule__FunctionDefinition__ResultTypeAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:4187:1: ( ( rule__FunctionDefinition__ResultTypeAssignment_0 ) ) { - // InternalSolverLanguageParser.g:2693:1: ( () ) - // InternalSolverLanguageParser.g:2694:2: () + // InternalSolverLanguageParser.g:4187:1: ( ( rule__FunctionDefinition__ResultTypeAssignment_0 ) ) + // InternalSolverLanguageParser.g:4188:2: ( rule__FunctionDefinition__ResultTypeAssignment_0 ) { - before(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0()); - // InternalSolverLanguageParser.g:2695:2: () - // InternalSolverLanguageParser.g:2695:3: - { - } - - after(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0()); - - } - - - } - - } - finally { - - restoreStackSize(stackSize); - - } - return ; - } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__0__Impl" - - - // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__1" - // InternalSolverLanguageParser.g:2703:1: rule__AssertionOrDefinition__Group_1_1__1 : rule__AssertionOrDefinition__Group_1_1__1__Impl rule__AssertionOrDefinition__Group_1_1__2 ; - public final void rule__AssertionOrDefinition__Group_1_1__1() throws RecognitionException { - - int stackSize = keepStackSize(); - - try { - // InternalSolverLanguageParser.g:2707:1: ( rule__AssertionOrDefinition__Group_1_1__1__Impl rule__AssertionOrDefinition__Group_1_1__2 ) - // InternalSolverLanguageParser.g:2708:2: rule__AssertionOrDefinition__Group_1_1__1__Impl rule__AssertionOrDefinition__Group_1_1__2 + before(grammarAccess.getFunctionDefinitionAccess().getResultTypeAssignment_0()); + // InternalSolverLanguageParser.g:4189:2: ( rule__FunctionDefinition__ResultTypeAssignment_0 ) + // InternalSolverLanguageParser.g:4189:3: rule__FunctionDefinition__ResultTypeAssignment_0 { - pushFollow(FOLLOW_7); - rule__AssertionOrDefinition__Group_1_1__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_1__2(); + rule__FunctionDefinition__ResultTypeAssignment_0(); state._fsp--; } - } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } - finally { - - restoreStackSize(stackSize); - - } - return ; - } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__1" - - - // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__1__Impl" - // InternalSolverLanguageParser.g:2715:1: rule__AssertionOrDefinition__Group_1_1__1__Impl : ( ColonHyphenMinus ) ; - public final void rule__AssertionOrDefinition__Group_1_1__1__Impl() throws RecognitionException { - - int stackSize = keepStackSize(); - - try { - // InternalSolverLanguageParser.g:2719:1: ( ( ColonHyphenMinus ) ) - // InternalSolverLanguageParser.g:2720:1: ( ColonHyphenMinus ) - { - // InternalSolverLanguageParser.g:2720:1: ( ColonHyphenMinus ) - // InternalSolverLanguageParser.g:2721:2: ColonHyphenMinus - { - before(grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); - match(input,ColonHyphenMinus,FOLLOW_2); - after(grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); + after(grammarAccess.getFunctionDefinitionAccess().getResultTypeAssignment_0()); } @@ -8783,21 +13285,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__1__Impl" + // $ANTLR end "rule__FunctionDefinition__Group__0__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__2" - // InternalSolverLanguageParser.g:2730:1: rule__AssertionOrDefinition__Group_1_1__2 : rule__AssertionOrDefinition__Group_1_1__2__Impl ; - public final void rule__AssertionOrDefinition__Group_1_1__2() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__1" + // InternalSolverLanguageParser.g:4197:1: rule__FunctionDefinition__Group__1 : rule__FunctionDefinition__Group__1__Impl rule__FunctionDefinition__Group__2 ; + public final void rule__FunctionDefinition__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2734:1: ( rule__AssertionOrDefinition__Group_1_1__2__Impl ) - // InternalSolverLanguageParser.g:2735:2: rule__AssertionOrDefinition__Group_1_1__2__Impl + // InternalSolverLanguageParser.g:4201:1: ( rule__FunctionDefinition__Group__1__Impl rule__FunctionDefinition__Group__2 ) + // InternalSolverLanguageParser.g:4202:2: rule__FunctionDefinition__Group__1__Impl rule__FunctionDefinition__Group__2 { + pushFollow(FOLLOW_18); + rule__FunctionDefinition__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_1__2__Impl(); + rule__FunctionDefinition__Group__2(); state._fsp--; @@ -8816,35 +13323,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__2" + // $ANTLR end "rule__FunctionDefinition__Group__1" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_1__2__Impl" - // InternalSolverLanguageParser.g:2741:1: rule__AssertionOrDefinition__Group_1_1__2__Impl : ( ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) ) ; - public final void rule__AssertionOrDefinition__Group_1_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__1__Impl" + // InternalSolverLanguageParser.g:4209:1: rule__FunctionDefinition__Group__1__Impl : ( ( rule__FunctionDefinition__HeadAssignment_1 ) ) ; + public final void rule__FunctionDefinition__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2745:1: ( ( ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) ) ) - // InternalSolverLanguageParser.g:2746:1: ( ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) ) + // InternalSolverLanguageParser.g:4213:1: ( ( ( rule__FunctionDefinition__HeadAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:4214:1: ( ( rule__FunctionDefinition__HeadAssignment_1 ) ) { - // InternalSolverLanguageParser.g:2746:1: ( ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) ) - // InternalSolverLanguageParser.g:2747:2: ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) + // InternalSolverLanguageParser.g:4214:1: ( ( rule__FunctionDefinition__HeadAssignment_1 ) ) + // InternalSolverLanguageParser.g:4215:2: ( rule__FunctionDefinition__HeadAssignment_1 ) { - before(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2()); - // InternalSolverLanguageParser.g:2748:2: ( rule__AssertionOrDefinition__BodyAssignment_1_1_2 ) - // InternalSolverLanguageParser.g:2748:3: rule__AssertionOrDefinition__BodyAssignment_1_1_2 + before(grammarAccess.getFunctionDefinitionAccess().getHeadAssignment_1()); + // InternalSolverLanguageParser.g:4216:2: ( rule__FunctionDefinition__HeadAssignment_1 ) + // InternalSolverLanguageParser.g:4216:3: rule__FunctionDefinition__HeadAssignment_1 { pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__BodyAssignment_1_1_2(); + rule__FunctionDefinition__HeadAssignment_1(); state._fsp--; } - after(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_1_2()); + after(grammarAccess.getFunctionDefinitionAccess().getHeadAssignment_1()); } @@ -8863,26 +13370,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_1__2__Impl" + // $ANTLR end "rule__FunctionDefinition__Group__1__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__0" - // InternalSolverLanguageParser.g:2757:1: rule__AssertionOrDefinition__Group_1_2__0 : rule__AssertionOrDefinition__Group_1_2__0__Impl rule__AssertionOrDefinition__Group_1_2__1 ; - public final void rule__AssertionOrDefinition__Group_1_2__0() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__2" + // InternalSolverLanguageParser.g:4224:1: rule__FunctionDefinition__Group__2 : rule__FunctionDefinition__Group__2__Impl rule__FunctionDefinition__Group__3 ; + public final void rule__FunctionDefinition__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2761:1: ( rule__AssertionOrDefinition__Group_1_2__0__Impl rule__AssertionOrDefinition__Group_1_2__1 ) - // InternalSolverLanguageParser.g:2762:2: rule__AssertionOrDefinition__Group_1_2__0__Impl rule__AssertionOrDefinition__Group_1_2__1 + // InternalSolverLanguageParser.g:4228:1: ( rule__FunctionDefinition__Group__2__Impl rule__FunctionDefinition__Group__3 ) + // InternalSolverLanguageParser.g:4229:2: rule__FunctionDefinition__Group__2__Impl rule__FunctionDefinition__Group__3 { - pushFollow(FOLLOW_5); - rule__AssertionOrDefinition__Group_1_2__0__Impl(); + pushFollow(FOLLOW_12); + rule__FunctionDefinition__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_2__1(); + rule__FunctionDefinition__Group__3(); state._fsp--; @@ -8901,29 +13408,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__0" + // $ANTLR end "rule__FunctionDefinition__Group__2" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__0__Impl" - // InternalSolverLanguageParser.g:2769:1: rule__AssertionOrDefinition__Group_1_2__0__Impl : ( () ) ; - public final void rule__AssertionOrDefinition__Group_1_2__0__Impl() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__2__Impl" + // InternalSolverLanguageParser.g:4236:1: rule__FunctionDefinition__Group__2__Impl : ( ColonEqualsSign ) ; + public final void rule__FunctionDefinition__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2773:1: ( ( () ) ) - // InternalSolverLanguageParser.g:2774:1: ( () ) - { - // InternalSolverLanguageParser.g:2774:1: ( () ) - // InternalSolverLanguageParser.g:2775:2: () + // InternalSolverLanguageParser.g:4240:1: ( ( ColonEqualsSign ) ) + // InternalSolverLanguageParser.g:4241:1: ( ColonEqualsSign ) { - before(grammarAccess.getAssertionOrDefinitionAccess().getMetricDefinitionHeadAction_1_2_0()); - // InternalSolverLanguageParser.g:2776:2: () - // InternalSolverLanguageParser.g:2776:3: + // InternalSolverLanguageParser.g:4241:1: ( ColonEqualsSign ) + // InternalSolverLanguageParser.g:4242:2: ColonEqualsSign { - } - - after(grammarAccess.getAssertionOrDefinitionAccess().getMetricDefinitionHeadAction_1_2_0()); + before(grammarAccess.getFunctionDefinitionAccess().getColonEqualsSignKeyword_2()); + match(input,ColonEqualsSign,FOLLOW_2); + after(grammarAccess.getFunctionDefinitionAccess().getColonEqualsSignKeyword_2()); } @@ -8931,6 +13434,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -8938,26 +13445,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__0__Impl" + // $ANTLR end "rule__FunctionDefinition__Group__2__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__1" - // InternalSolverLanguageParser.g:2784:1: rule__AssertionOrDefinition__Group_1_2__1 : rule__AssertionOrDefinition__Group_1_2__1__Impl rule__AssertionOrDefinition__Group_1_2__2 ; - public final void rule__AssertionOrDefinition__Group_1_2__1() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__3" + // InternalSolverLanguageParser.g:4251:1: rule__FunctionDefinition__Group__3 : rule__FunctionDefinition__Group__3__Impl rule__FunctionDefinition__Group__4 ; + public final void rule__FunctionDefinition__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2788:1: ( rule__AssertionOrDefinition__Group_1_2__1__Impl rule__AssertionOrDefinition__Group_1_2__2 ) - // InternalSolverLanguageParser.g:2789:2: rule__AssertionOrDefinition__Group_1_2__1__Impl rule__AssertionOrDefinition__Group_1_2__2 + // InternalSolverLanguageParser.g:4255:1: ( rule__FunctionDefinition__Group__3__Impl rule__FunctionDefinition__Group__4 ) + // InternalSolverLanguageParser.g:4256:2: rule__FunctionDefinition__Group__3__Impl rule__FunctionDefinition__Group__4 { pushFollow(FOLLOW_7); - rule__AssertionOrDefinition__Group_1_2__1__Impl(); + rule__FunctionDefinition__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_2__2(); + rule__FunctionDefinition__Group__4(); state._fsp--; @@ -8976,25 +13483,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__1" + // $ANTLR end "rule__FunctionDefinition__Group__3" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__1__Impl" - // InternalSolverLanguageParser.g:2796:1: rule__AssertionOrDefinition__Group_1_2__1__Impl : ( EqualsSign ) ; - public final void rule__AssertionOrDefinition__Group_1_2__1__Impl() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__3__Impl" + // InternalSolverLanguageParser.g:4263:1: rule__FunctionDefinition__Group__3__Impl : ( ( rule__FunctionDefinition__BodyAssignment_3 ) ) ; + public final void rule__FunctionDefinition__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2800:1: ( ( EqualsSign ) ) - // InternalSolverLanguageParser.g:2801:1: ( EqualsSign ) + // InternalSolverLanguageParser.g:4267:1: ( ( ( rule__FunctionDefinition__BodyAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:4268:1: ( ( rule__FunctionDefinition__BodyAssignment_3 ) ) { - // InternalSolverLanguageParser.g:2801:1: ( EqualsSign ) - // InternalSolverLanguageParser.g:2802:2: EqualsSign + // InternalSolverLanguageParser.g:4268:1: ( ( rule__FunctionDefinition__BodyAssignment_3 ) ) + // InternalSolverLanguageParser.g:4269:2: ( rule__FunctionDefinition__BodyAssignment_3 ) { - before(grammarAccess.getAssertionOrDefinitionAccess().getEqualsSignKeyword_1_2_1()); - match(input,EqualsSign,FOLLOW_2); - after(grammarAccess.getAssertionOrDefinitionAccess().getEqualsSignKeyword_1_2_1()); + before(grammarAccess.getFunctionDefinitionAccess().getBodyAssignment_3()); + // InternalSolverLanguageParser.g:4270:2: ( rule__FunctionDefinition__BodyAssignment_3 ) + // InternalSolverLanguageParser.g:4270:3: rule__FunctionDefinition__BodyAssignment_3 + { + pushFollow(FOLLOW_2); + rule__FunctionDefinition__BodyAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getFunctionDefinitionAccess().getBodyAssignment_3()); } @@ -9013,21 +13530,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__1__Impl" + // $ANTLR end "rule__FunctionDefinition__Group__3__Impl" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__2" - // InternalSolverLanguageParser.g:2811:1: rule__AssertionOrDefinition__Group_1_2__2 : rule__AssertionOrDefinition__Group_1_2__2__Impl ; - public final void rule__AssertionOrDefinition__Group_1_2__2() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__4" + // InternalSolverLanguageParser.g:4278:1: rule__FunctionDefinition__Group__4 : rule__FunctionDefinition__Group__4__Impl ; + public final void rule__FunctionDefinition__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2815:1: ( rule__AssertionOrDefinition__Group_1_2__2__Impl ) - // InternalSolverLanguageParser.g:2816:2: rule__AssertionOrDefinition__Group_1_2__2__Impl + // InternalSolverLanguageParser.g:4282:1: ( rule__FunctionDefinition__Group__4__Impl ) + // InternalSolverLanguageParser.g:4283:2: rule__FunctionDefinition__Group__4__Impl { pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__Group_1_2__2__Impl(); + rule__FunctionDefinition__Group__4__Impl(); state._fsp--; @@ -9046,35 +13563,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__2" + // $ANTLR end "rule__FunctionDefinition__Group__4" - // $ANTLR start "rule__AssertionOrDefinition__Group_1_2__2__Impl" - // InternalSolverLanguageParser.g:2822:1: rule__AssertionOrDefinition__Group_1_2__2__Impl : ( ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) ) ; - public final void rule__AssertionOrDefinition__Group_1_2__2__Impl() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__Group__4__Impl" + // InternalSolverLanguageParser.g:4289:1: rule__FunctionDefinition__Group__4__Impl : ( RULE_FULL_STOP ) ; + public final void rule__FunctionDefinition__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2826:1: ( ( ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) ) ) - // InternalSolverLanguageParser.g:2827:1: ( ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) ) + // InternalSolverLanguageParser.g:4293:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4294:1: ( RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:2827:1: ( ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) ) - // InternalSolverLanguageParser.g:2828:2: ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) - { - before(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2()); - // InternalSolverLanguageParser.g:2829:2: ( rule__AssertionOrDefinition__BodyAssignment_1_2_2 ) - // InternalSolverLanguageParser.g:2829:3: rule__AssertionOrDefinition__BodyAssignment_1_2_2 + // InternalSolverLanguageParser.g:4294:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4295:2: RULE_FULL_STOP { - pushFollow(FOLLOW_2); - rule__AssertionOrDefinition__BodyAssignment_1_2_2(); - - state._fsp--; - - - } - - after(grammarAccess.getAssertionOrDefinitionAccess().getBodyAssignment_1_2_2()); + before(grammarAccess.getFunctionDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getFunctionDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); } @@ -9093,26 +13600,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__Group_1_2__2__Impl" + // $ANTLR end "rule__FunctionDefinition__Group__4__Impl" - // $ANTLR start "rule__PredicateDefinition__Group__0" - // InternalSolverLanguageParser.g:2838:1: rule__PredicateDefinition__Group__0 : rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1 ; - public final void rule__PredicateDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__TypeReference__Group__0" + // InternalSolverLanguageParser.g:4305:1: rule__TypeReference__Group__0 : rule__TypeReference__Group__0__Impl rule__TypeReference__Group__1 ; + public final void rule__TypeReference__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2842:1: ( rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1 ) - // InternalSolverLanguageParser.g:2843:2: rule__PredicateDefinition__Group__0__Impl rule__PredicateDefinition__Group__1 + // InternalSolverLanguageParser.g:4309:1: ( rule__TypeReference__Group__0__Impl rule__TypeReference__Group__1 ) + // InternalSolverLanguageParser.g:4310:2: rule__TypeReference__Group__0__Impl rule__TypeReference__Group__1 { - pushFollow(FOLLOW_9); - rule__PredicateDefinition__Group__0__Impl(); + pushFollow(FOLLOW_19); + rule__TypeReference__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group__1(); + rule__TypeReference__Group__1(); state._fsp--; @@ -9131,35 +13638,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group__0" + // $ANTLR end "rule__TypeReference__Group__0" - // $ANTLR start "rule__PredicateDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:2850:1: rule__PredicateDefinition__Group__0__Impl : ( ( rule__PredicateDefinition__Alternatives_0 ) ) ; - public final void rule__PredicateDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__TypeReference__Group__0__Impl" + // InternalSolverLanguageParser.g:4317:1: rule__TypeReference__Group__0__Impl : ( ( rule__TypeReference__TypeAssignment_0 ) ) ; + public final void rule__TypeReference__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2854:1: ( ( ( rule__PredicateDefinition__Alternatives_0 ) ) ) - // InternalSolverLanguageParser.g:2855:1: ( ( rule__PredicateDefinition__Alternatives_0 ) ) + // InternalSolverLanguageParser.g:4321:1: ( ( ( rule__TypeReference__TypeAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:4322:1: ( ( rule__TypeReference__TypeAssignment_0 ) ) { - // InternalSolverLanguageParser.g:2855:1: ( ( rule__PredicateDefinition__Alternatives_0 ) ) - // InternalSolverLanguageParser.g:2856:2: ( rule__PredicateDefinition__Alternatives_0 ) + // InternalSolverLanguageParser.g:4322:1: ( ( rule__TypeReference__TypeAssignment_0 ) ) + // InternalSolverLanguageParser.g:4323:2: ( rule__TypeReference__TypeAssignment_0 ) { - before(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); - // InternalSolverLanguageParser.g:2857:2: ( rule__PredicateDefinition__Alternatives_0 ) - // InternalSolverLanguageParser.g:2857:3: rule__PredicateDefinition__Alternatives_0 + before(grammarAccess.getTypeReferenceAccess().getTypeAssignment_0()); + // InternalSolverLanguageParser.g:4324:2: ( rule__TypeReference__TypeAssignment_0 ) + // InternalSolverLanguageParser.g:4324:3: rule__TypeReference__TypeAssignment_0 { pushFollow(FOLLOW_2); - rule__PredicateDefinition__Alternatives_0(); + rule__TypeReference__TypeAssignment_0(); state._fsp--; } - after(grammarAccess.getPredicateDefinitionAccess().getAlternatives_0()); + after(grammarAccess.getTypeReferenceAccess().getTypeAssignment_0()); } @@ -9178,26 +13685,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group__0__Impl" + // $ANTLR end "rule__TypeReference__Group__0__Impl" - // $ANTLR start "rule__PredicateDefinition__Group__1" - // InternalSolverLanguageParser.g:2865:1: rule__PredicateDefinition__Group__1 : rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2 ; - public final void rule__PredicateDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__TypeReference__Group__1" + // InternalSolverLanguageParser.g:4332:1: rule__TypeReference__Group__1 : rule__TypeReference__Group__1__Impl ; + public final void rule__TypeReference__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2869:1: ( rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2 ) - // InternalSolverLanguageParser.g:2870:2: rule__PredicateDefinition__Group__1__Impl rule__PredicateDefinition__Group__2 + // InternalSolverLanguageParser.g:4336:1: ( rule__TypeReference__Group__1__Impl ) + // InternalSolverLanguageParser.g:4337:2: rule__TypeReference__Group__1__Impl { - pushFollow(FOLLOW_8); - rule__PredicateDefinition__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group__2(); + rule__TypeReference__Group__1__Impl(); state._fsp--; @@ -9216,35 +13718,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group__1" + // $ANTLR end "rule__TypeReference__Group__1" - // $ANTLR start "rule__PredicateDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:2877:1: rule__PredicateDefinition__Group__1__Impl : ( ( rule__PredicateDefinition__HeadAssignment_1 ) ) ; - public final void rule__PredicateDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__TypeReference__Group__1__Impl" + // InternalSolverLanguageParser.g:4343:1: rule__TypeReference__Group__1__Impl : ( ( rule__TypeReference__ForceObjectTypeAssignment_1 )? ) ; + public final void rule__TypeReference__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2881:1: ( ( ( rule__PredicateDefinition__HeadAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:2882:1: ( ( rule__PredicateDefinition__HeadAssignment_1 ) ) - { - // InternalSolverLanguageParser.g:2882:1: ( ( rule__PredicateDefinition__HeadAssignment_1 ) ) - // InternalSolverLanguageParser.g:2883:2: ( rule__PredicateDefinition__HeadAssignment_1 ) + // InternalSolverLanguageParser.g:4347:1: ( ( ( rule__TypeReference__ForceObjectTypeAssignment_1 )? ) ) + // InternalSolverLanguageParser.g:4348:1: ( ( rule__TypeReference__ForceObjectTypeAssignment_1 )? ) { - before(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1()); - // InternalSolverLanguageParser.g:2884:2: ( rule__PredicateDefinition__HeadAssignment_1 ) - // InternalSolverLanguageParser.g:2884:3: rule__PredicateDefinition__HeadAssignment_1 + // InternalSolverLanguageParser.g:4348:1: ( ( rule__TypeReference__ForceObjectTypeAssignment_1 )? ) + // InternalSolverLanguageParser.g:4349:2: ( rule__TypeReference__ForceObjectTypeAssignment_1 )? { - pushFollow(FOLLOW_2); - rule__PredicateDefinition__HeadAssignment_1(); + before(grammarAccess.getTypeReferenceAccess().getForceObjectTypeAssignment_1()); + // InternalSolverLanguageParser.g:4350:2: ( rule__TypeReference__ForceObjectTypeAssignment_1 )? + int alt37=2; + int LA37_0 = input.LA(1); - state._fsp--; + if ( (LA37_0==Object) ) { + alt37=1; + } + switch (alt37) { + case 1 : + // InternalSolverLanguageParser.g:4350:3: rule__TypeReference__ForceObjectTypeAssignment_1 + { + pushFollow(FOLLOW_2); + rule__TypeReference__ForceObjectTypeAssignment_1(); + state._fsp--; + + + } + break; } - after(grammarAccess.getPredicateDefinitionAccess().getHeadAssignment_1()); + after(grammarAccess.getTypeReferenceAccess().getForceObjectTypeAssignment_1()); } @@ -9263,26 +13776,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group__1__Impl" + // $ANTLR end "rule__TypeReference__Group__1__Impl" - // $ANTLR start "rule__PredicateDefinition__Group__2" - // InternalSolverLanguageParser.g:2892:1: rule__PredicateDefinition__Group__2 : rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3 ; - public final void rule__PredicateDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__Attribute__Group__0" + // InternalSolverLanguageParser.g:4359:1: rule__Attribute__Group__0 : rule__Attribute__Group__0__Impl rule__Attribute__Group__1 ; + public final void rule__Attribute__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2896:1: ( rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3 ) - // InternalSolverLanguageParser.g:2897:2: rule__PredicateDefinition__Group__2__Impl rule__PredicateDefinition__Group__3 - { - pushFollow(FOLLOW_7); - rule__PredicateDefinition__Group__2__Impl(); + // InternalSolverLanguageParser.g:4363:1: ( rule__Attribute__Group__0__Impl rule__Attribute__Group__1 ) + // InternalSolverLanguageParser.g:4364:2: rule__Attribute__Group__0__Impl rule__Attribute__Group__1 + { + pushFollow(FOLLOW_6); + rule__Attribute__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group__3(); + rule__Attribute__Group__1(); state._fsp--; @@ -9301,25 +13814,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group__2" + // $ANTLR end "rule__Attribute__Group__0" - // $ANTLR start "rule__PredicateDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:2904:1: rule__PredicateDefinition__Group__2__Impl : ( ColonHyphenMinus ) ; - public final void rule__PredicateDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Attribute__Group__0__Impl" + // InternalSolverLanguageParser.g:4371:1: rule__Attribute__Group__0__Impl : ( ( rule__Attribute__KindAssignment_0 ) ) ; + public final void rule__Attribute__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2908:1: ( ( ColonHyphenMinus ) ) - // InternalSolverLanguageParser.g:2909:1: ( ColonHyphenMinus ) + // InternalSolverLanguageParser.g:4375:1: ( ( ( rule__Attribute__KindAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:4376:1: ( ( rule__Attribute__KindAssignment_0 ) ) { - // InternalSolverLanguageParser.g:2909:1: ( ColonHyphenMinus ) - // InternalSolverLanguageParser.g:2910:2: ColonHyphenMinus + // InternalSolverLanguageParser.g:4376:1: ( ( rule__Attribute__KindAssignment_0 ) ) + // InternalSolverLanguageParser.g:4377:2: ( rule__Attribute__KindAssignment_0 ) { - before(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); - match(input,ColonHyphenMinus,FOLLOW_2); - after(grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); + before(grammarAccess.getAttributeAccess().getKindAssignment_0()); + // InternalSolverLanguageParser.g:4378:2: ( rule__Attribute__KindAssignment_0 ) + // InternalSolverLanguageParser.g:4378:3: rule__Attribute__KindAssignment_0 + { + pushFollow(FOLLOW_2); + rule__Attribute__KindAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getAttributeAccess().getKindAssignment_0()); } @@ -9338,21 +13861,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group__2__Impl" + // $ANTLR end "rule__Attribute__Group__0__Impl" - // $ANTLR start "rule__PredicateDefinition__Group__3" - // InternalSolverLanguageParser.g:2919:1: rule__PredicateDefinition__Group__3 : rule__PredicateDefinition__Group__3__Impl ; - public final void rule__PredicateDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__Attribute__Group__1" + // InternalSolverLanguageParser.g:4386:1: rule__Attribute__Group__1 : rule__Attribute__Group__1__Impl rule__Attribute__Group__2 ; + public final void rule__Attribute__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2923:1: ( rule__PredicateDefinition__Group__3__Impl ) - // InternalSolverLanguageParser.g:2924:2: rule__PredicateDefinition__Group__3__Impl + // InternalSolverLanguageParser.g:4390:1: ( rule__Attribute__Group__1__Impl rule__Attribute__Group__2 ) + // InternalSolverLanguageParser.g:4391:2: rule__Attribute__Group__1__Impl rule__Attribute__Group__2 { + pushFollow(FOLLOW_7); + rule__Attribute__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group__3__Impl(); + rule__Attribute__Group__2(); state._fsp--; @@ -9371,35 +13899,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group__3" + // $ANTLR end "rule__Attribute__Group__1" - // $ANTLR start "rule__PredicateDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:2930:1: rule__PredicateDefinition__Group__3__Impl : ( ( rule__PredicateDefinition__BodyAssignment_3 ) ) ; - public final void rule__PredicateDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__Attribute__Group__1__Impl" + // InternalSolverLanguageParser.g:4398:1: rule__Attribute__Group__1__Impl : ( ( rule__Attribute__TargetAssignment_1 ) ) ; + public final void rule__Attribute__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2934:1: ( ( ( rule__PredicateDefinition__BodyAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:2935:1: ( ( rule__PredicateDefinition__BodyAssignment_3 ) ) + // InternalSolverLanguageParser.g:4402:1: ( ( ( rule__Attribute__TargetAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:4403:1: ( ( rule__Attribute__TargetAssignment_1 ) ) { - // InternalSolverLanguageParser.g:2935:1: ( ( rule__PredicateDefinition__BodyAssignment_3 ) ) - // InternalSolverLanguageParser.g:2936:2: ( rule__PredicateDefinition__BodyAssignment_3 ) + // InternalSolverLanguageParser.g:4403:1: ( ( rule__Attribute__TargetAssignment_1 ) ) + // InternalSolverLanguageParser.g:4404:2: ( rule__Attribute__TargetAssignment_1 ) { - before(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3()); - // InternalSolverLanguageParser.g:2937:2: ( rule__PredicateDefinition__BodyAssignment_3 ) - // InternalSolverLanguageParser.g:2937:3: rule__PredicateDefinition__BodyAssignment_3 + before(grammarAccess.getAttributeAccess().getTargetAssignment_1()); + // InternalSolverLanguageParser.g:4405:2: ( rule__Attribute__TargetAssignment_1 ) + // InternalSolverLanguageParser.g:4405:3: rule__Attribute__TargetAssignment_1 { pushFollow(FOLLOW_2); - rule__PredicateDefinition__BodyAssignment_3(); + rule__Attribute__TargetAssignment_1(); state._fsp--; } - after(grammarAccess.getPredicateDefinitionAccess().getBodyAssignment_3()); + after(grammarAccess.getAttributeAccess().getTargetAssignment_1()); } @@ -9418,26 +13946,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group__3__Impl" + // $ANTLR end "rule__Attribute__Group__1__Impl" - // $ANTLR start "rule__PredicateDefinition__Group_0_0__0" - // InternalSolverLanguageParser.g:2946:1: rule__PredicateDefinition__Group_0_0__0 : rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1 ; - public final void rule__PredicateDefinition__Group_0_0__0() throws RecognitionException { + // $ANTLR start "rule__Attribute__Group__2" + // InternalSolverLanguageParser.g:4413:1: rule__Attribute__Group__2 : rule__Attribute__Group__2__Impl ; + public final void rule__Attribute__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2950:1: ( rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1 ) - // InternalSolverLanguageParser.g:2951:2: rule__PredicateDefinition__Group_0_0__0__Impl rule__PredicateDefinition__Group_0_0__1 + // InternalSolverLanguageParser.g:4417:1: ( rule__Attribute__Group__2__Impl ) + // InternalSolverLanguageParser.g:4418:2: rule__Attribute__Group__2__Impl { - pushFollow(FOLLOW_10); - rule__PredicateDefinition__Group_0_0__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group_0_0__1(); + rule__Attribute__Group__2__Impl(); state._fsp--; @@ -9456,35 +13979,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group_0_0__0" + // $ANTLR end "rule__Attribute__Group__2" - // $ANTLR start "rule__PredicateDefinition__Group_0_0__0__Impl" - // InternalSolverLanguageParser.g:2958:1: rule__PredicateDefinition__Group_0_0__0__Impl : ( ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) ) ; - public final void rule__PredicateDefinition__Group_0_0__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Attribute__Group__2__Impl" + // InternalSolverLanguageParser.g:4424:1: rule__Attribute__Group__2__Impl : ( RULE_FULL_STOP ) ; + public final void rule__Attribute__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2962:1: ( ( ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) ) ) - // InternalSolverLanguageParser.g:2963:1: ( ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) ) - { - // InternalSolverLanguageParser.g:2963:1: ( ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) ) - // InternalSolverLanguageParser.g:2964:2: ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) + // InternalSolverLanguageParser.g:4428:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4429:1: ( RULE_FULL_STOP ) { - before(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0()); - // InternalSolverLanguageParser.g:2965:2: ( rule__PredicateDefinition__FunctionalAssignment_0_0_0 ) - // InternalSolverLanguageParser.g:2965:3: rule__PredicateDefinition__FunctionalAssignment_0_0_0 + // InternalSolverLanguageParser.g:4429:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4430:2: RULE_FULL_STOP { - pushFollow(FOLLOW_2); - rule__PredicateDefinition__FunctionalAssignment_0_0_0(); - - state._fsp--; - - - } - - after(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_0_0()); + before(grammarAccess.getAttributeAccess().getFULL_STOPTerminalRuleCall_2()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getAttributeAccess().getFULL_STOPTerminalRuleCall_2()); } @@ -9503,21 +14016,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group_0_0__0__Impl" + // $ANTLR end "rule__Attribute__Group__2__Impl" - // $ANTLR start "rule__PredicateDefinition__Group_0_0__1" - // InternalSolverLanguageParser.g:2973:1: rule__PredicateDefinition__Group_0_0__1 : rule__PredicateDefinition__Group_0_0__1__Impl ; - public final void rule__PredicateDefinition__Group_0_0__1() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__0" + // InternalSolverLanguageParser.g:4440:1: rule__ExternPredicateDeclaration__Group__0 : rule__ExternPredicateDeclaration__Group__0__Impl rule__ExternPredicateDeclaration__Group__1 ; + public final void rule__ExternPredicateDeclaration__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2977:1: ( rule__PredicateDefinition__Group_0_0__1__Impl ) - // InternalSolverLanguageParser.g:2978:2: rule__PredicateDefinition__Group_0_0__1__Impl + // InternalSolverLanguageParser.g:4444:1: ( rule__ExternPredicateDeclaration__Group__0__Impl rule__ExternPredicateDeclaration__Group__1 ) + // InternalSolverLanguageParser.g:4445:2: rule__ExternPredicateDeclaration__Group__0__Impl rule__ExternPredicateDeclaration__Group__1 { + pushFollow(FOLLOW_20); + rule__ExternPredicateDeclaration__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group_0_0__1__Impl(); + rule__ExternPredicateDeclaration__Group__1(); state._fsp--; @@ -9536,46 +14054,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group_0_0__1" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__0" - // $ANTLR start "rule__PredicateDefinition__Group_0_0__1__Impl" - // InternalSolverLanguageParser.g:2984:1: rule__PredicateDefinition__Group_0_0__1__Impl : ( ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? ) ; - public final void rule__PredicateDefinition__Group_0_0__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__0__Impl" + // InternalSolverLanguageParser.g:4452:1: rule__ExternPredicateDeclaration__Group__0__Impl : ( Extern ) ; + public final void rule__ExternPredicateDeclaration__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:2988:1: ( ( ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? ) ) - // InternalSolverLanguageParser.g:2989:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? ) + // InternalSolverLanguageParser.g:4456:1: ( ( Extern ) ) + // InternalSolverLanguageParser.g:4457:1: ( Extern ) { - // InternalSolverLanguageParser.g:2989:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? ) - // InternalSolverLanguageParser.g:2990:2: ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? + // InternalSolverLanguageParser.g:4457:1: ( Extern ) + // InternalSolverLanguageParser.g:4458:2: Extern { - before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_1()); - // InternalSolverLanguageParser.g:2991:2: ( rule__PredicateDefinition__ErrorAssignment_0_0_1 )? - int alt27=2; - int LA27_0 = input.LA(1); - - if ( (LA27_0==Error) ) { - alt27=1; - } - switch (alt27) { - case 1 : - // InternalSolverLanguageParser.g:2991:3: rule__PredicateDefinition__ErrorAssignment_0_0_1 - { - pushFollow(FOLLOW_2); - rule__PredicateDefinition__ErrorAssignment_0_0_1(); - - state._fsp--; - - - } - break; - - } - - after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_0_1()); + before(grammarAccess.getExternPredicateDeclarationAccess().getExternKeyword_0()); + match(input,Extern,FOLLOW_2); + after(grammarAccess.getExternPredicateDeclarationAccess().getExternKeyword_0()); } @@ -9594,26 +14091,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group_0_0__1__Impl" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__0__Impl" - // $ANTLR start "rule__PredicateDefinition__Group_0_1__0" - // InternalSolverLanguageParser.g:3000:1: rule__PredicateDefinition__Group_0_1__0 : rule__PredicateDefinition__Group_0_1__0__Impl rule__PredicateDefinition__Group_0_1__1 ; - public final void rule__PredicateDefinition__Group_0_1__0() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__1" + // InternalSolverLanguageParser.g:4467:1: rule__ExternPredicateDeclaration__Group__1 : rule__ExternPredicateDeclaration__Group__1__Impl rule__ExternPredicateDeclaration__Group__2 ; + public final void rule__ExternPredicateDeclaration__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3004:1: ( rule__PredicateDefinition__Group_0_1__0__Impl rule__PredicateDefinition__Group_0_1__1 ) - // InternalSolverLanguageParser.g:3005:2: rule__PredicateDefinition__Group_0_1__0__Impl rule__PredicateDefinition__Group_0_1__1 + // InternalSolverLanguageParser.g:4471:1: ( rule__ExternPredicateDeclaration__Group__1__Impl rule__ExternPredicateDeclaration__Group__2 ) + // InternalSolverLanguageParser.g:4472:2: rule__ExternPredicateDeclaration__Group__1__Impl rule__ExternPredicateDeclaration__Group__2 { - pushFollow(FOLLOW_11); - rule__PredicateDefinition__Group_0_1__0__Impl(); + pushFollow(FOLLOW_6); + rule__ExternPredicateDeclaration__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group_0_1__1(); + rule__ExternPredicateDeclaration__Group__2(); state._fsp--; @@ -9632,35 +14129,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group_0_1__0" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__1" - // $ANTLR start "rule__PredicateDefinition__Group_0_1__0__Impl" - // InternalSolverLanguageParser.g:3012:1: rule__PredicateDefinition__Group_0_1__0__Impl : ( ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) ) ; - public final void rule__PredicateDefinition__Group_0_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__1__Impl" + // InternalSolverLanguageParser.g:4479:1: rule__ExternPredicateDeclaration__Group__1__Impl : ( ( rule__ExternPredicateDeclaration__UnorderedGroup_1 ) ) ; + public final void rule__ExternPredicateDeclaration__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3016:1: ( ( ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) ) ) - // InternalSolverLanguageParser.g:3017:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) ) + // InternalSolverLanguageParser.g:4483:1: ( ( ( rule__ExternPredicateDeclaration__UnorderedGroup_1 ) ) ) + // InternalSolverLanguageParser.g:4484:1: ( ( rule__ExternPredicateDeclaration__UnorderedGroup_1 ) ) { - // InternalSolverLanguageParser.g:3017:1: ( ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) ) - // InternalSolverLanguageParser.g:3018:2: ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) + // InternalSolverLanguageParser.g:4484:1: ( ( rule__ExternPredicateDeclaration__UnorderedGroup_1 ) ) + // InternalSolverLanguageParser.g:4485:2: ( rule__ExternPredicateDeclaration__UnorderedGroup_1 ) { - before(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_1_0()); - // InternalSolverLanguageParser.g:3019:2: ( rule__PredicateDefinition__ErrorAssignment_0_1_0 ) - // InternalSolverLanguageParser.g:3019:3: rule__PredicateDefinition__ErrorAssignment_0_1_0 + before(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + // InternalSolverLanguageParser.g:4486:2: ( rule__ExternPredicateDeclaration__UnorderedGroup_1 ) + // InternalSolverLanguageParser.g:4486:3: rule__ExternPredicateDeclaration__UnorderedGroup_1 { pushFollow(FOLLOW_2); - rule__PredicateDefinition__ErrorAssignment_0_1_0(); + rule__ExternPredicateDeclaration__UnorderedGroup_1(); state._fsp--; } - after(grammarAccess.getPredicateDefinitionAccess().getErrorAssignment_0_1_0()); + after(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); } @@ -9679,21 +14176,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group_0_1__0__Impl" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__1__Impl" - // $ANTLR start "rule__PredicateDefinition__Group_0_1__1" - // InternalSolverLanguageParser.g:3027:1: rule__PredicateDefinition__Group_0_1__1 : rule__PredicateDefinition__Group_0_1__1__Impl ; - public final void rule__PredicateDefinition__Group_0_1__1() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__2" + // InternalSolverLanguageParser.g:4494:1: rule__ExternPredicateDeclaration__Group__2 : rule__ExternPredicateDeclaration__Group__2__Impl rule__ExternPredicateDeclaration__Group__3 ; + public final void rule__ExternPredicateDeclaration__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3031:1: ( rule__PredicateDefinition__Group_0_1__1__Impl ) - // InternalSolverLanguageParser.g:3032:2: rule__PredicateDefinition__Group_0_1__1__Impl + // InternalSolverLanguageParser.g:4498:1: ( rule__ExternPredicateDeclaration__Group__2__Impl rule__ExternPredicateDeclaration__Group__3 ) + // InternalSolverLanguageParser.g:4499:2: rule__ExternPredicateDeclaration__Group__2__Impl rule__ExternPredicateDeclaration__Group__3 { + pushFollow(FOLLOW_16); + rule__ExternPredicateDeclaration__Group__2__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__PredicateDefinition__Group_0_1__1__Impl(); + rule__ExternPredicateDeclaration__Group__3(); state._fsp--; @@ -9712,46 +14214,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group_0_1__1" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__2" - // $ANTLR start "rule__PredicateDefinition__Group_0_1__1__Impl" - // InternalSolverLanguageParser.g:3038:1: rule__PredicateDefinition__Group_0_1__1__Impl : ( ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? ) ; - public final void rule__PredicateDefinition__Group_0_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__2__Impl" + // InternalSolverLanguageParser.g:4506:1: rule__ExternPredicateDeclaration__Group__2__Impl : ( ( rule__ExternPredicateDeclaration__NameAssignment_2 ) ) ; + public final void rule__ExternPredicateDeclaration__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3042:1: ( ( ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? ) ) - // InternalSolverLanguageParser.g:3043:1: ( ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? ) + // InternalSolverLanguageParser.g:4510:1: ( ( ( rule__ExternPredicateDeclaration__NameAssignment_2 ) ) ) + // InternalSolverLanguageParser.g:4511:1: ( ( rule__ExternPredicateDeclaration__NameAssignment_2 ) ) { - // InternalSolverLanguageParser.g:3043:1: ( ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? ) - // InternalSolverLanguageParser.g:3044:2: ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? + // InternalSolverLanguageParser.g:4511:1: ( ( rule__ExternPredicateDeclaration__NameAssignment_2 ) ) + // InternalSolverLanguageParser.g:4512:2: ( rule__ExternPredicateDeclaration__NameAssignment_2 ) { - before(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1()); - // InternalSolverLanguageParser.g:3045:2: ( rule__PredicateDefinition__FunctionalAssignment_0_1_1 )? - int alt28=2; - int LA28_0 = input.LA(1); - - if ( (LA28_0==Functional) ) { - alt28=1; - } - switch (alt28) { - case 1 : - // InternalSolverLanguageParser.g:3045:3: rule__PredicateDefinition__FunctionalAssignment_0_1_1 - { - pushFollow(FOLLOW_2); - rule__PredicateDefinition__FunctionalAssignment_0_1_1(); - - state._fsp--; + before(grammarAccess.getExternPredicateDeclarationAccess().getNameAssignment_2()); + // InternalSolverLanguageParser.g:4513:2: ( rule__ExternPredicateDeclaration__NameAssignment_2 ) + // InternalSolverLanguageParser.g:4513:3: rule__ExternPredicateDeclaration__NameAssignment_2 + { + pushFollow(FOLLOW_2); + rule__ExternPredicateDeclaration__NameAssignment_2(); + state._fsp--; - } - break; } - after(grammarAccess.getPredicateDefinitionAccess().getFunctionalAssignment_0_1_1()); + after(grammarAccess.getExternPredicateDeclarationAccess().getNameAssignment_2()); } @@ -9770,26 +14261,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__PredicateDefinition__Group_0_1__1__Impl" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__2__Impl" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__Group__0" - // InternalSolverLanguageParser.g:3054:1: rule__UnnamedErrorPrediateDefinition__Group__0 : rule__UnnamedErrorPrediateDefinition__Group__0__Impl rule__UnnamedErrorPrediateDefinition__Group__1 ; - public final void rule__UnnamedErrorPrediateDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__3" + // InternalSolverLanguageParser.g:4521:1: rule__ExternPredicateDeclaration__Group__3 : rule__ExternPredicateDeclaration__Group__3__Impl rule__ExternPredicateDeclaration__Group__4 ; + public final void rule__ExternPredicateDeclaration__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3058:1: ( rule__UnnamedErrorPrediateDefinition__Group__0__Impl rule__UnnamedErrorPrediateDefinition__Group__1 ) - // InternalSolverLanguageParser.g:3059:2: rule__UnnamedErrorPrediateDefinition__Group__0__Impl rule__UnnamedErrorPrediateDefinition__Group__1 + // InternalSolverLanguageParser.g:4525:1: ( rule__ExternPredicateDeclaration__Group__3__Impl rule__ExternPredicateDeclaration__Group__4 ) + // InternalSolverLanguageParser.g:4526:2: rule__ExternPredicateDeclaration__Group__3__Impl rule__ExternPredicateDeclaration__Group__4 { - pushFollow(FOLLOW_12); - rule__UnnamedErrorPrediateDefinition__Group__0__Impl(); + pushFollow(FOLLOW_7); + rule__ExternPredicateDeclaration__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__UnnamedErrorPrediateDefinition__Group__1(); + rule__ExternPredicateDeclaration__Group__4(); state._fsp--; @@ -9808,25 +14299,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__Group__0" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__3" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:3066:1: rule__UnnamedErrorPrediateDefinition__Group__0__Impl : ( Error ) ; - public final void rule__UnnamedErrorPrediateDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__3__Impl" + // InternalSolverLanguageParser.g:4533:1: rule__ExternPredicateDeclaration__Group__3__Impl : ( ( rule__ExternPredicateDeclaration__ArgumentListAssignment_3 ) ) ; + public final void rule__ExternPredicateDeclaration__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3070:1: ( ( Error ) ) - // InternalSolverLanguageParser.g:3071:1: ( Error ) + // InternalSolverLanguageParser.g:4537:1: ( ( ( rule__ExternPredicateDeclaration__ArgumentListAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:4538:1: ( ( rule__ExternPredicateDeclaration__ArgumentListAssignment_3 ) ) { - // InternalSolverLanguageParser.g:3071:1: ( Error ) - // InternalSolverLanguageParser.g:3072:2: Error + // InternalSolverLanguageParser.g:4538:1: ( ( rule__ExternPredicateDeclaration__ArgumentListAssignment_3 ) ) + // InternalSolverLanguageParser.g:4539:2: ( rule__ExternPredicateDeclaration__ArgumentListAssignment_3 ) { - before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getErrorKeyword_0()); - match(input,Error,FOLLOW_2); - after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getErrorKeyword_0()); + before(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListAssignment_3()); + // InternalSolverLanguageParser.g:4540:2: ( rule__ExternPredicateDeclaration__ArgumentListAssignment_3 ) + // InternalSolverLanguageParser.g:4540:3: rule__ExternPredicateDeclaration__ArgumentListAssignment_3 + { + pushFollow(FOLLOW_2); + rule__ExternPredicateDeclaration__ArgumentListAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListAssignment_3()); } @@ -9845,26 +14346,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__Group__0__Impl" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__3__Impl" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__Group__1" - // InternalSolverLanguageParser.g:3081:1: rule__UnnamedErrorPrediateDefinition__Group__1 : rule__UnnamedErrorPrediateDefinition__Group__1__Impl rule__UnnamedErrorPrediateDefinition__Group__2 ; - public final void rule__UnnamedErrorPrediateDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__4" + // InternalSolverLanguageParser.g:4548:1: rule__ExternPredicateDeclaration__Group__4 : rule__ExternPredicateDeclaration__Group__4__Impl ; + public final void rule__ExternPredicateDeclaration__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3085:1: ( rule__UnnamedErrorPrediateDefinition__Group__1__Impl rule__UnnamedErrorPrediateDefinition__Group__2 ) - // InternalSolverLanguageParser.g:3086:2: rule__UnnamedErrorPrediateDefinition__Group__1__Impl rule__UnnamedErrorPrediateDefinition__Group__2 + // InternalSolverLanguageParser.g:4552:1: ( rule__ExternPredicateDeclaration__Group__4__Impl ) + // InternalSolverLanguageParser.g:4553:2: rule__ExternPredicateDeclaration__Group__4__Impl { - pushFollow(FOLLOW_8); - rule__UnnamedErrorPrediateDefinition__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__UnnamedErrorPrediateDefinition__Group__2(); + rule__ExternPredicateDeclaration__Group__4__Impl(); state._fsp--; @@ -9883,35 +14379,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__Group__1" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__4" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:3093:1: rule__UnnamedErrorPrediateDefinition__Group__1__Impl : ( ( rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 ) ) ; - public final void rule__UnnamedErrorPrediateDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__Group__4__Impl" + // InternalSolverLanguageParser.g:4559:1: rule__ExternPredicateDeclaration__Group__4__Impl : ( RULE_FULL_STOP ) ; + public final void rule__ExternPredicateDeclaration__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3097:1: ( ( ( rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:3098:1: ( ( rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 ) ) - { - // InternalSolverLanguageParser.g:3098:1: ( ( rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 ) ) - // InternalSolverLanguageParser.g:3099:2: ( rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 ) + // InternalSolverLanguageParser.g:4563:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4564:1: ( RULE_FULL_STOP ) { - before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListAssignment_1()); - // InternalSolverLanguageParser.g:3100:2: ( rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 ) - // InternalSolverLanguageParser.g:3100:3: rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 + // InternalSolverLanguageParser.g:4564:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4565:2: RULE_FULL_STOP { - pushFollow(FOLLOW_2); - rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1(); - - state._fsp--; - - - } - - after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListAssignment_1()); + before(grammarAccess.getExternPredicateDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getExternPredicateDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); } @@ -9930,26 +14416,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__Group__1__Impl" + // $ANTLR end "rule__ExternPredicateDeclaration__Group__4__Impl" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__Group__2" - // InternalSolverLanguageParser.g:3108:1: rule__UnnamedErrorPrediateDefinition__Group__2 : rule__UnnamedErrorPrediateDefinition__Group__2__Impl rule__UnnamedErrorPrediateDefinition__Group__3 ; - public final void rule__UnnamedErrorPrediateDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__0" + // InternalSolverLanguageParser.g:4575:1: rule__ExternFunctionDeclaration__Group__0 : rule__ExternFunctionDeclaration__Group__0__Impl rule__ExternFunctionDeclaration__Group__1 ; + public final void rule__ExternFunctionDeclaration__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3112:1: ( rule__UnnamedErrorPrediateDefinition__Group__2__Impl rule__UnnamedErrorPrediateDefinition__Group__3 ) - // InternalSolverLanguageParser.g:3113:2: rule__UnnamedErrorPrediateDefinition__Group__2__Impl rule__UnnamedErrorPrediateDefinition__Group__3 + // InternalSolverLanguageParser.g:4579:1: ( rule__ExternFunctionDeclaration__Group__0__Impl rule__ExternFunctionDeclaration__Group__1 ) + // InternalSolverLanguageParser.g:4580:2: rule__ExternFunctionDeclaration__Group__0__Impl rule__ExternFunctionDeclaration__Group__1 { - pushFollow(FOLLOW_7); - rule__UnnamedErrorPrediateDefinition__Group__2__Impl(); + pushFollow(FOLLOW_6); + rule__ExternFunctionDeclaration__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__UnnamedErrorPrediateDefinition__Group__3(); + rule__ExternFunctionDeclaration__Group__1(); state._fsp--; @@ -9968,25 +14454,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__Group__2" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__0" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:3120:1: rule__UnnamedErrorPrediateDefinition__Group__2__Impl : ( ColonHyphenMinus ) ; - public final void rule__UnnamedErrorPrediateDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__0__Impl" + // InternalSolverLanguageParser.g:4587:1: rule__ExternFunctionDeclaration__Group__0__Impl : ( Extern ) ; + public final void rule__ExternFunctionDeclaration__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3124:1: ( ( ColonHyphenMinus ) ) - // InternalSolverLanguageParser.g:3125:1: ( ColonHyphenMinus ) + // InternalSolverLanguageParser.g:4591:1: ( ( Extern ) ) + // InternalSolverLanguageParser.g:4592:1: ( Extern ) { - // InternalSolverLanguageParser.g:3125:1: ( ColonHyphenMinus ) - // InternalSolverLanguageParser.g:3126:2: ColonHyphenMinus + // InternalSolverLanguageParser.g:4592:1: ( Extern ) + // InternalSolverLanguageParser.g:4593:2: Extern { - before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getColonHyphenMinusKeyword_2()); - match(input,ColonHyphenMinus,FOLLOW_2); - after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getColonHyphenMinusKeyword_2()); + before(grammarAccess.getExternFunctionDeclarationAccess().getExternKeyword_0()); + match(input,Extern,FOLLOW_2); + after(grammarAccess.getExternFunctionDeclarationAccess().getExternKeyword_0()); } @@ -10005,21 +14491,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__Group__2__Impl" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__0__Impl" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__Group__3" - // InternalSolverLanguageParser.g:3135:1: rule__UnnamedErrorPrediateDefinition__Group__3 : rule__UnnamedErrorPrediateDefinition__Group__3__Impl ; - public final void rule__UnnamedErrorPrediateDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__1" + // InternalSolverLanguageParser.g:4602:1: rule__ExternFunctionDeclaration__Group__1 : rule__ExternFunctionDeclaration__Group__1__Impl rule__ExternFunctionDeclaration__Group__2 ; + public final void rule__ExternFunctionDeclaration__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3139:1: ( rule__UnnamedErrorPrediateDefinition__Group__3__Impl ) - // InternalSolverLanguageParser.g:3140:2: rule__UnnamedErrorPrediateDefinition__Group__3__Impl + // InternalSolverLanguageParser.g:4606:1: ( rule__ExternFunctionDeclaration__Group__1__Impl rule__ExternFunctionDeclaration__Group__2 ) + // InternalSolverLanguageParser.g:4607:2: rule__ExternFunctionDeclaration__Group__1__Impl rule__ExternFunctionDeclaration__Group__2 { + pushFollow(FOLLOW_6); + rule__ExternFunctionDeclaration__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__UnnamedErrorPrediateDefinition__Group__3__Impl(); + rule__ExternFunctionDeclaration__Group__2(); state._fsp--; @@ -10038,35 +14529,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__Group__3" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__1" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:3146:1: rule__UnnamedErrorPrediateDefinition__Group__3__Impl : ( ( rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 ) ) ; - public final void rule__UnnamedErrorPrediateDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__1__Impl" + // InternalSolverLanguageParser.g:4614:1: rule__ExternFunctionDeclaration__Group__1__Impl : ( ( rule__ExternFunctionDeclaration__ResultTypeAssignment_1 ) ) ; + public final void rule__ExternFunctionDeclaration__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3150:1: ( ( ( rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:3151:1: ( ( rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 ) ) + // InternalSolverLanguageParser.g:4618:1: ( ( ( rule__ExternFunctionDeclaration__ResultTypeAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:4619:1: ( ( rule__ExternFunctionDeclaration__ResultTypeAssignment_1 ) ) { - // InternalSolverLanguageParser.g:3151:1: ( ( rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 ) ) - // InternalSolverLanguageParser.g:3152:2: ( rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 ) + // InternalSolverLanguageParser.g:4619:1: ( ( rule__ExternFunctionDeclaration__ResultTypeAssignment_1 ) ) + // InternalSolverLanguageParser.g:4620:2: ( rule__ExternFunctionDeclaration__ResultTypeAssignment_1 ) { - before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyAssignment_3()); - // InternalSolverLanguageParser.g:3153:2: ( rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 ) - // InternalSolverLanguageParser.g:3153:3: rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 + before(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeAssignment_1()); + // InternalSolverLanguageParser.g:4621:2: ( rule__ExternFunctionDeclaration__ResultTypeAssignment_1 ) + // InternalSolverLanguageParser.g:4621:3: rule__ExternFunctionDeclaration__ResultTypeAssignment_1 { pushFollow(FOLLOW_2); - rule__UnnamedErrorPrediateDefinition__BodyAssignment_3(); + rule__ExternFunctionDeclaration__ResultTypeAssignment_1(); state._fsp--; } - after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyAssignment_3()); + after(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeAssignment_1()); } @@ -10085,26 +14576,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__Group__3__Impl" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__1__Impl" - // $ANTLR start "rule__DefaultDefinition__Group__0" - // InternalSolverLanguageParser.g:3162:1: rule__DefaultDefinition__Group__0 : rule__DefaultDefinition__Group__0__Impl rule__DefaultDefinition__Group__1 ; - public final void rule__DefaultDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__2" + // InternalSolverLanguageParser.g:4629:1: rule__ExternFunctionDeclaration__Group__2 : rule__ExternFunctionDeclaration__Group__2__Impl rule__ExternFunctionDeclaration__Group__3 ; + public final void rule__ExternFunctionDeclaration__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3166:1: ( rule__DefaultDefinition__Group__0__Impl rule__DefaultDefinition__Group__1 ) - // InternalSolverLanguageParser.g:3167:2: rule__DefaultDefinition__Group__0__Impl rule__DefaultDefinition__Group__1 + // InternalSolverLanguageParser.g:4633:1: ( rule__ExternFunctionDeclaration__Group__2__Impl rule__ExternFunctionDeclaration__Group__3 ) + // InternalSolverLanguageParser.g:4634:2: rule__ExternFunctionDeclaration__Group__2__Impl rule__ExternFunctionDeclaration__Group__3 { - pushFollow(FOLLOW_9); - rule__DefaultDefinition__Group__0__Impl(); + pushFollow(FOLLOW_16); + rule__ExternFunctionDeclaration__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__DefaultDefinition__Group__1(); + rule__ExternFunctionDeclaration__Group__3(); state._fsp--; @@ -10123,25 +14614,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__Group__0" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__2" - // $ANTLR start "rule__DefaultDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:3174:1: rule__DefaultDefinition__Group__0__Impl : ( Default ) ; - public final void rule__DefaultDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__2__Impl" + // InternalSolverLanguageParser.g:4641:1: rule__ExternFunctionDeclaration__Group__2__Impl : ( ( rule__ExternFunctionDeclaration__NameAssignment_2 ) ) ; + public final void rule__ExternFunctionDeclaration__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3178:1: ( ( Default ) ) - // InternalSolverLanguageParser.g:3179:1: ( Default ) + // InternalSolverLanguageParser.g:4645:1: ( ( ( rule__ExternFunctionDeclaration__NameAssignment_2 ) ) ) + // InternalSolverLanguageParser.g:4646:1: ( ( rule__ExternFunctionDeclaration__NameAssignment_2 ) ) { - // InternalSolverLanguageParser.g:3179:1: ( Default ) - // InternalSolverLanguageParser.g:3180:2: Default + // InternalSolverLanguageParser.g:4646:1: ( ( rule__ExternFunctionDeclaration__NameAssignment_2 ) ) + // InternalSolverLanguageParser.g:4647:2: ( rule__ExternFunctionDeclaration__NameAssignment_2 ) { - before(grammarAccess.getDefaultDefinitionAccess().getDefaultKeyword_0()); - match(input,Default,FOLLOW_2); - after(grammarAccess.getDefaultDefinitionAccess().getDefaultKeyword_0()); + before(grammarAccess.getExternFunctionDeclarationAccess().getNameAssignment_2()); + // InternalSolverLanguageParser.g:4648:2: ( rule__ExternFunctionDeclaration__NameAssignment_2 ) + // InternalSolverLanguageParser.g:4648:3: rule__ExternFunctionDeclaration__NameAssignment_2 + { + pushFollow(FOLLOW_2); + rule__ExternFunctionDeclaration__NameAssignment_2(); + + state._fsp--; + + + } + + after(grammarAccess.getExternFunctionDeclarationAccess().getNameAssignment_2()); } @@ -10160,26 +14661,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__Group__0__Impl" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__2__Impl" - // $ANTLR start "rule__DefaultDefinition__Group__1" - // InternalSolverLanguageParser.g:3189:1: rule__DefaultDefinition__Group__1 : rule__DefaultDefinition__Group__1__Impl rule__DefaultDefinition__Group__2 ; - public final void rule__DefaultDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__3" + // InternalSolverLanguageParser.g:4656:1: rule__ExternFunctionDeclaration__Group__3 : rule__ExternFunctionDeclaration__Group__3__Impl rule__ExternFunctionDeclaration__Group__4 ; + public final void rule__ExternFunctionDeclaration__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3193:1: ( rule__DefaultDefinition__Group__1__Impl rule__DefaultDefinition__Group__2 ) - // InternalSolverLanguageParser.g:3194:2: rule__DefaultDefinition__Group__1__Impl rule__DefaultDefinition__Group__2 + // InternalSolverLanguageParser.g:4660:1: ( rule__ExternFunctionDeclaration__Group__3__Impl rule__ExternFunctionDeclaration__Group__4 ) + // InternalSolverLanguageParser.g:4661:2: rule__ExternFunctionDeclaration__Group__3__Impl rule__ExternFunctionDeclaration__Group__4 { - pushFollow(FOLLOW_6); - rule__DefaultDefinition__Group__1__Impl(); + pushFollow(FOLLOW_7); + rule__ExternFunctionDeclaration__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__DefaultDefinition__Group__2(); + rule__ExternFunctionDeclaration__Group__4(); state._fsp--; @@ -10198,35 +14699,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__Group__1" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__3" - // $ANTLR start "rule__DefaultDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:3201:1: rule__DefaultDefinition__Group__1__Impl : ( ( rule__DefaultDefinition__HeadAssignment_1 ) ) ; - public final void rule__DefaultDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__3__Impl" + // InternalSolverLanguageParser.g:4668:1: rule__ExternFunctionDeclaration__Group__3__Impl : ( ( rule__ExternFunctionDeclaration__ArgumentListAssignment_3 ) ) ; + public final void rule__ExternFunctionDeclaration__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3205:1: ( ( ( rule__DefaultDefinition__HeadAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:3206:1: ( ( rule__DefaultDefinition__HeadAssignment_1 ) ) + // InternalSolverLanguageParser.g:4672:1: ( ( ( rule__ExternFunctionDeclaration__ArgumentListAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:4673:1: ( ( rule__ExternFunctionDeclaration__ArgumentListAssignment_3 ) ) { - // InternalSolverLanguageParser.g:3206:1: ( ( rule__DefaultDefinition__HeadAssignment_1 ) ) - // InternalSolverLanguageParser.g:3207:2: ( rule__DefaultDefinition__HeadAssignment_1 ) + // InternalSolverLanguageParser.g:4673:1: ( ( rule__ExternFunctionDeclaration__ArgumentListAssignment_3 ) ) + // InternalSolverLanguageParser.g:4674:2: ( rule__ExternFunctionDeclaration__ArgumentListAssignment_3 ) { - before(grammarAccess.getDefaultDefinitionAccess().getHeadAssignment_1()); - // InternalSolverLanguageParser.g:3208:2: ( rule__DefaultDefinition__HeadAssignment_1 ) - // InternalSolverLanguageParser.g:3208:3: rule__DefaultDefinition__HeadAssignment_1 + before(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListAssignment_3()); + // InternalSolverLanguageParser.g:4675:2: ( rule__ExternFunctionDeclaration__ArgumentListAssignment_3 ) + // InternalSolverLanguageParser.g:4675:3: rule__ExternFunctionDeclaration__ArgumentListAssignment_3 { pushFollow(FOLLOW_2); - rule__DefaultDefinition__HeadAssignment_1(); + rule__ExternFunctionDeclaration__ArgumentListAssignment_3(); state._fsp--; } - after(grammarAccess.getDefaultDefinitionAccess().getHeadAssignment_1()); + after(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListAssignment_3()); } @@ -10245,26 +14746,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__Group__1__Impl" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__3__Impl" - // $ANTLR start "rule__DefaultDefinition__Group__2" - // InternalSolverLanguageParser.g:3216:1: rule__DefaultDefinition__Group__2 : rule__DefaultDefinition__Group__2__Impl rule__DefaultDefinition__Group__3 ; - public final void rule__DefaultDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__4" + // InternalSolverLanguageParser.g:4683:1: rule__ExternFunctionDeclaration__Group__4 : rule__ExternFunctionDeclaration__Group__4__Impl ; + public final void rule__ExternFunctionDeclaration__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3220:1: ( rule__DefaultDefinition__Group__2__Impl rule__DefaultDefinition__Group__3 ) - // InternalSolverLanguageParser.g:3221:2: rule__DefaultDefinition__Group__2__Impl rule__DefaultDefinition__Group__3 + // InternalSolverLanguageParser.g:4687:1: ( rule__ExternFunctionDeclaration__Group__4__Impl ) + // InternalSolverLanguageParser.g:4688:2: rule__ExternFunctionDeclaration__Group__4__Impl { - pushFollow(FOLLOW_7); - rule__DefaultDefinition__Group__2__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__DefaultDefinition__Group__3(); + rule__ExternFunctionDeclaration__Group__4__Impl(); state._fsp--; @@ -10283,25 +14779,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__Group__2" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__4" - // $ANTLR start "rule__DefaultDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:3228:1: rule__DefaultDefinition__Group__2__Impl : ( Colon ) ; - public final void rule__DefaultDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__Group__4__Impl" + // InternalSolverLanguageParser.g:4694:1: rule__ExternFunctionDeclaration__Group__4__Impl : ( RULE_FULL_STOP ) ; + public final void rule__ExternFunctionDeclaration__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3232:1: ( ( Colon ) ) - // InternalSolverLanguageParser.g:3233:1: ( Colon ) + // InternalSolverLanguageParser.g:4698:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4699:1: ( RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:3233:1: ( Colon ) - // InternalSolverLanguageParser.g:3234:2: Colon + // InternalSolverLanguageParser.g:4699:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4700:2: RULE_FULL_STOP { - before(grammarAccess.getDefaultDefinitionAccess().getColonKeyword_2()); - match(input,Colon,FOLLOW_2); - after(grammarAccess.getDefaultDefinitionAccess().getColonKeyword_2()); + before(grammarAccess.getExternFunctionDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getExternFunctionDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); } @@ -10320,21 +14816,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__Group__2__Impl" + // $ANTLR end "rule__ExternFunctionDeclaration__Group__4__Impl" - // $ANTLR start "rule__DefaultDefinition__Group__3" - // InternalSolverLanguageParser.g:3243:1: rule__DefaultDefinition__Group__3 : rule__DefaultDefinition__Group__3__Impl ; - public final void rule__DefaultDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__0" + // InternalSolverLanguageParser.g:4710:1: rule__ExternAggregationOperatorDeclaration__Group__0 : rule__ExternAggregationOperatorDeclaration__Group__0__Impl rule__ExternAggregationOperatorDeclaration__Group__1 ; + public final void rule__ExternAggregationOperatorDeclaration__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3247:1: ( rule__DefaultDefinition__Group__3__Impl ) - // InternalSolverLanguageParser.g:3248:2: rule__DefaultDefinition__Group__3__Impl + // InternalSolverLanguageParser.g:4714:1: ( rule__ExternAggregationOperatorDeclaration__Group__0__Impl rule__ExternAggregationOperatorDeclaration__Group__1 ) + // InternalSolverLanguageParser.g:4715:2: rule__ExternAggregationOperatorDeclaration__Group__0__Impl rule__ExternAggregationOperatorDeclaration__Group__1 { + pushFollow(FOLLOW_6); + rule__ExternAggregationOperatorDeclaration__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__DefaultDefinition__Group__3__Impl(); + rule__ExternAggregationOperatorDeclaration__Group__1(); state._fsp--; @@ -10353,35 +14854,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__Group__3" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__0" - // $ANTLR start "rule__DefaultDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:3254:1: rule__DefaultDefinition__Group__3__Impl : ( ( rule__DefaultDefinition__RangeAssignment_3 ) ) ; - public final void rule__DefaultDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__0__Impl" + // InternalSolverLanguageParser.g:4722:1: rule__ExternAggregationOperatorDeclaration__Group__0__Impl : ( Extern ) ; + public final void rule__ExternAggregationOperatorDeclaration__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3258:1: ( ( ( rule__DefaultDefinition__RangeAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:3259:1: ( ( rule__DefaultDefinition__RangeAssignment_3 ) ) - { - // InternalSolverLanguageParser.g:3259:1: ( ( rule__DefaultDefinition__RangeAssignment_3 ) ) - // InternalSolverLanguageParser.g:3260:2: ( rule__DefaultDefinition__RangeAssignment_3 ) + // InternalSolverLanguageParser.g:4726:1: ( ( Extern ) ) + // InternalSolverLanguageParser.g:4727:1: ( Extern ) { - before(grammarAccess.getDefaultDefinitionAccess().getRangeAssignment_3()); - // InternalSolverLanguageParser.g:3261:2: ( rule__DefaultDefinition__RangeAssignment_3 ) - // InternalSolverLanguageParser.g:3261:3: rule__DefaultDefinition__RangeAssignment_3 + // InternalSolverLanguageParser.g:4727:1: ( Extern ) + // InternalSolverLanguageParser.g:4728:2: Extern { - pushFollow(FOLLOW_2); - rule__DefaultDefinition__RangeAssignment_3(); - - state._fsp--; - - - } - - after(grammarAccess.getDefaultDefinitionAccess().getRangeAssignment_3()); + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getExternKeyword_0()); + match(input,Extern,FOLLOW_2); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getExternKeyword_0()); } @@ -10400,26 +14891,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__Group__3__Impl" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__0__Impl" - // $ANTLR start "rule__MetricDefinition__Group__0" - // InternalSolverLanguageParser.g:3270:1: rule__MetricDefinition__Group__0 : rule__MetricDefinition__Group__0__Impl rule__MetricDefinition__Group__1 ; - public final void rule__MetricDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__1" + // InternalSolverLanguageParser.g:4737:1: rule__ExternAggregationOperatorDeclaration__Group__1 : rule__ExternAggregationOperatorDeclaration__Group__1__Impl rule__ExternAggregationOperatorDeclaration__Group__2 ; + public final void rule__ExternAggregationOperatorDeclaration__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3274:1: ( rule__MetricDefinition__Group__0__Impl rule__MetricDefinition__Group__1 ) - // InternalSolverLanguageParser.g:3275:2: rule__MetricDefinition__Group__0__Impl rule__MetricDefinition__Group__1 + // InternalSolverLanguageParser.g:4741:1: ( rule__ExternAggregationOperatorDeclaration__Group__1__Impl rule__ExternAggregationOperatorDeclaration__Group__2 ) + // InternalSolverLanguageParser.g:4742:2: rule__ExternAggregationOperatorDeclaration__Group__1__Impl rule__ExternAggregationOperatorDeclaration__Group__2 { - pushFollow(FOLLOW_9); - rule__MetricDefinition__Group__0__Impl(); + pushFollow(FOLLOW_6); + rule__ExternAggregationOperatorDeclaration__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MetricDefinition__Group__1(); + rule__ExternAggregationOperatorDeclaration__Group__2(); state._fsp--; @@ -10438,35 +14929,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__Group__0" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__1" - // $ANTLR start "rule__MetricDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:3282:1: rule__MetricDefinition__Group__0__Impl : ( ( rule__MetricDefinition__TypeAssignment_0 ) ) ; - public final void rule__MetricDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__1__Impl" + // InternalSolverLanguageParser.g:4749:1: rule__ExternAggregationOperatorDeclaration__Group__1__Impl : ( ( rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 ) ) ; + public final void rule__ExternAggregationOperatorDeclaration__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3286:1: ( ( ( rule__MetricDefinition__TypeAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:3287:1: ( ( rule__MetricDefinition__TypeAssignment_0 ) ) + // InternalSolverLanguageParser.g:4753:1: ( ( ( rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:4754:1: ( ( rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 ) ) { - // InternalSolverLanguageParser.g:3287:1: ( ( rule__MetricDefinition__TypeAssignment_0 ) ) - // InternalSolverLanguageParser.g:3288:2: ( rule__MetricDefinition__TypeAssignment_0 ) + // InternalSolverLanguageParser.g:4754:1: ( ( rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 ) ) + // InternalSolverLanguageParser.g:4755:2: ( rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 ) { - before(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0()); - // InternalSolverLanguageParser.g:3289:2: ( rule__MetricDefinition__TypeAssignment_0 ) - // InternalSolverLanguageParser.g:3289:3: rule__MetricDefinition__TypeAssignment_0 + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeAssignment_1()); + // InternalSolverLanguageParser.g:4756:2: ( rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 ) + // InternalSolverLanguageParser.g:4756:3: rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 { pushFollow(FOLLOW_2); - rule__MetricDefinition__TypeAssignment_0(); + rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1(); state._fsp--; } - after(grammarAccess.getMetricDefinitionAccess().getTypeAssignment_0()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeAssignment_1()); } @@ -10485,26 +14976,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__Group__0__Impl" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__1__Impl" - // $ANTLR start "rule__MetricDefinition__Group__1" - // InternalSolverLanguageParser.g:3297:1: rule__MetricDefinition__Group__1 : rule__MetricDefinition__Group__1__Impl rule__MetricDefinition__Group__2 ; - public final void rule__MetricDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__2" + // InternalSolverLanguageParser.g:4764:1: rule__ExternAggregationOperatorDeclaration__Group__2 : rule__ExternAggregationOperatorDeclaration__Group__2__Impl rule__ExternAggregationOperatorDeclaration__Group__3 ; + public final void rule__ExternAggregationOperatorDeclaration__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3301:1: ( rule__MetricDefinition__Group__1__Impl rule__MetricDefinition__Group__2 ) - // InternalSolverLanguageParser.g:3302:2: rule__MetricDefinition__Group__1__Impl rule__MetricDefinition__Group__2 + // InternalSolverLanguageParser.g:4768:1: ( rule__ExternAggregationOperatorDeclaration__Group__2__Impl rule__ExternAggregationOperatorDeclaration__Group__3 ) + // InternalSolverLanguageParser.g:4769:2: rule__ExternAggregationOperatorDeclaration__Group__2__Impl rule__ExternAggregationOperatorDeclaration__Group__3 { - pushFollow(FOLLOW_13); - rule__MetricDefinition__Group__1__Impl(); + pushFollow(FOLLOW_21); + rule__ExternAggregationOperatorDeclaration__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MetricDefinition__Group__2(); + rule__ExternAggregationOperatorDeclaration__Group__3(); state._fsp--; @@ -10523,35 +15014,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__Group__1" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__2" - // $ANTLR start "rule__MetricDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:3309:1: rule__MetricDefinition__Group__1__Impl : ( ( rule__MetricDefinition__HeadAssignment_1 ) ) ; - public final void rule__MetricDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__2__Impl" + // InternalSolverLanguageParser.g:4776:1: rule__ExternAggregationOperatorDeclaration__Group__2__Impl : ( ( rule__ExternAggregationOperatorDeclaration__NameAssignment_2 ) ) ; + public final void rule__ExternAggregationOperatorDeclaration__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3313:1: ( ( ( rule__MetricDefinition__HeadAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:3314:1: ( ( rule__MetricDefinition__HeadAssignment_1 ) ) + // InternalSolverLanguageParser.g:4780:1: ( ( ( rule__ExternAggregationOperatorDeclaration__NameAssignment_2 ) ) ) + // InternalSolverLanguageParser.g:4781:1: ( ( rule__ExternAggregationOperatorDeclaration__NameAssignment_2 ) ) { - // InternalSolverLanguageParser.g:3314:1: ( ( rule__MetricDefinition__HeadAssignment_1 ) ) - // InternalSolverLanguageParser.g:3315:2: ( rule__MetricDefinition__HeadAssignment_1 ) + // InternalSolverLanguageParser.g:4781:1: ( ( rule__ExternAggregationOperatorDeclaration__NameAssignment_2 ) ) + // InternalSolverLanguageParser.g:4782:2: ( rule__ExternAggregationOperatorDeclaration__NameAssignment_2 ) { - before(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1()); - // InternalSolverLanguageParser.g:3316:2: ( rule__MetricDefinition__HeadAssignment_1 ) - // InternalSolverLanguageParser.g:3316:3: rule__MetricDefinition__HeadAssignment_1 + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameAssignment_2()); + // InternalSolverLanguageParser.g:4783:2: ( rule__ExternAggregationOperatorDeclaration__NameAssignment_2 ) + // InternalSolverLanguageParser.g:4783:3: rule__ExternAggregationOperatorDeclaration__NameAssignment_2 { pushFollow(FOLLOW_2); - rule__MetricDefinition__HeadAssignment_1(); + rule__ExternAggregationOperatorDeclaration__NameAssignment_2(); state._fsp--; } - after(grammarAccess.getMetricDefinitionAccess().getHeadAssignment_1()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameAssignment_2()); } @@ -10570,26 +15061,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__Group__1__Impl" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__2__Impl" - // $ANTLR start "rule__MetricDefinition__Group__2" - // InternalSolverLanguageParser.g:3324:1: rule__MetricDefinition__Group__2 : rule__MetricDefinition__Group__2__Impl rule__MetricDefinition__Group__3 ; - public final void rule__MetricDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__3" + // InternalSolverLanguageParser.g:4791:1: rule__ExternAggregationOperatorDeclaration__Group__3 : rule__ExternAggregationOperatorDeclaration__Group__3__Impl rule__ExternAggregationOperatorDeclaration__Group__4 ; + public final void rule__ExternAggregationOperatorDeclaration__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3328:1: ( rule__MetricDefinition__Group__2__Impl rule__MetricDefinition__Group__3 ) - // InternalSolverLanguageParser.g:3329:2: rule__MetricDefinition__Group__2__Impl rule__MetricDefinition__Group__3 + // InternalSolverLanguageParser.g:4795:1: ( rule__ExternAggregationOperatorDeclaration__Group__3__Impl rule__ExternAggregationOperatorDeclaration__Group__4 ) + // InternalSolverLanguageParser.g:4796:2: rule__ExternAggregationOperatorDeclaration__Group__3__Impl rule__ExternAggregationOperatorDeclaration__Group__4 { - pushFollow(FOLLOW_7); - rule__MetricDefinition__Group__2__Impl(); + pushFollow(FOLLOW_6); + rule__ExternAggregationOperatorDeclaration__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MetricDefinition__Group__3(); + rule__ExternAggregationOperatorDeclaration__Group__4(); state._fsp--; @@ -10608,25 +15099,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__Group__2" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__3" - // $ANTLR start "rule__MetricDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:3336:1: rule__MetricDefinition__Group__2__Impl : ( EqualsSign ) ; - public final void rule__MetricDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__3__Impl" + // InternalSolverLanguageParser.g:4803:1: rule__ExternAggregationOperatorDeclaration__Group__3__Impl : ( LeftCurlyBracket ) ; + public final void rule__ExternAggregationOperatorDeclaration__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3340:1: ( ( EqualsSign ) ) - // InternalSolverLanguageParser.g:3341:1: ( EqualsSign ) + // InternalSolverLanguageParser.g:4807:1: ( ( LeftCurlyBracket ) ) + // InternalSolverLanguageParser.g:4808:1: ( LeftCurlyBracket ) { - // InternalSolverLanguageParser.g:3341:1: ( EqualsSign ) - // InternalSolverLanguageParser.g:3342:2: EqualsSign + // InternalSolverLanguageParser.g:4808:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:4809:2: LeftCurlyBracket { - before(grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); - match(input,EqualsSign,FOLLOW_2); - after(grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getLeftCurlyBracketKeyword_3()); + match(input,LeftCurlyBracket,FOLLOW_2); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getLeftCurlyBracketKeyword_3()); } @@ -10645,21 +15136,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__Group__2__Impl" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__3__Impl" - // $ANTLR start "rule__MetricDefinition__Group__3" - // InternalSolverLanguageParser.g:3351:1: rule__MetricDefinition__Group__3 : rule__MetricDefinition__Group__3__Impl ; - public final void rule__MetricDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__4" + // InternalSolverLanguageParser.g:4818:1: rule__ExternAggregationOperatorDeclaration__Group__4 : rule__ExternAggregationOperatorDeclaration__Group__4__Impl rule__ExternAggregationOperatorDeclaration__Group__5 ; + public final void rule__ExternAggregationOperatorDeclaration__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3355:1: ( rule__MetricDefinition__Group__3__Impl ) - // InternalSolverLanguageParser.g:3356:2: rule__MetricDefinition__Group__3__Impl + // InternalSolverLanguageParser.g:4822:1: ( rule__ExternAggregationOperatorDeclaration__Group__4__Impl rule__ExternAggregationOperatorDeclaration__Group__5 ) + // InternalSolverLanguageParser.g:4823:2: rule__ExternAggregationOperatorDeclaration__Group__4__Impl rule__ExternAggregationOperatorDeclaration__Group__5 { + pushFollow(FOLLOW_22); + rule__ExternAggregationOperatorDeclaration__Group__4__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__MetricDefinition__Group__3__Impl(); + rule__ExternAggregationOperatorDeclaration__Group__5(); state._fsp--; @@ -10678,35 +15174,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__Group__3" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__4" - // $ANTLR start "rule__MetricDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:3362:1: rule__MetricDefinition__Group__3__Impl : ( ( rule__MetricDefinition__BodyAssignment_3 ) ) ; - public final void rule__MetricDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__4__Impl" + // InternalSolverLanguageParser.g:4830:1: rule__ExternAggregationOperatorDeclaration__Group__4__Impl : ( ( rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 ) ) ; + public final void rule__ExternAggregationOperatorDeclaration__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3366:1: ( ( ( rule__MetricDefinition__BodyAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:3367:1: ( ( rule__MetricDefinition__BodyAssignment_3 ) ) + // InternalSolverLanguageParser.g:4834:1: ( ( ( rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 ) ) ) + // InternalSolverLanguageParser.g:4835:1: ( ( rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 ) ) { - // InternalSolverLanguageParser.g:3367:1: ( ( rule__MetricDefinition__BodyAssignment_3 ) ) - // InternalSolverLanguageParser.g:3368:2: ( rule__MetricDefinition__BodyAssignment_3 ) + // InternalSolverLanguageParser.g:4835:1: ( ( rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 ) ) + // InternalSolverLanguageParser.g:4836:2: ( rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 ) { - before(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3()); - // InternalSolverLanguageParser.g:3369:2: ( rule__MetricDefinition__BodyAssignment_3 ) - // InternalSolverLanguageParser.g:3369:3: rule__MetricDefinition__BodyAssignment_3 + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeAssignment_4()); + // InternalSolverLanguageParser.g:4837:2: ( rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 ) + // InternalSolverLanguageParser.g:4837:3: rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 { pushFollow(FOLLOW_2); - rule__MetricDefinition__BodyAssignment_3(); + rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4(); state._fsp--; } - after(grammarAccess.getMetricDefinitionAccess().getBodyAssignment_3()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeAssignment_4()); } @@ -10725,26 +15221,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__Group__3__Impl" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__4__Impl" - // $ANTLR start "rule__ExternPredicateDefinition__Group__0" - // InternalSolverLanguageParser.g:3378:1: rule__ExternPredicateDefinition__Group__0 : rule__ExternPredicateDefinition__Group__0__Impl rule__ExternPredicateDefinition__Group__1 ; - public final void rule__ExternPredicateDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__5" + // InternalSolverLanguageParser.g:4845:1: rule__ExternAggregationOperatorDeclaration__Group__5 : rule__ExternAggregationOperatorDeclaration__Group__5__Impl rule__ExternAggregationOperatorDeclaration__Group__6 ; + public final void rule__ExternAggregationOperatorDeclaration__Group__5() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3382:1: ( rule__ExternPredicateDefinition__Group__0__Impl rule__ExternPredicateDefinition__Group__1 ) - // InternalSolverLanguageParser.g:3383:2: rule__ExternPredicateDefinition__Group__0__Impl rule__ExternPredicateDefinition__Group__1 + // InternalSolverLanguageParser.g:4849:1: ( rule__ExternAggregationOperatorDeclaration__Group__5__Impl rule__ExternAggregationOperatorDeclaration__Group__6 ) + // InternalSolverLanguageParser.g:4850:2: rule__ExternAggregationOperatorDeclaration__Group__5__Impl rule__ExternAggregationOperatorDeclaration__Group__6 { - pushFollow(FOLLOW_9); - rule__ExternPredicateDefinition__Group__0__Impl(); + pushFollow(FOLLOW_23); + rule__ExternAggregationOperatorDeclaration__Group__5__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternPredicateDefinition__Group__1(); + rule__ExternAggregationOperatorDeclaration__Group__6(); state._fsp--; @@ -10763,25 +15259,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternPredicateDefinition__Group__0" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__5" - // $ANTLR start "rule__ExternPredicateDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:3390:1: rule__ExternPredicateDefinition__Group__0__Impl : ( Extern ) ; - public final void rule__ExternPredicateDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__5__Impl" + // InternalSolverLanguageParser.g:4857:1: rule__ExternAggregationOperatorDeclaration__Group__5__Impl : ( FullStopFullStopFullStop ) ; + public final void rule__ExternAggregationOperatorDeclaration__Group__5__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3394:1: ( ( Extern ) ) - // InternalSolverLanguageParser.g:3395:1: ( Extern ) + // InternalSolverLanguageParser.g:4861:1: ( ( FullStopFullStopFullStop ) ) + // InternalSolverLanguageParser.g:4862:1: ( FullStopFullStopFullStop ) { - // InternalSolverLanguageParser.g:3395:1: ( Extern ) - // InternalSolverLanguageParser.g:3396:2: Extern + // InternalSolverLanguageParser.g:4862:1: ( FullStopFullStopFullStop ) + // InternalSolverLanguageParser.g:4863:2: FullStopFullStopFullStop { - before(grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); - match(input,Extern,FOLLOW_2); - after(grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getFullStopFullStopFullStopKeyword_5()); + match(input,FullStopFullStopFullStop,FOLLOW_2); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getFullStopFullStopFullStopKeyword_5()); } @@ -10800,26 +15296,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternPredicateDefinition__Group__0__Impl" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__5__Impl" - // $ANTLR start "rule__ExternPredicateDefinition__Group__1" - // InternalSolverLanguageParser.g:3405:1: rule__ExternPredicateDefinition__Group__1 : rule__ExternPredicateDefinition__Group__1__Impl rule__ExternPredicateDefinition__Group__2 ; - public final void rule__ExternPredicateDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__6" + // InternalSolverLanguageParser.g:4872:1: rule__ExternAggregationOperatorDeclaration__Group__6 : rule__ExternAggregationOperatorDeclaration__Group__6__Impl rule__ExternAggregationOperatorDeclaration__Group__7 ; + public final void rule__ExternAggregationOperatorDeclaration__Group__6() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3409:1: ( rule__ExternPredicateDefinition__Group__1__Impl rule__ExternPredicateDefinition__Group__2 ) - // InternalSolverLanguageParser.g:3410:2: rule__ExternPredicateDefinition__Group__1__Impl rule__ExternPredicateDefinition__Group__2 + // InternalSolverLanguageParser.g:4876:1: ( rule__ExternAggregationOperatorDeclaration__Group__6__Impl rule__ExternAggregationOperatorDeclaration__Group__7 ) + // InternalSolverLanguageParser.g:4877:2: rule__ExternAggregationOperatorDeclaration__Group__6__Impl rule__ExternAggregationOperatorDeclaration__Group__7 { - pushFollow(FOLLOW_12); - rule__ExternPredicateDefinition__Group__1__Impl(); + pushFollow(FOLLOW_7); + rule__ExternAggregationOperatorDeclaration__Group__6__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternPredicateDefinition__Group__2(); + rule__ExternAggregationOperatorDeclaration__Group__7(); state._fsp--; @@ -10838,35 +15334,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternPredicateDefinition__Group__1" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__6" - // $ANTLR start "rule__ExternPredicateDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:3417:1: rule__ExternPredicateDefinition__Group__1__Impl : ( ( rule__ExternPredicateDefinition__NameAssignment_1 ) ) ; - public final void rule__ExternPredicateDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__6__Impl" + // InternalSolverLanguageParser.g:4884:1: rule__ExternAggregationOperatorDeclaration__Group__6__Impl : ( RightCurlyBracket ) ; + public final void rule__ExternAggregationOperatorDeclaration__Group__6__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3421:1: ( ( ( rule__ExternPredicateDefinition__NameAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:3422:1: ( ( rule__ExternPredicateDefinition__NameAssignment_1 ) ) + // InternalSolverLanguageParser.g:4888:1: ( ( RightCurlyBracket ) ) + // InternalSolverLanguageParser.g:4889:1: ( RightCurlyBracket ) { - // InternalSolverLanguageParser.g:3422:1: ( ( rule__ExternPredicateDefinition__NameAssignment_1 ) ) - // InternalSolverLanguageParser.g:3423:2: ( rule__ExternPredicateDefinition__NameAssignment_1 ) + // InternalSolverLanguageParser.g:4889:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:4890:2: RightCurlyBracket { - before(grammarAccess.getExternPredicateDefinitionAccess().getNameAssignment_1()); - // InternalSolverLanguageParser.g:3424:2: ( rule__ExternPredicateDefinition__NameAssignment_1 ) - // InternalSolverLanguageParser.g:3424:3: rule__ExternPredicateDefinition__NameAssignment_1 - { - pushFollow(FOLLOW_2); - rule__ExternPredicateDefinition__NameAssignment_1(); - - state._fsp--; - - - } - - after(grammarAccess.getExternPredicateDefinitionAccess().getNameAssignment_1()); + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getRightCurlyBracketKeyword_6()); + match(input,RightCurlyBracket,FOLLOW_2); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getRightCurlyBracketKeyword_6()); } @@ -10885,21 +15371,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternPredicateDefinition__Group__1__Impl" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__6__Impl" - // $ANTLR start "rule__ExternPredicateDefinition__Group__2" - // InternalSolverLanguageParser.g:3432:1: rule__ExternPredicateDefinition__Group__2 : rule__ExternPredicateDefinition__Group__2__Impl ; - public final void rule__ExternPredicateDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__7" + // InternalSolverLanguageParser.g:4899:1: rule__ExternAggregationOperatorDeclaration__Group__7 : rule__ExternAggregationOperatorDeclaration__Group__7__Impl ; + public final void rule__ExternAggregationOperatorDeclaration__Group__7() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3436:1: ( rule__ExternPredicateDefinition__Group__2__Impl ) - // InternalSolverLanguageParser.g:3437:2: rule__ExternPredicateDefinition__Group__2__Impl + // InternalSolverLanguageParser.g:4903:1: ( rule__ExternAggregationOperatorDeclaration__Group__7__Impl ) + // InternalSolverLanguageParser.g:4904:2: rule__ExternAggregationOperatorDeclaration__Group__7__Impl { pushFollow(FOLLOW_2); - rule__ExternPredicateDefinition__Group__2__Impl(); + rule__ExternAggregationOperatorDeclaration__Group__7__Impl(); state._fsp--; @@ -10918,35 +15404,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternPredicateDefinition__Group__2" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__7" - // $ANTLR start "rule__ExternPredicateDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:3443:1: rule__ExternPredicateDefinition__Group__2__Impl : ( ( rule__ExternPredicateDefinition__ArgumentListAssignment_2 ) ) ; - public final void rule__ExternPredicateDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__Group__7__Impl" + // InternalSolverLanguageParser.g:4910:1: rule__ExternAggregationOperatorDeclaration__Group__7__Impl : ( RULE_FULL_STOP ) ; + public final void rule__ExternAggregationOperatorDeclaration__Group__7__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3447:1: ( ( ( rule__ExternPredicateDefinition__ArgumentListAssignment_2 ) ) ) - // InternalSolverLanguageParser.g:3448:1: ( ( rule__ExternPredicateDefinition__ArgumentListAssignment_2 ) ) - { - // InternalSolverLanguageParser.g:3448:1: ( ( rule__ExternPredicateDefinition__ArgumentListAssignment_2 ) ) - // InternalSolverLanguageParser.g:3449:2: ( rule__ExternPredicateDefinition__ArgumentListAssignment_2 ) + // InternalSolverLanguageParser.g:4914:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4915:1: ( RULE_FULL_STOP ) { - before(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListAssignment_2()); - // InternalSolverLanguageParser.g:3450:2: ( rule__ExternPredicateDefinition__ArgumentListAssignment_2 ) - // InternalSolverLanguageParser.g:3450:3: rule__ExternPredicateDefinition__ArgumentListAssignment_2 + // InternalSolverLanguageParser.g:4915:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4916:2: RULE_FULL_STOP { - pushFollow(FOLLOW_2); - rule__ExternPredicateDefinition__ArgumentListAssignment_2(); - - state._fsp--; - - - } - - after(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListAssignment_2()); + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getFULL_STOPTerminalRuleCall_7()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getFULL_STOPTerminalRuleCall_7()); } @@ -10965,26 +15441,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternPredicateDefinition__Group__2__Impl" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__Group__7__Impl" - // $ANTLR start "rule__ExternMetricDefinition__Group__0" - // InternalSolverLanguageParser.g:3459:1: rule__ExternMetricDefinition__Group__0 : rule__ExternMetricDefinition__Group__0__Impl rule__ExternMetricDefinition__Group__1 ; - public final void rule__ExternMetricDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__Group__0" + // InternalSolverLanguageParser.g:4926:1: rule__ExternDatatypeDeclaration__Group__0 : rule__ExternDatatypeDeclaration__Group__0__Impl rule__ExternDatatypeDeclaration__Group__1 ; + public final void rule__ExternDatatypeDeclaration__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3463:1: ( rule__ExternMetricDefinition__Group__0__Impl rule__ExternMetricDefinition__Group__1 ) - // InternalSolverLanguageParser.g:3464:2: rule__ExternMetricDefinition__Group__0__Impl rule__ExternMetricDefinition__Group__1 + // InternalSolverLanguageParser.g:4930:1: ( rule__ExternDatatypeDeclaration__Group__0__Impl rule__ExternDatatypeDeclaration__Group__1 ) + // InternalSolverLanguageParser.g:4931:2: rule__ExternDatatypeDeclaration__Group__0__Impl rule__ExternDatatypeDeclaration__Group__1 { - pushFollow(FOLLOW_9); - rule__ExternMetricDefinition__Group__0__Impl(); + pushFollow(FOLLOW_24); + rule__ExternDatatypeDeclaration__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternMetricDefinition__Group__1(); + rule__ExternDatatypeDeclaration__Group__1(); state._fsp--; @@ -11003,25 +15479,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__Group__0" + // $ANTLR end "rule__ExternDatatypeDeclaration__Group__0" - // $ANTLR start "rule__ExternMetricDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:3471:1: rule__ExternMetricDefinition__Group__0__Impl : ( Extern ) ; - public final void rule__ExternMetricDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__Group__0__Impl" + // InternalSolverLanguageParser.g:4938:1: rule__ExternDatatypeDeclaration__Group__0__Impl : ( Extern ) ; + public final void rule__ExternDatatypeDeclaration__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3475:1: ( ( Extern ) ) - // InternalSolverLanguageParser.g:3476:1: ( Extern ) + // InternalSolverLanguageParser.g:4942:1: ( ( Extern ) ) + // InternalSolverLanguageParser.g:4943:1: ( Extern ) { - // InternalSolverLanguageParser.g:3476:1: ( Extern ) - // InternalSolverLanguageParser.g:3477:2: Extern + // InternalSolverLanguageParser.g:4943:1: ( Extern ) + // InternalSolverLanguageParser.g:4944:2: Extern { - before(grammarAccess.getExternMetricDefinitionAccess().getExternKeyword_0()); + before(grammarAccess.getExternDatatypeDeclarationAccess().getExternKeyword_0()); match(input,Extern,FOLLOW_2); - after(grammarAccess.getExternMetricDefinitionAccess().getExternKeyword_0()); + after(grammarAccess.getExternDatatypeDeclarationAccess().getExternKeyword_0()); } @@ -11040,26 +15516,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__Group__0__Impl" + // $ANTLR end "rule__ExternDatatypeDeclaration__Group__0__Impl" - // $ANTLR start "rule__ExternMetricDefinition__Group__1" - // InternalSolverLanguageParser.g:3486:1: rule__ExternMetricDefinition__Group__1 : rule__ExternMetricDefinition__Group__1__Impl rule__ExternMetricDefinition__Group__2 ; - public final void rule__ExternMetricDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__Group__1" + // InternalSolverLanguageParser.g:4953:1: rule__ExternDatatypeDeclaration__Group__1 : rule__ExternDatatypeDeclaration__Group__1__Impl rule__ExternDatatypeDeclaration__Group__2 ; + public final void rule__ExternDatatypeDeclaration__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3490:1: ( rule__ExternMetricDefinition__Group__1__Impl rule__ExternMetricDefinition__Group__2 ) - // InternalSolverLanguageParser.g:3491:2: rule__ExternMetricDefinition__Group__1__Impl rule__ExternMetricDefinition__Group__2 + // InternalSolverLanguageParser.g:4957:1: ( rule__ExternDatatypeDeclaration__Group__1__Impl rule__ExternDatatypeDeclaration__Group__2 ) + // InternalSolverLanguageParser.g:4958:2: rule__ExternDatatypeDeclaration__Group__1__Impl rule__ExternDatatypeDeclaration__Group__2 { - pushFollow(FOLLOW_9); - rule__ExternMetricDefinition__Group__1__Impl(); + pushFollow(FOLLOW_6); + rule__ExternDatatypeDeclaration__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternMetricDefinition__Group__2(); + rule__ExternDatatypeDeclaration__Group__2(); state._fsp--; @@ -11078,35 +15554,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__Group__1" + // $ANTLR end "rule__ExternDatatypeDeclaration__Group__1" - // $ANTLR start "rule__ExternMetricDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:3498:1: rule__ExternMetricDefinition__Group__1__Impl : ( ( rule__ExternMetricDefinition__TypeAssignment_1 ) ) ; - public final void rule__ExternMetricDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__Group__1__Impl" + // InternalSolverLanguageParser.g:4965:1: rule__ExternDatatypeDeclaration__Group__1__Impl : ( Datatype ) ; + public final void rule__ExternDatatypeDeclaration__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3502:1: ( ( ( rule__ExternMetricDefinition__TypeAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:3503:1: ( ( rule__ExternMetricDefinition__TypeAssignment_1 ) ) + // InternalSolverLanguageParser.g:4969:1: ( ( Datatype ) ) + // InternalSolverLanguageParser.g:4970:1: ( Datatype ) { - // InternalSolverLanguageParser.g:3503:1: ( ( rule__ExternMetricDefinition__TypeAssignment_1 ) ) - // InternalSolverLanguageParser.g:3504:2: ( rule__ExternMetricDefinition__TypeAssignment_1 ) + // InternalSolverLanguageParser.g:4970:1: ( Datatype ) + // InternalSolverLanguageParser.g:4971:2: Datatype { - before(grammarAccess.getExternMetricDefinitionAccess().getTypeAssignment_1()); - // InternalSolverLanguageParser.g:3505:2: ( rule__ExternMetricDefinition__TypeAssignment_1 ) - // InternalSolverLanguageParser.g:3505:3: rule__ExternMetricDefinition__TypeAssignment_1 - { - pushFollow(FOLLOW_2); - rule__ExternMetricDefinition__TypeAssignment_1(); - - state._fsp--; - - - } - - after(grammarAccess.getExternMetricDefinitionAccess().getTypeAssignment_1()); + before(grammarAccess.getExternDatatypeDeclarationAccess().getDatatypeKeyword_1()); + match(input,Datatype,FOLLOW_2); + after(grammarAccess.getExternDatatypeDeclarationAccess().getDatatypeKeyword_1()); } @@ -11125,26 +15591,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__Group__1__Impl" + // $ANTLR end "rule__ExternDatatypeDeclaration__Group__1__Impl" - // $ANTLR start "rule__ExternMetricDefinition__Group__2" - // InternalSolverLanguageParser.g:3513:1: rule__ExternMetricDefinition__Group__2 : rule__ExternMetricDefinition__Group__2__Impl rule__ExternMetricDefinition__Group__3 ; - public final void rule__ExternMetricDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__Group__2" + // InternalSolverLanguageParser.g:4980:1: rule__ExternDatatypeDeclaration__Group__2 : rule__ExternDatatypeDeclaration__Group__2__Impl rule__ExternDatatypeDeclaration__Group__3 ; + public final void rule__ExternDatatypeDeclaration__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3517:1: ( rule__ExternMetricDefinition__Group__2__Impl rule__ExternMetricDefinition__Group__3 ) - // InternalSolverLanguageParser.g:3518:2: rule__ExternMetricDefinition__Group__2__Impl rule__ExternMetricDefinition__Group__3 + // InternalSolverLanguageParser.g:4984:1: ( rule__ExternDatatypeDeclaration__Group__2__Impl rule__ExternDatatypeDeclaration__Group__3 ) + // InternalSolverLanguageParser.g:4985:2: rule__ExternDatatypeDeclaration__Group__2__Impl rule__ExternDatatypeDeclaration__Group__3 { - pushFollow(FOLLOW_12); - rule__ExternMetricDefinition__Group__2__Impl(); + pushFollow(FOLLOW_7); + rule__ExternDatatypeDeclaration__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternMetricDefinition__Group__3(); + rule__ExternDatatypeDeclaration__Group__3(); state._fsp--; @@ -11163,35 +15629,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__Group__2" + // $ANTLR end "rule__ExternDatatypeDeclaration__Group__2" - // $ANTLR start "rule__ExternMetricDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:3525:1: rule__ExternMetricDefinition__Group__2__Impl : ( ( rule__ExternMetricDefinition__NameAssignment_2 ) ) ; - public final void rule__ExternMetricDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__Group__2__Impl" + // InternalSolverLanguageParser.g:4992:1: rule__ExternDatatypeDeclaration__Group__2__Impl : ( ( rule__ExternDatatypeDeclaration__NameAssignment_2 ) ) ; + public final void rule__ExternDatatypeDeclaration__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3529:1: ( ( ( rule__ExternMetricDefinition__NameAssignment_2 ) ) ) - // InternalSolverLanguageParser.g:3530:1: ( ( rule__ExternMetricDefinition__NameAssignment_2 ) ) + // InternalSolverLanguageParser.g:4996:1: ( ( ( rule__ExternDatatypeDeclaration__NameAssignment_2 ) ) ) + // InternalSolverLanguageParser.g:4997:1: ( ( rule__ExternDatatypeDeclaration__NameAssignment_2 ) ) { - // InternalSolverLanguageParser.g:3530:1: ( ( rule__ExternMetricDefinition__NameAssignment_2 ) ) - // InternalSolverLanguageParser.g:3531:2: ( rule__ExternMetricDefinition__NameAssignment_2 ) + // InternalSolverLanguageParser.g:4997:1: ( ( rule__ExternDatatypeDeclaration__NameAssignment_2 ) ) + // InternalSolverLanguageParser.g:4998:2: ( rule__ExternDatatypeDeclaration__NameAssignment_2 ) { - before(grammarAccess.getExternMetricDefinitionAccess().getNameAssignment_2()); - // InternalSolverLanguageParser.g:3532:2: ( rule__ExternMetricDefinition__NameAssignment_2 ) - // InternalSolverLanguageParser.g:3532:3: rule__ExternMetricDefinition__NameAssignment_2 + before(grammarAccess.getExternDatatypeDeclarationAccess().getNameAssignment_2()); + // InternalSolverLanguageParser.g:4999:2: ( rule__ExternDatatypeDeclaration__NameAssignment_2 ) + // InternalSolverLanguageParser.g:4999:3: rule__ExternDatatypeDeclaration__NameAssignment_2 { pushFollow(FOLLOW_2); - rule__ExternMetricDefinition__NameAssignment_2(); + rule__ExternDatatypeDeclaration__NameAssignment_2(); state._fsp--; } - after(grammarAccess.getExternMetricDefinitionAccess().getNameAssignment_2()); + after(grammarAccess.getExternDatatypeDeclarationAccess().getNameAssignment_2()); } @@ -11210,21 +15676,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__Group__2__Impl" + // $ANTLR end "rule__ExternDatatypeDeclaration__Group__2__Impl" - // $ANTLR start "rule__ExternMetricDefinition__Group__3" - // InternalSolverLanguageParser.g:3540:1: rule__ExternMetricDefinition__Group__3 : rule__ExternMetricDefinition__Group__3__Impl ; - public final void rule__ExternMetricDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__Group__3" + // InternalSolverLanguageParser.g:5007:1: rule__ExternDatatypeDeclaration__Group__3 : rule__ExternDatatypeDeclaration__Group__3__Impl ; + public final void rule__ExternDatatypeDeclaration__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3544:1: ( rule__ExternMetricDefinition__Group__3__Impl ) - // InternalSolverLanguageParser.g:3545:2: rule__ExternMetricDefinition__Group__3__Impl + // InternalSolverLanguageParser.g:5011:1: ( rule__ExternDatatypeDeclaration__Group__3__Impl ) + // InternalSolverLanguageParser.g:5012:2: rule__ExternDatatypeDeclaration__Group__3__Impl { pushFollow(FOLLOW_2); - rule__ExternMetricDefinition__Group__3__Impl(); + rule__ExternDatatypeDeclaration__Group__3__Impl(); state._fsp--; @@ -11243,35 +15709,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__Group__3" + // $ANTLR end "rule__ExternDatatypeDeclaration__Group__3" - // $ANTLR start "rule__ExternMetricDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:3551:1: rule__ExternMetricDefinition__Group__3__Impl : ( ( rule__ExternMetricDefinition__ArgumentListAssignment_3 ) ) ; - public final void rule__ExternMetricDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__Group__3__Impl" + // InternalSolverLanguageParser.g:5018:1: rule__ExternDatatypeDeclaration__Group__3__Impl : ( RULE_FULL_STOP ) ; + public final void rule__ExternDatatypeDeclaration__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3555:1: ( ( ( rule__ExternMetricDefinition__ArgumentListAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:3556:1: ( ( rule__ExternMetricDefinition__ArgumentListAssignment_3 ) ) - { - // InternalSolverLanguageParser.g:3556:1: ( ( rule__ExternMetricDefinition__ArgumentListAssignment_3 ) ) - // InternalSolverLanguageParser.g:3557:2: ( rule__ExternMetricDefinition__ArgumentListAssignment_3 ) + // InternalSolverLanguageParser.g:5022:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:5023:1: ( RULE_FULL_STOP ) { - before(grammarAccess.getExternMetricDefinitionAccess().getArgumentListAssignment_3()); - // InternalSolverLanguageParser.g:3558:2: ( rule__ExternMetricDefinition__ArgumentListAssignment_3 ) - // InternalSolverLanguageParser.g:3558:3: rule__ExternMetricDefinition__ArgumentListAssignment_3 + // InternalSolverLanguageParser.g:5023:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:5024:2: RULE_FULL_STOP { - pushFollow(FOLLOW_2); - rule__ExternMetricDefinition__ArgumentListAssignment_3(); - - state._fsp--; - - - } - - after(grammarAccess.getExternMetricDefinitionAccess().getArgumentListAssignment_3()); + before(grammarAccess.getExternDatatypeDeclarationAccess().getFULL_STOPTerminalRuleCall_3()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getExternDatatypeDeclarationAccess().getFULL_STOPTerminalRuleCall_3()); } @@ -11290,26 +15746,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__Group__3__Impl" + // $ANTLR end "rule__ExternDatatypeDeclaration__Group__3__Impl" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__0" - // InternalSolverLanguageParser.g:3567:1: rule__ExternAggregatorDefinition__Group__0 : rule__ExternAggregatorDefinition__Group__0__Impl rule__ExternAggregatorDefinition__Group__1 ; - public final void rule__ExternAggregatorDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2__0" + // InternalSolverLanguageParser.g:5034:1: rule__Expression__Group_2__0 : rule__Expression__Group_2__0__Impl rule__Expression__Group_2__1 ; + public final void rule__Expression__Group_2__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3571:1: ( rule__ExternAggregatorDefinition__Group__0__Impl rule__ExternAggregatorDefinition__Group__1 ) - // InternalSolverLanguageParser.g:3572:2: rule__ExternAggregatorDefinition__Group__0__Impl rule__ExternAggregatorDefinition__Group__1 + // InternalSolverLanguageParser.g:5038:1: ( rule__Expression__Group_2__0__Impl rule__Expression__Group_2__1 ) + // InternalSolverLanguageParser.g:5039:2: rule__Expression__Group_2__0__Impl rule__Expression__Group_2__1 { - pushFollow(FOLLOW_9); - rule__ExternAggregatorDefinition__Group__0__Impl(); + pushFollow(FOLLOW_25); + rule__Expression__Group_2__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__Group__1(); + rule__Expression__Group_2__1(); state._fsp--; @@ -11328,25 +15784,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__0" + // $ANTLR end "rule__Expression__Group_2__0" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:3579:1: rule__ExternAggregatorDefinition__Group__0__Impl : ( Extern ) ; - public final void rule__ExternAggregatorDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2__0__Impl" + // InternalSolverLanguageParser.g:5046:1: rule__Expression__Group_2__0__Impl : ( ruleDisjunctiveExpression ) ; + public final void rule__Expression__Group_2__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3583:1: ( ( Extern ) ) - // InternalSolverLanguageParser.g:3584:1: ( Extern ) + // InternalSolverLanguageParser.g:5050:1: ( ( ruleDisjunctiveExpression ) ) + // InternalSolverLanguageParser.g:5051:1: ( ruleDisjunctiveExpression ) { - // InternalSolverLanguageParser.g:3584:1: ( Extern ) - // InternalSolverLanguageParser.g:3585:2: Extern + // InternalSolverLanguageParser.g:5051:1: ( ruleDisjunctiveExpression ) + // InternalSolverLanguageParser.g:5052:2: ruleDisjunctiveExpression { - before(grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0()); - match(input,Extern,FOLLOW_2); - after(grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0()); + before(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_2_0()); + pushFollow(FOLLOW_2); + ruleDisjunctiveExpression(); + + state._fsp--; + + after(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_2_0()); } @@ -11365,26 +15825,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__0__Impl" + // $ANTLR end "rule__Expression__Group_2__0__Impl" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__1" - // InternalSolverLanguageParser.g:3594:1: rule__ExternAggregatorDefinition__Group__1 : rule__ExternAggregatorDefinition__Group__1__Impl rule__ExternAggregatorDefinition__Group__2 ; - public final void rule__ExternAggregatorDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2__1" + // InternalSolverLanguageParser.g:5061:1: rule__Expression__Group_2__1 : rule__Expression__Group_2__1__Impl ; + public final void rule__Expression__Group_2__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3598:1: ( rule__ExternAggregatorDefinition__Group__1__Impl rule__ExternAggregatorDefinition__Group__2 ) - // InternalSolverLanguageParser.g:3599:2: rule__ExternAggregatorDefinition__Group__1__Impl rule__ExternAggregatorDefinition__Group__2 + // InternalSolverLanguageParser.g:5065:1: ( rule__Expression__Group_2__1__Impl ) + // InternalSolverLanguageParser.g:5066:2: rule__Expression__Group_2__1__Impl { - pushFollow(FOLLOW_9); - rule__ExternAggregatorDefinition__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__Group__2(); + rule__Expression__Group_2__1__Impl(); state._fsp--; @@ -11403,35 +15858,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__1" + // $ANTLR end "rule__Expression__Group_2__1" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:3606:1: rule__ExternAggregatorDefinition__Group__1__Impl : ( ( rule__ExternAggregatorDefinition__TypeAssignment_1 ) ) ; - public final void rule__ExternAggregatorDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2__1__Impl" + // InternalSolverLanguageParser.g:5072:1: rule__Expression__Group_2__1__Impl : ( ( rule__Expression__Group_2_1__0 )? ) ; + public final void rule__Expression__Group_2__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3610:1: ( ( ( rule__ExternAggregatorDefinition__TypeAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:3611:1: ( ( rule__ExternAggregatorDefinition__TypeAssignment_1 ) ) + // InternalSolverLanguageParser.g:5076:1: ( ( ( rule__Expression__Group_2_1__0 )? ) ) + // InternalSolverLanguageParser.g:5077:1: ( ( rule__Expression__Group_2_1__0 )? ) { - // InternalSolverLanguageParser.g:3611:1: ( ( rule__ExternAggregatorDefinition__TypeAssignment_1 ) ) - // InternalSolverLanguageParser.g:3612:2: ( rule__ExternAggregatorDefinition__TypeAssignment_1 ) + // InternalSolverLanguageParser.g:5077:1: ( ( rule__Expression__Group_2_1__0 )? ) + // InternalSolverLanguageParser.g:5078:2: ( rule__Expression__Group_2_1__0 )? { - before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeAssignment_1()); - // InternalSolverLanguageParser.g:3613:2: ( rule__ExternAggregatorDefinition__TypeAssignment_1 ) - // InternalSolverLanguageParser.g:3613:3: rule__ExternAggregatorDefinition__TypeAssignment_1 - { - pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__TypeAssignment_1(); + before(grammarAccess.getExpressionAccess().getGroup_2_1()); + // InternalSolverLanguageParser.g:5079:2: ( rule__Expression__Group_2_1__0 )? + int alt38=2; + int LA38_0 = input.LA(1); + + if ( (LA38_0==EqualsSignGreaterThanSign) ) { + alt38=1; + } + switch (alt38) { + case 1 : + // InternalSolverLanguageParser.g:5079:3: rule__Expression__Group_2_1__0 + { + pushFollow(FOLLOW_2); + rule__Expression__Group_2_1__0(); + + state._fsp--; - state._fsp--; + } + break; } - after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeAssignment_1()); + after(grammarAccess.getExpressionAccess().getGroup_2_1()); } @@ -11450,26 +15916,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__1__Impl" + // $ANTLR end "rule__Expression__Group_2__1__Impl" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__2" - // InternalSolverLanguageParser.g:3621:1: rule__ExternAggregatorDefinition__Group__2 : rule__ExternAggregatorDefinition__Group__2__Impl rule__ExternAggregatorDefinition__Group__3 ; - public final void rule__ExternAggregatorDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2_1__0" + // InternalSolverLanguageParser.g:5088:1: rule__Expression__Group_2_1__0 : rule__Expression__Group_2_1__0__Impl rule__Expression__Group_2_1__1 ; + public final void rule__Expression__Group_2_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3625:1: ( rule__ExternAggregatorDefinition__Group__2__Impl rule__ExternAggregatorDefinition__Group__3 ) - // InternalSolverLanguageParser.g:3626:2: rule__ExternAggregatorDefinition__Group__2__Impl rule__ExternAggregatorDefinition__Group__3 + // InternalSolverLanguageParser.g:5092:1: ( rule__Expression__Group_2_1__0__Impl rule__Expression__Group_2_1__1 ) + // InternalSolverLanguageParser.g:5093:2: rule__Expression__Group_2_1__0__Impl rule__Expression__Group_2_1__1 { - pushFollow(FOLLOW_14); - rule__ExternAggregatorDefinition__Group__2__Impl(); + pushFollow(FOLLOW_25); + rule__Expression__Group_2_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__Group__3(); + rule__Expression__Group_2_1__1(); state._fsp--; @@ -11488,35 +15954,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__2" + // $ANTLR end "rule__Expression__Group_2_1__0" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:3633:1: rule__ExternAggregatorDefinition__Group__2__Impl : ( ( rule__ExternAggregatorDefinition__NameAssignment_2 ) ) ; - public final void rule__ExternAggregatorDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2_1__0__Impl" + // InternalSolverLanguageParser.g:5100:1: rule__Expression__Group_2_1__0__Impl : ( () ) ; + public final void rule__Expression__Group_2_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3637:1: ( ( ( rule__ExternAggregatorDefinition__NameAssignment_2 ) ) ) - // InternalSolverLanguageParser.g:3638:1: ( ( rule__ExternAggregatorDefinition__NameAssignment_2 ) ) + // InternalSolverLanguageParser.g:5104:1: ( ( () ) ) + // InternalSolverLanguageParser.g:5105:1: ( () ) { - // InternalSolverLanguageParser.g:3638:1: ( ( rule__ExternAggregatorDefinition__NameAssignment_2 ) ) - // InternalSolverLanguageParser.g:3639:2: ( rule__ExternAggregatorDefinition__NameAssignment_2 ) + // InternalSolverLanguageParser.g:5105:1: ( () ) + // InternalSolverLanguageParser.g:5106:2: () { - before(grammarAccess.getExternAggregatorDefinitionAccess().getNameAssignment_2()); - // InternalSolverLanguageParser.g:3640:2: ( rule__ExternAggregatorDefinition__NameAssignment_2 ) - // InternalSolverLanguageParser.g:3640:3: rule__ExternAggregatorDefinition__NameAssignment_2 + before(grammarAccess.getExpressionAccess().getForallConditionAction_2_1_0()); + // InternalSolverLanguageParser.g:5107:2: () + // InternalSolverLanguageParser.g:5107:3: { - pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__NameAssignment_2(); - - state._fsp--; - - } - after(grammarAccess.getExternAggregatorDefinitionAccess().getNameAssignment_2()); + after(grammarAccess.getExpressionAccess().getForallConditionAction_2_1_0()); } @@ -11524,10 +15984,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -11535,26 +15991,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__2__Impl" + // $ANTLR end "rule__Expression__Group_2_1__0__Impl" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__3" - // InternalSolverLanguageParser.g:3648:1: rule__ExternAggregatorDefinition__Group__3 : rule__ExternAggregatorDefinition__Group__3__Impl rule__ExternAggregatorDefinition__Group__4 ; - public final void rule__ExternAggregatorDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2_1__1" + // InternalSolverLanguageParser.g:5115:1: rule__Expression__Group_2_1__1 : rule__Expression__Group_2_1__1__Impl rule__Expression__Group_2_1__2 ; + public final void rule__Expression__Group_2_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3652:1: ( rule__ExternAggregatorDefinition__Group__3__Impl rule__ExternAggregatorDefinition__Group__4 ) - // InternalSolverLanguageParser.g:3653:2: rule__ExternAggregatorDefinition__Group__3__Impl rule__ExternAggregatorDefinition__Group__4 + // InternalSolverLanguageParser.g:5119:1: ( rule__Expression__Group_2_1__1__Impl rule__Expression__Group_2_1__2 ) + // InternalSolverLanguageParser.g:5120:2: rule__Expression__Group_2_1__1__Impl rule__Expression__Group_2_1__2 { - pushFollow(FOLLOW_9); - rule__ExternAggregatorDefinition__Group__3__Impl(); + pushFollow(FOLLOW_12); + rule__Expression__Group_2_1__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__Group__4(); + rule__Expression__Group_2_1__2(); state._fsp--; @@ -11573,25 +16029,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__3" + // $ANTLR end "rule__Expression__Group_2_1__1" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:3660:1: rule__ExternAggregatorDefinition__Group__3__Impl : ( LeftCurlyBracket ) ; - public final void rule__ExternAggregatorDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2_1__1__Impl" + // InternalSolverLanguageParser.g:5127:1: rule__Expression__Group_2_1__1__Impl : ( EqualsSignGreaterThanSign ) ; + public final void rule__Expression__Group_2_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3664:1: ( ( LeftCurlyBracket ) ) - // InternalSolverLanguageParser.g:3665:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:5131:1: ( ( EqualsSignGreaterThanSign ) ) + // InternalSolverLanguageParser.g:5132:1: ( EqualsSignGreaterThanSign ) { - // InternalSolverLanguageParser.g:3665:1: ( LeftCurlyBracket ) - // InternalSolverLanguageParser.g:3666:2: LeftCurlyBracket + // InternalSolverLanguageParser.g:5132:1: ( EqualsSignGreaterThanSign ) + // InternalSolverLanguageParser.g:5133:2: EqualsSignGreaterThanSign { - before(grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3()); - match(input,LeftCurlyBracket,FOLLOW_2); - after(grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3()); + before(grammarAccess.getExpressionAccess().getEqualsSignGreaterThanSignKeyword_2_1_1()); + match(input,EqualsSignGreaterThanSign,FOLLOW_2); + after(grammarAccess.getExpressionAccess().getEqualsSignGreaterThanSignKeyword_2_1_1()); } @@ -11610,26 +16066,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__3__Impl" + // $ANTLR end "rule__Expression__Group_2_1__1__Impl" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__4" - // InternalSolverLanguageParser.g:3675:1: rule__ExternAggregatorDefinition__Group__4 : rule__ExternAggregatorDefinition__Group__4__Impl rule__ExternAggregatorDefinition__Group__5 ; - public final void rule__ExternAggregatorDefinition__Group__4() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2_1__2" + // InternalSolverLanguageParser.g:5142:1: rule__Expression__Group_2_1__2 : rule__Expression__Group_2_1__2__Impl ; + public final void rule__Expression__Group_2_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3679:1: ( rule__ExternAggregatorDefinition__Group__4__Impl rule__ExternAggregatorDefinition__Group__5 ) - // InternalSolverLanguageParser.g:3680:2: rule__ExternAggregatorDefinition__Group__4__Impl rule__ExternAggregatorDefinition__Group__5 + // InternalSolverLanguageParser.g:5146:1: ( rule__Expression__Group_2_1__2__Impl ) + // InternalSolverLanguageParser.g:5147:2: rule__Expression__Group_2_1__2__Impl { - pushFollow(FOLLOW_15); - rule__ExternAggregatorDefinition__Group__4__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__Group__5(); + rule__Expression__Group_2_1__2__Impl(); state._fsp--; @@ -11648,35 +16099,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__4" + // $ANTLR end "rule__Expression__Group_2_1__2" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__4__Impl" - // InternalSolverLanguageParser.g:3687:1: rule__ExternAggregatorDefinition__Group__4__Impl : ( ( rule__ExternAggregatorDefinition__InputTypeAssignment_4 ) ) ; - public final void rule__ExternAggregatorDefinition__Group__4__Impl() throws RecognitionException { + // $ANTLR start "rule__Expression__Group_2_1__2__Impl" + // InternalSolverLanguageParser.g:5153:1: rule__Expression__Group_2_1__2__Impl : ( ( rule__Expression__BodyAssignment_2_1_2 ) ) ; + public final void rule__Expression__Group_2_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3691:1: ( ( ( rule__ExternAggregatorDefinition__InputTypeAssignment_4 ) ) ) - // InternalSolverLanguageParser.g:3692:1: ( ( rule__ExternAggregatorDefinition__InputTypeAssignment_4 ) ) + // InternalSolverLanguageParser.g:5157:1: ( ( ( rule__Expression__BodyAssignment_2_1_2 ) ) ) + // InternalSolverLanguageParser.g:5158:1: ( ( rule__Expression__BodyAssignment_2_1_2 ) ) { - // InternalSolverLanguageParser.g:3692:1: ( ( rule__ExternAggregatorDefinition__InputTypeAssignment_4 ) ) - // InternalSolverLanguageParser.g:3693:2: ( rule__ExternAggregatorDefinition__InputTypeAssignment_4 ) + // InternalSolverLanguageParser.g:5158:1: ( ( rule__Expression__BodyAssignment_2_1_2 ) ) + // InternalSolverLanguageParser.g:5159:2: ( rule__Expression__BodyAssignment_2_1_2 ) { - before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeAssignment_4()); - // InternalSolverLanguageParser.g:3694:2: ( rule__ExternAggregatorDefinition__InputTypeAssignment_4 ) - // InternalSolverLanguageParser.g:3694:3: rule__ExternAggregatorDefinition__InputTypeAssignment_4 + before(grammarAccess.getExpressionAccess().getBodyAssignment_2_1_2()); + // InternalSolverLanguageParser.g:5160:2: ( rule__Expression__BodyAssignment_2_1_2 ) + // InternalSolverLanguageParser.g:5160:3: rule__Expression__BodyAssignment_2_1_2 { pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__InputTypeAssignment_4(); + rule__Expression__BodyAssignment_2_1_2(); state._fsp--; } - after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeAssignment_4()); + after(grammarAccess.getExpressionAccess().getBodyAssignment_2_1_2()); } @@ -11695,26 +16146,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__4__Impl" + // $ANTLR end "rule__Expression__Group_2_1__2__Impl" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__5" - // InternalSolverLanguageParser.g:3702:1: rule__ExternAggregatorDefinition__Group__5 : rule__ExternAggregatorDefinition__Group__5__Impl rule__ExternAggregatorDefinition__Group__6 ; - public final void rule__ExternAggregatorDefinition__Group__5() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__0" + // InternalSolverLanguageParser.g:5169:1: rule__ConditionalExpression__Group__0 : rule__ConditionalExpression__Group__0__Impl rule__ConditionalExpression__Group__1 ; + public final void rule__ConditionalExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3706:1: ( rule__ExternAggregatorDefinition__Group__5__Impl rule__ExternAggregatorDefinition__Group__6 ) - // InternalSolverLanguageParser.g:3707:2: rule__ExternAggregatorDefinition__Group__5__Impl rule__ExternAggregatorDefinition__Group__6 + // InternalSolverLanguageParser.g:5173:1: ( rule__ConditionalExpression__Group__0__Impl rule__ConditionalExpression__Group__1 ) + // InternalSolverLanguageParser.g:5174:2: rule__ConditionalExpression__Group__0__Impl rule__ConditionalExpression__Group__1 { - pushFollow(FOLLOW_16); - rule__ExternAggregatorDefinition__Group__5__Impl(); + pushFollow(FOLLOW_12); + rule__ConditionalExpression__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__Group__6(); + rule__ConditionalExpression__Group__1(); state._fsp--; @@ -11733,25 +16184,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__5" + // $ANTLR end "rule__ConditionalExpression__Group__0" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__5__Impl" - // InternalSolverLanguageParser.g:3714:1: rule__ExternAggregatorDefinition__Group__5__Impl : ( FullStopFullStopFullStop ) ; - public final void rule__ExternAggregatorDefinition__Group__5__Impl() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:5181:1: rule__ConditionalExpression__Group__0__Impl : ( If ) ; + public final void rule__ConditionalExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3718:1: ( ( FullStopFullStopFullStop ) ) - // InternalSolverLanguageParser.g:3719:1: ( FullStopFullStopFullStop ) + // InternalSolverLanguageParser.g:5185:1: ( ( If ) ) + // InternalSolverLanguageParser.g:5186:1: ( If ) { - // InternalSolverLanguageParser.g:3719:1: ( FullStopFullStopFullStop ) - // InternalSolverLanguageParser.g:3720:2: FullStopFullStopFullStop + // InternalSolverLanguageParser.g:5186:1: ( If ) + // InternalSolverLanguageParser.g:5187:2: If { - before(grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5()); - match(input,FullStopFullStopFullStop,FOLLOW_2); - after(grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5()); + before(grammarAccess.getConditionalExpressionAccess().getIfKeyword_0()); + match(input,If,FOLLOW_2); + after(grammarAccess.getConditionalExpressionAccess().getIfKeyword_0()); } @@ -11770,21 +16221,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__5__Impl" + // $ANTLR end "rule__ConditionalExpression__Group__0__Impl" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__6" - // InternalSolverLanguageParser.g:3729:1: rule__ExternAggregatorDefinition__Group__6 : rule__ExternAggregatorDefinition__Group__6__Impl ; - public final void rule__ExternAggregatorDefinition__Group__6() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__1" + // InternalSolverLanguageParser.g:5196:1: rule__ConditionalExpression__Group__1 : rule__ConditionalExpression__Group__1__Impl rule__ConditionalExpression__Group__2 ; + public final void rule__ConditionalExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3733:1: ( rule__ExternAggregatorDefinition__Group__6__Impl ) - // InternalSolverLanguageParser.g:3734:2: rule__ExternAggregatorDefinition__Group__6__Impl + // InternalSolverLanguageParser.g:5200:1: ( rule__ConditionalExpression__Group__1__Impl rule__ConditionalExpression__Group__2 ) + // InternalSolverLanguageParser.g:5201:2: rule__ConditionalExpression__Group__1__Impl rule__ConditionalExpression__Group__2 { + pushFollow(FOLLOW_26); + rule__ConditionalExpression__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ExternAggregatorDefinition__Group__6__Impl(); + rule__ConditionalExpression__Group__2(); state._fsp--; @@ -11803,25 +16259,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__6" + // $ANTLR end "rule__ConditionalExpression__Group__1" - // $ANTLR start "rule__ExternAggregatorDefinition__Group__6__Impl" - // InternalSolverLanguageParser.g:3740:1: rule__ExternAggregatorDefinition__Group__6__Impl : ( RightCurlyBracket ) ; - public final void rule__ExternAggregatorDefinition__Group__6__Impl() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:5208:1: rule__ConditionalExpression__Group__1__Impl : ( ( rule__ConditionalExpression__ConditionAssignment_1 ) ) ; + public final void rule__ConditionalExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3744:1: ( ( RightCurlyBracket ) ) - // InternalSolverLanguageParser.g:3745:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:5212:1: ( ( ( rule__ConditionalExpression__ConditionAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:5213:1: ( ( rule__ConditionalExpression__ConditionAssignment_1 ) ) { - // InternalSolverLanguageParser.g:3745:1: ( RightCurlyBracket ) - // InternalSolverLanguageParser.g:3746:2: RightCurlyBracket + // InternalSolverLanguageParser.g:5213:1: ( ( rule__ConditionalExpression__ConditionAssignment_1 ) ) + // InternalSolverLanguageParser.g:5214:2: ( rule__ConditionalExpression__ConditionAssignment_1 ) { - before(grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6()); - match(input,RightCurlyBracket,FOLLOW_2); - after(grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6()); + before(grammarAccess.getConditionalExpressionAccess().getConditionAssignment_1()); + // InternalSolverLanguageParser.g:5215:2: ( rule__ConditionalExpression__ConditionAssignment_1 ) + // InternalSolverLanguageParser.g:5215:3: rule__ConditionalExpression__ConditionAssignment_1 + { + pushFollow(FOLLOW_2); + rule__ConditionalExpression__ConditionAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getConditionalExpressionAccess().getConditionAssignment_1()); } @@ -11840,26 +16306,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__Group__6__Impl" + // $ANTLR end "rule__ConditionalExpression__Group__1__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group__0" - // InternalSolverLanguageParser.g:3756:1: rule__ExternDatatypeDefinition__Group__0 : rule__ExternDatatypeDefinition__Group__0__Impl rule__ExternDatatypeDefinition__Group__1 ; - public final void rule__ExternDatatypeDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__2" + // InternalSolverLanguageParser.g:5223:1: rule__ConditionalExpression__Group__2 : rule__ConditionalExpression__Group__2__Impl rule__ConditionalExpression__Group__3 ; + public final void rule__ConditionalExpression__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3760:1: ( rule__ExternDatatypeDefinition__Group__0__Impl rule__ExternDatatypeDefinition__Group__1 ) - // InternalSolverLanguageParser.g:3761:2: rule__ExternDatatypeDefinition__Group__0__Impl rule__ExternDatatypeDefinition__Group__1 + // InternalSolverLanguageParser.g:5227:1: ( rule__ConditionalExpression__Group__2__Impl rule__ConditionalExpression__Group__3 ) + // InternalSolverLanguageParser.g:5228:2: rule__ConditionalExpression__Group__2__Impl rule__ConditionalExpression__Group__3 { - pushFollow(FOLLOW_17); - rule__ExternDatatypeDefinition__Group__0__Impl(); + pushFollow(FOLLOW_12); + rule__ConditionalExpression__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group__1(); + rule__ConditionalExpression__Group__3(); state._fsp--; @@ -11878,25 +16344,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group__0" + // $ANTLR end "rule__ConditionalExpression__Group__2" - // $ANTLR start "rule__ExternDatatypeDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:3768:1: rule__ExternDatatypeDefinition__Group__0__Impl : ( Extern ) ; - public final void rule__ExternDatatypeDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__2__Impl" + // InternalSolverLanguageParser.g:5235:1: rule__ConditionalExpression__Group__2__Impl : ( Then ) ; + public final void rule__ConditionalExpression__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3772:1: ( ( Extern ) ) - // InternalSolverLanguageParser.g:3773:1: ( Extern ) + // InternalSolverLanguageParser.g:5239:1: ( ( Then ) ) + // InternalSolverLanguageParser.g:5240:1: ( Then ) { - // InternalSolverLanguageParser.g:3773:1: ( Extern ) - // InternalSolverLanguageParser.g:3774:2: Extern + // InternalSolverLanguageParser.g:5240:1: ( Then ) + // InternalSolverLanguageParser.g:5241:2: Then { - before(grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0()); - match(input,Extern,FOLLOW_2); - after(grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0()); + before(grammarAccess.getConditionalExpressionAccess().getThenKeyword_2()); + match(input,Then,FOLLOW_2); + after(grammarAccess.getConditionalExpressionAccess().getThenKeyword_2()); } @@ -11915,26 +16381,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group__0__Impl" + // $ANTLR end "rule__ConditionalExpression__Group__2__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group__1" - // InternalSolverLanguageParser.g:3783:1: rule__ExternDatatypeDefinition__Group__1 : rule__ExternDatatypeDefinition__Group__1__Impl rule__ExternDatatypeDefinition__Group__2 ; - public final void rule__ExternDatatypeDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__3" + // InternalSolverLanguageParser.g:5250:1: rule__ConditionalExpression__Group__3 : rule__ConditionalExpression__Group__3__Impl rule__ConditionalExpression__Group__4 ; + public final void rule__ConditionalExpression__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3787:1: ( rule__ExternDatatypeDefinition__Group__1__Impl rule__ExternDatatypeDefinition__Group__2 ) - // InternalSolverLanguageParser.g:3788:2: rule__ExternDatatypeDefinition__Group__1__Impl rule__ExternDatatypeDefinition__Group__2 + // InternalSolverLanguageParser.g:5254:1: ( rule__ConditionalExpression__Group__3__Impl rule__ConditionalExpression__Group__4 ) + // InternalSolverLanguageParser.g:5255:2: rule__ConditionalExpression__Group__3__Impl rule__ConditionalExpression__Group__4 { - pushFollow(FOLLOW_9); - rule__ExternDatatypeDefinition__Group__1__Impl(); + pushFollow(FOLLOW_27); + rule__ConditionalExpression__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group__2(); + rule__ConditionalExpression__Group__4(); state._fsp--; @@ -11953,25 +16419,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group__1" + // $ANTLR end "rule__ConditionalExpression__Group__3" - // $ANTLR start "rule__ExternDatatypeDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:3795:1: rule__ExternDatatypeDefinition__Group__1__Impl : ( Datatype ) ; - public final void rule__ExternDatatypeDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__3__Impl" + // InternalSolverLanguageParser.g:5262:1: rule__ConditionalExpression__Group__3__Impl : ( ( rule__ConditionalExpression__ThenAssignment_3 ) ) ; + public final void rule__ConditionalExpression__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3799:1: ( ( Datatype ) ) - // InternalSolverLanguageParser.g:3800:1: ( Datatype ) + // InternalSolverLanguageParser.g:5266:1: ( ( ( rule__ConditionalExpression__ThenAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:5267:1: ( ( rule__ConditionalExpression__ThenAssignment_3 ) ) { - // InternalSolverLanguageParser.g:3800:1: ( Datatype ) - // InternalSolverLanguageParser.g:3801:2: Datatype + // InternalSolverLanguageParser.g:5267:1: ( ( rule__ConditionalExpression__ThenAssignment_3 ) ) + // InternalSolverLanguageParser.g:5268:2: ( rule__ConditionalExpression__ThenAssignment_3 ) { - before(grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1()); - match(input,Datatype,FOLLOW_2); - after(grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1()); + before(grammarAccess.getConditionalExpressionAccess().getThenAssignment_3()); + // InternalSolverLanguageParser.g:5269:2: ( rule__ConditionalExpression__ThenAssignment_3 ) + // InternalSolverLanguageParser.g:5269:3: rule__ConditionalExpression__ThenAssignment_3 + { + pushFollow(FOLLOW_2); + rule__ConditionalExpression__ThenAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getConditionalExpressionAccess().getThenAssignment_3()); } @@ -11990,26 +16466,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group__1__Impl" + // $ANTLR end "rule__ConditionalExpression__Group__3__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group__2" - // InternalSolverLanguageParser.g:3810:1: rule__ExternDatatypeDefinition__Group__2 : rule__ExternDatatypeDefinition__Group__2__Impl rule__ExternDatatypeDefinition__Group__3 ; - public final void rule__ExternDatatypeDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__4" + // InternalSolverLanguageParser.g:5277:1: rule__ConditionalExpression__Group__4 : rule__ConditionalExpression__Group__4__Impl rule__ConditionalExpression__Group__5 ; + public final void rule__ConditionalExpression__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3814:1: ( rule__ExternDatatypeDefinition__Group__2__Impl rule__ExternDatatypeDefinition__Group__3 ) - // InternalSolverLanguageParser.g:3815:2: rule__ExternDatatypeDefinition__Group__2__Impl rule__ExternDatatypeDefinition__Group__3 + // InternalSolverLanguageParser.g:5281:1: ( rule__ConditionalExpression__Group__4__Impl rule__ConditionalExpression__Group__5 ) + // InternalSolverLanguageParser.g:5282:2: rule__ConditionalExpression__Group__4__Impl rule__ConditionalExpression__Group__5 { - pushFollow(FOLLOW_18); - rule__ExternDatatypeDefinition__Group__2__Impl(); + pushFollow(FOLLOW_12); + rule__ConditionalExpression__Group__4__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group__3(); + rule__ConditionalExpression__Group__5(); state._fsp--; @@ -12028,35 +16504,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group__2" + // $ANTLR end "rule__ConditionalExpression__Group__4" - // $ANTLR start "rule__ExternDatatypeDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:3822:1: rule__ExternDatatypeDefinition__Group__2__Impl : ( ( rule__ExternDatatypeDefinition__NameAssignment_2 ) ) ; - public final void rule__ExternDatatypeDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__4__Impl" + // InternalSolverLanguageParser.g:5289:1: rule__ConditionalExpression__Group__4__Impl : ( Else ) ; + public final void rule__ConditionalExpression__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3826:1: ( ( ( rule__ExternDatatypeDefinition__NameAssignment_2 ) ) ) - // InternalSolverLanguageParser.g:3827:1: ( ( rule__ExternDatatypeDefinition__NameAssignment_2 ) ) - { - // InternalSolverLanguageParser.g:3827:1: ( ( rule__ExternDatatypeDefinition__NameAssignment_2 ) ) - // InternalSolverLanguageParser.g:3828:2: ( rule__ExternDatatypeDefinition__NameAssignment_2 ) + // InternalSolverLanguageParser.g:5293:1: ( ( Else ) ) + // InternalSolverLanguageParser.g:5294:1: ( Else ) { - before(grammarAccess.getExternDatatypeDefinitionAccess().getNameAssignment_2()); - // InternalSolverLanguageParser.g:3829:2: ( rule__ExternDatatypeDefinition__NameAssignment_2 ) - // InternalSolverLanguageParser.g:3829:3: rule__ExternDatatypeDefinition__NameAssignment_2 + // InternalSolverLanguageParser.g:5294:1: ( Else ) + // InternalSolverLanguageParser.g:5295:2: Else { - pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__NameAssignment_2(); - - state._fsp--; - - - } - - after(grammarAccess.getExternDatatypeDefinitionAccess().getNameAssignment_2()); + before(grammarAccess.getConditionalExpressionAccess().getElseKeyword_4()); + match(input,Else,FOLLOW_2); + after(grammarAccess.getConditionalExpressionAccess().getElseKeyword_4()); } @@ -12075,21 +16541,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group__2__Impl" + // $ANTLR end "rule__ConditionalExpression__Group__4__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group__3" - // InternalSolverLanguageParser.g:3837:1: rule__ExternDatatypeDefinition__Group__3 : rule__ExternDatatypeDefinition__Group__3__Impl ; - public final void rule__ExternDatatypeDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__5" + // InternalSolverLanguageParser.g:5304:1: rule__ConditionalExpression__Group__5 : rule__ConditionalExpression__Group__5__Impl ; + public final void rule__ConditionalExpression__Group__5() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3841:1: ( rule__ExternDatatypeDefinition__Group__3__Impl ) - // InternalSolverLanguageParser.g:3842:2: rule__ExternDatatypeDefinition__Group__3__Impl + // InternalSolverLanguageParser.g:5308:1: ( rule__ConditionalExpression__Group__5__Impl ) + // InternalSolverLanguageParser.g:5309:2: rule__ConditionalExpression__Group__5__Impl { pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group__3__Impl(); + rule__ConditionalExpression__Group__5__Impl(); state._fsp--; @@ -12108,35 +16574,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group__3" + // $ANTLR end "rule__ConditionalExpression__Group__5" - // $ANTLR start "rule__ExternDatatypeDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:3848:1: rule__ExternDatatypeDefinition__Group__3__Impl : ( ( rule__ExternDatatypeDefinition__Group_3__0 ) ) ; - public final void rule__ExternDatatypeDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__Group__5__Impl" + // InternalSolverLanguageParser.g:5315:1: rule__ConditionalExpression__Group__5__Impl : ( ( rule__ConditionalExpression__ElseAssignment_5 ) ) ; + public final void rule__ConditionalExpression__Group__5__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3852:1: ( ( ( rule__ExternDatatypeDefinition__Group_3__0 ) ) ) - // InternalSolverLanguageParser.g:3853:1: ( ( rule__ExternDatatypeDefinition__Group_3__0 ) ) + // InternalSolverLanguageParser.g:5319:1: ( ( ( rule__ConditionalExpression__ElseAssignment_5 ) ) ) + // InternalSolverLanguageParser.g:5320:1: ( ( rule__ConditionalExpression__ElseAssignment_5 ) ) { - // InternalSolverLanguageParser.g:3853:1: ( ( rule__ExternDatatypeDefinition__Group_3__0 ) ) - // InternalSolverLanguageParser.g:3854:2: ( rule__ExternDatatypeDefinition__Group_3__0 ) + // InternalSolverLanguageParser.g:5320:1: ( ( rule__ConditionalExpression__ElseAssignment_5 ) ) + // InternalSolverLanguageParser.g:5321:2: ( rule__ConditionalExpression__ElseAssignment_5 ) { - before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3()); - // InternalSolverLanguageParser.g:3855:2: ( rule__ExternDatatypeDefinition__Group_3__0 ) - // InternalSolverLanguageParser.g:3855:3: rule__ExternDatatypeDefinition__Group_3__0 + before(grammarAccess.getConditionalExpressionAccess().getElseAssignment_5()); + // InternalSolverLanguageParser.g:5322:2: ( rule__ConditionalExpression__ElseAssignment_5 ) + // InternalSolverLanguageParser.g:5322:3: rule__ConditionalExpression__ElseAssignment_5 { pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group_3__0(); + rule__ConditionalExpression__ElseAssignment_5(); state._fsp--; } - after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3()); + after(grammarAccess.getConditionalExpressionAccess().getElseAssignment_5()); } @@ -12155,26 +16621,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group__3__Impl" + // $ANTLR end "rule__ConditionalExpression__Group__5__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3__0" - // InternalSolverLanguageParser.g:3864:1: rule__ExternDatatypeDefinition__Group_3__0 : rule__ExternDatatypeDefinition__Group_3__0__Impl rule__ExternDatatypeDefinition__Group_3__1 ; - public final void rule__ExternDatatypeDefinition__Group_3__0() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__0" + // InternalSolverLanguageParser.g:5331:1: rule__LetExpression__Group__0 : rule__LetExpression__Group__0__Impl rule__LetExpression__Group__1 ; + public final void rule__LetExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3868:1: ( rule__ExternDatatypeDefinition__Group_3__0__Impl rule__ExternDatatypeDefinition__Group_3__1 ) - // InternalSolverLanguageParser.g:3869:2: rule__ExternDatatypeDefinition__Group_3__0__Impl rule__ExternDatatypeDefinition__Group_3__1 + // InternalSolverLanguageParser.g:5335:1: ( rule__LetExpression__Group__0__Impl rule__LetExpression__Group__1 ) + // InternalSolverLanguageParser.g:5336:2: rule__LetExpression__Group__0__Impl rule__LetExpression__Group__1 { - pushFollow(FOLLOW_9); - rule__ExternDatatypeDefinition__Group_3__0__Impl(); + pushFollow(FOLLOW_6); + rule__LetExpression__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group_3__1(); + rule__LetExpression__Group__1(); state._fsp--; @@ -12193,25 +16659,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3__0" + // $ANTLR end "rule__LetExpression__Group__0" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3__0__Impl" - // InternalSolverLanguageParser.g:3876:1: rule__ExternDatatypeDefinition__Group_3__0__Impl : ( Extends ) ; - public final void rule__ExternDatatypeDefinition__Group_3__0__Impl() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:5343:1: rule__LetExpression__Group__0__Impl : ( Let ) ; + public final void rule__LetExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3880:1: ( ( Extends ) ) - // InternalSolverLanguageParser.g:3881:1: ( Extends ) + // InternalSolverLanguageParser.g:5347:1: ( ( Let ) ) + // InternalSolverLanguageParser.g:5348:1: ( Let ) { - // InternalSolverLanguageParser.g:3881:1: ( Extends ) - // InternalSolverLanguageParser.g:3882:2: Extends + // InternalSolverLanguageParser.g:5348:1: ( Let ) + // InternalSolverLanguageParser.g:5349:2: Let { - before(grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0()); - match(input,Extends,FOLLOW_2); - after(grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0()); + before(grammarAccess.getLetExpressionAccess().getLetKeyword_0()); + match(input,Let,FOLLOW_2); + after(grammarAccess.getLetExpressionAccess().getLetKeyword_0()); } @@ -12230,26 +16696,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3__0__Impl" + // $ANTLR end "rule__LetExpression__Group__0__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3__1" - // InternalSolverLanguageParser.g:3891:1: rule__ExternDatatypeDefinition__Group_3__1 : rule__ExternDatatypeDefinition__Group_3__1__Impl rule__ExternDatatypeDefinition__Group_3__2 ; - public final void rule__ExternDatatypeDefinition__Group_3__1() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__1" + // InternalSolverLanguageParser.g:5358:1: rule__LetExpression__Group__1 : rule__LetExpression__Group__1__Impl rule__LetExpression__Group__2 ; + public final void rule__LetExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3895:1: ( rule__ExternDatatypeDefinition__Group_3__1__Impl rule__ExternDatatypeDefinition__Group_3__2 ) - // InternalSolverLanguageParser.g:3896:2: rule__ExternDatatypeDefinition__Group_3__1__Impl rule__ExternDatatypeDefinition__Group_3__2 + // InternalSolverLanguageParser.g:5362:1: ( rule__LetExpression__Group__1__Impl rule__LetExpression__Group__2 ) + // InternalSolverLanguageParser.g:5363:2: rule__LetExpression__Group__1__Impl rule__LetExpression__Group__2 { - pushFollow(FOLLOW_19); - rule__ExternDatatypeDefinition__Group_3__1__Impl(); + pushFollow(FOLLOW_28); + rule__LetExpression__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group_3__2(); + rule__LetExpression__Group__2(); state._fsp--; @@ -12268,35 +16734,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3__1" + // $ANTLR end "rule__LetExpression__Group__1" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3__1__Impl" - // InternalSolverLanguageParser.g:3903:1: rule__ExternDatatypeDefinition__Group_3__1__Impl : ( ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 ) ) ; - public final void rule__ExternDatatypeDefinition__Group_3__1__Impl() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:5370:1: rule__LetExpression__Group__1__Impl : ( ( rule__LetExpression__BindingsAssignment_1 ) ) ; + public final void rule__LetExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3907:1: ( ( ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 ) ) ) - // InternalSolverLanguageParser.g:3908:1: ( ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 ) ) + // InternalSolverLanguageParser.g:5374:1: ( ( ( rule__LetExpression__BindingsAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:5375:1: ( ( rule__LetExpression__BindingsAssignment_1 ) ) { - // InternalSolverLanguageParser.g:3908:1: ( ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 ) ) - // InternalSolverLanguageParser.g:3909:2: ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 ) + // InternalSolverLanguageParser.g:5375:1: ( ( rule__LetExpression__BindingsAssignment_1 ) ) + // InternalSolverLanguageParser.g:5376:2: ( rule__LetExpression__BindingsAssignment_1 ) { - before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_1()); - // InternalSolverLanguageParser.g:3910:2: ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 ) - // InternalSolverLanguageParser.g:3910:3: rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 + before(grammarAccess.getLetExpressionAccess().getBindingsAssignment_1()); + // InternalSolverLanguageParser.g:5377:2: ( rule__LetExpression__BindingsAssignment_1 ) + // InternalSolverLanguageParser.g:5377:3: rule__LetExpression__BindingsAssignment_1 { pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__SupertypesAssignment_3_1(); + rule__LetExpression__BindingsAssignment_1(); state._fsp--; } - after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_1()); + after(grammarAccess.getLetExpressionAccess().getBindingsAssignment_1()); } @@ -12315,21 +16781,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3__1__Impl" + // $ANTLR end "rule__LetExpression__Group__1__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3__2" - // InternalSolverLanguageParser.g:3918:1: rule__ExternDatatypeDefinition__Group_3__2 : rule__ExternDatatypeDefinition__Group_3__2__Impl ; - public final void rule__ExternDatatypeDefinition__Group_3__2() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__2" + // InternalSolverLanguageParser.g:5385:1: rule__LetExpression__Group__2 : rule__LetExpression__Group__2__Impl rule__LetExpression__Group__3 ; + public final void rule__LetExpression__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3922:1: ( rule__ExternDatatypeDefinition__Group_3__2__Impl ) - // InternalSolverLanguageParser.g:3923:2: rule__ExternDatatypeDefinition__Group_3__2__Impl + // InternalSolverLanguageParser.g:5389:1: ( rule__LetExpression__Group__2__Impl rule__LetExpression__Group__3 ) + // InternalSolverLanguageParser.g:5390:2: rule__LetExpression__Group__2__Impl rule__LetExpression__Group__3 { + pushFollow(FOLLOW_28); + rule__LetExpression__Group__2__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group_3__2__Impl(); + rule__LetExpression__Group__3(); state._fsp--; @@ -12348,40 +16819,40 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3__2" + // $ANTLR end "rule__LetExpression__Group__2" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3__2__Impl" - // InternalSolverLanguageParser.g:3929:1: rule__ExternDatatypeDefinition__Group_3__2__Impl : ( ( rule__ExternDatatypeDefinition__Group_3_2__0 )* ) ; - public final void rule__ExternDatatypeDefinition__Group_3__2__Impl() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__2__Impl" + // InternalSolverLanguageParser.g:5397:1: rule__LetExpression__Group__2__Impl : ( ( rule__LetExpression__Group_2__0 )* ) ; + public final void rule__LetExpression__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3933:1: ( ( ( rule__ExternDatatypeDefinition__Group_3_2__0 )* ) ) - // InternalSolverLanguageParser.g:3934:1: ( ( rule__ExternDatatypeDefinition__Group_3_2__0 )* ) + // InternalSolverLanguageParser.g:5401:1: ( ( ( rule__LetExpression__Group_2__0 )* ) ) + // InternalSolverLanguageParser.g:5402:1: ( ( rule__LetExpression__Group_2__0 )* ) { - // InternalSolverLanguageParser.g:3934:1: ( ( rule__ExternDatatypeDefinition__Group_3_2__0 )* ) - // InternalSolverLanguageParser.g:3935:2: ( rule__ExternDatatypeDefinition__Group_3_2__0 )* + // InternalSolverLanguageParser.g:5402:1: ( ( rule__LetExpression__Group_2__0 )* ) + // InternalSolverLanguageParser.g:5403:2: ( rule__LetExpression__Group_2__0 )* { - before(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3_2()); - // InternalSolverLanguageParser.g:3936:2: ( rule__ExternDatatypeDefinition__Group_3_2__0 )* - loop29: + before(grammarAccess.getLetExpressionAccess().getGroup_2()); + // InternalSolverLanguageParser.g:5404:2: ( rule__LetExpression__Group_2__0 )* + loop39: do { - int alt29=2; - int LA29_0 = input.LA(1); + int alt39=2; + int LA39_0 = input.LA(1); - if ( (LA29_0==Comma) ) { - alt29=1; + if ( (LA39_0==Comma) ) { + alt39=1; } - switch (alt29) { + switch (alt39) { case 1 : - // InternalSolverLanguageParser.g:3936:3: rule__ExternDatatypeDefinition__Group_3_2__0 + // InternalSolverLanguageParser.g:5404:3: rule__LetExpression__Group_2__0 { - pushFollow(FOLLOW_20); - rule__ExternDatatypeDefinition__Group_3_2__0(); + pushFollow(FOLLOW_29); + rule__LetExpression__Group_2__0(); state._fsp--; @@ -12390,11 +16861,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP break; default : - break loop29; + break loop39; } } while (true); - after(grammarAccess.getExternDatatypeDefinitionAccess().getGroup_3_2()); + after(grammarAccess.getLetExpressionAccess().getGroup_2()); } @@ -12413,26 +16884,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3__2__Impl" + // $ANTLR end "rule__LetExpression__Group__2__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3_2__0" - // InternalSolverLanguageParser.g:3945:1: rule__ExternDatatypeDefinition__Group_3_2__0 : rule__ExternDatatypeDefinition__Group_3_2__0__Impl rule__ExternDatatypeDefinition__Group_3_2__1 ; - public final void rule__ExternDatatypeDefinition__Group_3_2__0() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__3" + // InternalSolverLanguageParser.g:5412:1: rule__LetExpression__Group__3 : rule__LetExpression__Group__3__Impl rule__LetExpression__Group__4 ; + public final void rule__LetExpression__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3949:1: ( rule__ExternDatatypeDefinition__Group_3_2__0__Impl rule__ExternDatatypeDefinition__Group_3_2__1 ) - // InternalSolverLanguageParser.g:3950:2: rule__ExternDatatypeDefinition__Group_3_2__0__Impl rule__ExternDatatypeDefinition__Group_3_2__1 + // InternalSolverLanguageParser.g:5416:1: ( rule__LetExpression__Group__3__Impl rule__LetExpression__Group__4 ) + // InternalSolverLanguageParser.g:5417:2: rule__LetExpression__Group__3__Impl rule__LetExpression__Group__4 { - pushFollow(FOLLOW_9); - rule__ExternDatatypeDefinition__Group_3_2__0__Impl(); + pushFollow(FOLLOW_12); + rule__LetExpression__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group_3_2__1(); + rule__LetExpression__Group__4(); state._fsp--; @@ -12451,25 +16922,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3_2__0" + // $ANTLR end "rule__LetExpression__Group__3" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3_2__0__Impl" - // InternalSolverLanguageParser.g:3957:1: rule__ExternDatatypeDefinition__Group_3_2__0__Impl : ( Comma ) ; - public final void rule__ExternDatatypeDefinition__Group_3_2__0__Impl() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__3__Impl" + // InternalSolverLanguageParser.g:5424:1: rule__LetExpression__Group__3__Impl : ( In ) ; + public final void rule__LetExpression__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3961:1: ( ( Comma ) ) - // InternalSolverLanguageParser.g:3962:1: ( Comma ) + // InternalSolverLanguageParser.g:5428:1: ( ( In ) ) + // InternalSolverLanguageParser.g:5429:1: ( In ) { - // InternalSolverLanguageParser.g:3962:1: ( Comma ) - // InternalSolverLanguageParser.g:3963:2: Comma + // InternalSolverLanguageParser.g:5429:1: ( In ) + // InternalSolverLanguageParser.g:5430:2: In { - before(grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0()); - match(input,Comma,FOLLOW_2); - after(grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0()); + before(grammarAccess.getLetExpressionAccess().getInKeyword_3()); + match(input,In,FOLLOW_2); + after(grammarAccess.getLetExpressionAccess().getInKeyword_3()); } @@ -12488,21 +16959,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3_2__0__Impl" + // $ANTLR end "rule__LetExpression__Group__3__Impl" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3_2__1" - // InternalSolverLanguageParser.g:3972:1: rule__ExternDatatypeDefinition__Group_3_2__1 : rule__ExternDatatypeDefinition__Group_3_2__1__Impl ; - public final void rule__ExternDatatypeDefinition__Group_3_2__1() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__4" + // InternalSolverLanguageParser.g:5439:1: rule__LetExpression__Group__4 : rule__LetExpression__Group__4__Impl ; + public final void rule__LetExpression__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3976:1: ( rule__ExternDatatypeDefinition__Group_3_2__1__Impl ) - // InternalSolverLanguageParser.g:3977:2: rule__ExternDatatypeDefinition__Group_3_2__1__Impl + // InternalSolverLanguageParser.g:5443:1: ( rule__LetExpression__Group__4__Impl ) + // InternalSolverLanguageParser.g:5444:2: rule__LetExpression__Group__4__Impl { pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__Group_3_2__1__Impl(); + rule__LetExpression__Group__4__Impl(); state._fsp--; @@ -12521,35 +16992,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3_2__1" + // $ANTLR end "rule__LetExpression__Group__4" - // $ANTLR start "rule__ExternDatatypeDefinition__Group_3_2__1__Impl" - // InternalSolverLanguageParser.g:3983:1: rule__ExternDatatypeDefinition__Group_3_2__1__Impl : ( ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 ) ) ; - public final void rule__ExternDatatypeDefinition__Group_3_2__1__Impl() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group__4__Impl" + // InternalSolverLanguageParser.g:5450:1: rule__LetExpression__Group__4__Impl : ( ( rule__LetExpression__BodyAssignment_4 ) ) ; + public final void rule__LetExpression__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:3987:1: ( ( ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 ) ) ) - // InternalSolverLanguageParser.g:3988:1: ( ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 ) ) + // InternalSolverLanguageParser.g:5454:1: ( ( ( rule__LetExpression__BodyAssignment_4 ) ) ) + // InternalSolverLanguageParser.g:5455:1: ( ( rule__LetExpression__BodyAssignment_4 ) ) { - // InternalSolverLanguageParser.g:3988:1: ( ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 ) ) - // InternalSolverLanguageParser.g:3989:2: ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 ) + // InternalSolverLanguageParser.g:5455:1: ( ( rule__LetExpression__BodyAssignment_4 ) ) + // InternalSolverLanguageParser.g:5456:2: ( rule__LetExpression__BodyAssignment_4 ) { - before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_2_1()); - // InternalSolverLanguageParser.g:3990:2: ( rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 ) - // InternalSolverLanguageParser.g:3990:3: rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 + before(grammarAccess.getLetExpressionAccess().getBodyAssignment_4()); + // InternalSolverLanguageParser.g:5457:2: ( rule__LetExpression__BodyAssignment_4 ) + // InternalSolverLanguageParser.g:5457:3: rule__LetExpression__BodyAssignment_4 { pushFollow(FOLLOW_2); - rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1(); + rule__LetExpression__BodyAssignment_4(); state._fsp--; } - after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesAssignment_3_2_1()); + after(grammarAccess.getLetExpressionAccess().getBodyAssignment_4()); } @@ -12568,26 +17039,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__Group_3_2__1__Impl" + // $ANTLR end "rule__LetExpression__Group__4__Impl" - // $ANTLR start "rule__Variable__Group__0" - // InternalSolverLanguageParser.g:3999:1: rule__Variable__Group__0 : rule__Variable__Group__0__Impl rule__Variable__Group__1 ; - public final void rule__Variable__Group__0() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group_2__0" + // InternalSolverLanguageParser.g:5466:1: rule__LetExpression__Group_2__0 : rule__LetExpression__Group_2__0__Impl rule__LetExpression__Group_2__1 ; + public final void rule__LetExpression__Group_2__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4003:1: ( rule__Variable__Group__0__Impl rule__Variable__Group__1 ) - // InternalSolverLanguageParser.g:4004:2: rule__Variable__Group__0__Impl rule__Variable__Group__1 + // InternalSolverLanguageParser.g:5470:1: ( rule__LetExpression__Group_2__0__Impl rule__LetExpression__Group_2__1 ) + // InternalSolverLanguageParser.g:5471:2: rule__LetExpression__Group_2__0__Impl rule__LetExpression__Group_2__1 { - pushFollow(FOLLOW_21); - rule__Variable__Group__0__Impl(); + pushFollow(FOLLOW_6); + rule__LetExpression__Group_2__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Variable__Group__1(); + rule__LetExpression__Group_2__1(); state._fsp--; @@ -12606,53 +17077,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Variable__Group__0" + // $ANTLR end "rule__LetExpression__Group_2__0" - // $ANTLR start "rule__Variable__Group__0__Impl" - // InternalSolverLanguageParser.g:4011:1: rule__Variable__Group__0__Impl : ( ( rule__Variable__TypeAssignment_0 )? ) ; - public final void rule__Variable__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group_2__0__Impl" + // InternalSolverLanguageParser.g:5478:1: rule__LetExpression__Group_2__0__Impl : ( Comma ) ; + public final void rule__LetExpression__Group_2__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4015:1: ( ( ( rule__Variable__TypeAssignment_0 )? ) ) - // InternalSolverLanguageParser.g:4016:1: ( ( rule__Variable__TypeAssignment_0 )? ) + // InternalSolverLanguageParser.g:5482:1: ( ( Comma ) ) + // InternalSolverLanguageParser.g:5483:1: ( Comma ) { - // InternalSolverLanguageParser.g:4016:1: ( ( rule__Variable__TypeAssignment_0 )? ) - // InternalSolverLanguageParser.g:4017:2: ( rule__Variable__TypeAssignment_0 )? + // InternalSolverLanguageParser.g:5483:1: ( Comma ) + // InternalSolverLanguageParser.g:5484:2: Comma { - before(grammarAccess.getVariableAccess().getTypeAssignment_0()); - // InternalSolverLanguageParser.g:4018:2: ( rule__Variable__TypeAssignment_0 )? - int alt30=2; - int LA30_0 = input.LA(1); - - if ( (LA30_0==RULE_ID) ) { - int LA30_1 = input.LA(2); - - if ( (LA30_1==FullStop||LA30_1==RULE_ID) ) { - alt30=1; - } - } - else if ( (LA30_0==RULE_QUOTED_ID) ) { - alt30=1; - } - switch (alt30) { - case 1 : - // InternalSolverLanguageParser.g:4018:3: rule__Variable__TypeAssignment_0 - { - pushFollow(FOLLOW_2); - rule__Variable__TypeAssignment_0(); - - state._fsp--; - - - } - break; - - } - - after(grammarAccess.getVariableAccess().getTypeAssignment_0()); + before(grammarAccess.getLetExpressionAccess().getCommaKeyword_2_0()); + match(input,Comma,FOLLOW_2); + after(grammarAccess.getLetExpressionAccess().getCommaKeyword_2_0()); } @@ -12671,21 +17114,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Variable__Group__0__Impl" + // $ANTLR end "rule__LetExpression__Group_2__0__Impl" - // $ANTLR start "rule__Variable__Group__1" - // InternalSolverLanguageParser.g:4026:1: rule__Variable__Group__1 : rule__Variable__Group__1__Impl ; - public final void rule__Variable__Group__1() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group_2__1" + // InternalSolverLanguageParser.g:5493:1: rule__LetExpression__Group_2__1 : rule__LetExpression__Group_2__1__Impl ; + public final void rule__LetExpression__Group_2__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4030:1: ( rule__Variable__Group__1__Impl ) - // InternalSolverLanguageParser.g:4031:2: rule__Variable__Group__1__Impl + // InternalSolverLanguageParser.g:5497:1: ( rule__LetExpression__Group_2__1__Impl ) + // InternalSolverLanguageParser.g:5498:2: rule__LetExpression__Group_2__1__Impl { pushFollow(FOLLOW_2); - rule__Variable__Group__1__Impl(); + rule__LetExpression__Group_2__1__Impl(); state._fsp--; @@ -12704,35 +17147,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Variable__Group__1" + // $ANTLR end "rule__LetExpression__Group_2__1" - // $ANTLR start "rule__Variable__Group__1__Impl" - // InternalSolverLanguageParser.g:4037:1: rule__Variable__Group__1__Impl : ( ( rule__Variable__NameAssignment_1 ) ) ; - public final void rule__Variable__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__LetExpression__Group_2__1__Impl" + // InternalSolverLanguageParser.g:5504:1: rule__LetExpression__Group_2__1__Impl : ( ( rule__LetExpression__BindingsAssignment_2_1 ) ) ; + public final void rule__LetExpression__Group_2__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4041:1: ( ( ( rule__Variable__NameAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:4042:1: ( ( rule__Variable__NameAssignment_1 ) ) + // InternalSolverLanguageParser.g:5508:1: ( ( ( rule__LetExpression__BindingsAssignment_2_1 ) ) ) + // InternalSolverLanguageParser.g:5509:1: ( ( rule__LetExpression__BindingsAssignment_2_1 ) ) { - // InternalSolverLanguageParser.g:4042:1: ( ( rule__Variable__NameAssignment_1 ) ) - // InternalSolverLanguageParser.g:4043:2: ( rule__Variable__NameAssignment_1 ) + // InternalSolverLanguageParser.g:5509:1: ( ( rule__LetExpression__BindingsAssignment_2_1 ) ) + // InternalSolverLanguageParser.g:5510:2: ( rule__LetExpression__BindingsAssignment_2_1 ) { - before(grammarAccess.getVariableAccess().getNameAssignment_1()); - // InternalSolverLanguageParser.g:4044:2: ( rule__Variable__NameAssignment_1 ) - // InternalSolverLanguageParser.g:4044:3: rule__Variable__NameAssignment_1 + before(grammarAccess.getLetExpressionAccess().getBindingsAssignment_2_1()); + // InternalSolverLanguageParser.g:5511:2: ( rule__LetExpression__BindingsAssignment_2_1 ) + // InternalSolverLanguageParser.g:5511:3: rule__LetExpression__BindingsAssignment_2_1 { pushFollow(FOLLOW_2); - rule__Variable__NameAssignment_1(); + rule__LetExpression__BindingsAssignment_2_1(); state._fsp--; } - after(grammarAccess.getVariableAccess().getNameAssignment_1()); + after(grammarAccess.getLetExpressionAccess().getBindingsAssignment_2_1()); } @@ -12751,26 +17194,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Variable__Group__1__Impl" + // $ANTLR end "rule__LetExpression__Group_2__1__Impl" - // $ANTLR start "rule__IfElse__Group__0" - // InternalSolverLanguageParser.g:4053:1: rule__IfElse__Group__0 : rule__IfElse__Group__0__Impl rule__IfElse__Group__1 ; - public final void rule__IfElse__Group__0() throws RecognitionException { + // $ANTLR start "rule__LetBinding__Group__0" + // InternalSolverLanguageParser.g:5520:1: rule__LetBinding__Group__0 : rule__LetBinding__Group__0__Impl rule__LetBinding__Group__1 ; + public final void rule__LetBinding__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4057:1: ( rule__IfElse__Group__0__Impl rule__IfElse__Group__1 ) - // InternalSolverLanguageParser.g:4058:2: rule__IfElse__Group__0__Impl rule__IfElse__Group__1 + // InternalSolverLanguageParser.g:5524:1: ( rule__LetBinding__Group__0__Impl rule__LetBinding__Group__1 ) + // InternalSolverLanguageParser.g:5525:2: rule__LetBinding__Group__0__Impl rule__LetBinding__Group__1 { - pushFollow(FOLLOW_7); - rule__IfElse__Group__0__Impl(); + pushFollow(FOLLOW_6); + rule__LetBinding__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__IfElse__Group__1(); + rule__LetBinding__Group__1(); state._fsp--; @@ -12789,25 +17232,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__0" + // $ANTLR end "rule__LetBinding__Group__0" - // $ANTLR start "rule__IfElse__Group__0__Impl" - // InternalSolverLanguageParser.g:4065:1: rule__IfElse__Group__0__Impl : ( If ) ; - public final void rule__IfElse__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__LetBinding__Group__0__Impl" + // InternalSolverLanguageParser.g:5532:1: rule__LetBinding__Group__0__Impl : ( ( rule__LetBinding__TypeAssignment_0 )? ) ; + public final void rule__LetBinding__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4069:1: ( ( If ) ) - // InternalSolverLanguageParser.g:4070:1: ( If ) + // InternalSolverLanguageParser.g:5536:1: ( ( ( rule__LetBinding__TypeAssignment_0 )? ) ) + // InternalSolverLanguageParser.g:5537:1: ( ( rule__LetBinding__TypeAssignment_0 )? ) { - // InternalSolverLanguageParser.g:4070:1: ( If ) - // InternalSolverLanguageParser.g:4071:2: If + // InternalSolverLanguageParser.g:5537:1: ( ( rule__LetBinding__TypeAssignment_0 )? ) + // InternalSolverLanguageParser.g:5538:2: ( rule__LetBinding__TypeAssignment_0 )? { - before(grammarAccess.getIfElseAccess().getIfKeyword_0()); - match(input,If,FOLLOW_2); - after(grammarAccess.getIfElseAccess().getIfKeyword_0()); + before(grammarAccess.getLetBindingAccess().getTypeAssignment_0()); + // InternalSolverLanguageParser.g:5539:2: ( rule__LetBinding__TypeAssignment_0 )? + int alt40=2; + int LA40_0 = input.LA(1); + + if ( (LA40_0==RULE_ID) ) { + int LA40_1 = input.LA(2); + + if ( (LA40_1==ColonColon||LA40_1==RULE_ID) ) { + alt40=1; + } + } + else if ( (LA40_0==Object||LA40_0==RULE_QUOTED_ID) ) { + alt40=1; + } + switch (alt40) { + case 1 : + // InternalSolverLanguageParser.g:5539:3: rule__LetBinding__TypeAssignment_0 + { + pushFollow(FOLLOW_2); + rule__LetBinding__TypeAssignment_0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getLetBindingAccess().getTypeAssignment_0()); } @@ -12826,26 +17297,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__0__Impl" + // $ANTLR end "rule__LetBinding__Group__0__Impl" - // $ANTLR start "rule__IfElse__Group__1" - // InternalSolverLanguageParser.g:4080:1: rule__IfElse__Group__1 : rule__IfElse__Group__1__Impl rule__IfElse__Group__2 ; - public final void rule__IfElse__Group__1() throws RecognitionException { + // $ANTLR start "rule__LetBinding__Group__1" + // InternalSolverLanguageParser.g:5547:1: rule__LetBinding__Group__1 : rule__LetBinding__Group__1__Impl rule__LetBinding__Group__2 ; + public final void rule__LetBinding__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4084:1: ( rule__IfElse__Group__1__Impl rule__IfElse__Group__2 ) - // InternalSolverLanguageParser.g:4085:2: rule__IfElse__Group__1__Impl rule__IfElse__Group__2 + // InternalSolverLanguageParser.g:5551:1: ( rule__LetBinding__Group__1__Impl rule__LetBinding__Group__2 ) + // InternalSolverLanguageParser.g:5552:2: rule__LetBinding__Group__1__Impl rule__LetBinding__Group__2 { - pushFollow(FOLLOW_22); - rule__IfElse__Group__1__Impl(); + pushFollow(FOLLOW_30); + rule__LetBinding__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__IfElse__Group__2(); + rule__LetBinding__Group__2(); state._fsp--; @@ -12864,35 +17335,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__1" + // $ANTLR end "rule__LetBinding__Group__1" - // $ANTLR start "rule__IfElse__Group__1__Impl" - // InternalSolverLanguageParser.g:4092:1: rule__IfElse__Group__1__Impl : ( ( rule__IfElse__ConditionAssignment_1 ) ) ; - public final void rule__IfElse__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__LetBinding__Group__1__Impl" + // InternalSolverLanguageParser.g:5559:1: rule__LetBinding__Group__1__Impl : ( ( rule__LetBinding__NameAssignment_1 ) ) ; + public final void rule__LetBinding__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4096:1: ( ( ( rule__IfElse__ConditionAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:4097:1: ( ( rule__IfElse__ConditionAssignment_1 ) ) + // InternalSolverLanguageParser.g:5563:1: ( ( ( rule__LetBinding__NameAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:5564:1: ( ( rule__LetBinding__NameAssignment_1 ) ) { - // InternalSolverLanguageParser.g:4097:1: ( ( rule__IfElse__ConditionAssignment_1 ) ) - // InternalSolverLanguageParser.g:4098:2: ( rule__IfElse__ConditionAssignment_1 ) + // InternalSolverLanguageParser.g:5564:1: ( ( rule__LetBinding__NameAssignment_1 ) ) + // InternalSolverLanguageParser.g:5565:2: ( rule__LetBinding__NameAssignment_1 ) { - before(grammarAccess.getIfElseAccess().getConditionAssignment_1()); - // InternalSolverLanguageParser.g:4099:2: ( rule__IfElse__ConditionAssignment_1 ) - // InternalSolverLanguageParser.g:4099:3: rule__IfElse__ConditionAssignment_1 + before(grammarAccess.getLetBindingAccess().getNameAssignment_1()); + // InternalSolverLanguageParser.g:5566:2: ( rule__LetBinding__NameAssignment_1 ) + // InternalSolverLanguageParser.g:5566:3: rule__LetBinding__NameAssignment_1 { pushFollow(FOLLOW_2); - rule__IfElse__ConditionAssignment_1(); + rule__LetBinding__NameAssignment_1(); state._fsp--; } - after(grammarAccess.getIfElseAccess().getConditionAssignment_1()); + after(grammarAccess.getLetBindingAccess().getNameAssignment_1()); } @@ -12911,26 +17382,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__1__Impl" + // $ANTLR end "rule__LetBinding__Group__1__Impl" - // $ANTLR start "rule__IfElse__Group__2" - // InternalSolverLanguageParser.g:4107:1: rule__IfElse__Group__2 : rule__IfElse__Group__2__Impl rule__IfElse__Group__3 ; - public final void rule__IfElse__Group__2() throws RecognitionException { + // $ANTLR start "rule__LetBinding__Group__2" + // InternalSolverLanguageParser.g:5574:1: rule__LetBinding__Group__2 : rule__LetBinding__Group__2__Impl rule__LetBinding__Group__3 ; + public final void rule__LetBinding__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4111:1: ( rule__IfElse__Group__2__Impl rule__IfElse__Group__3 ) - // InternalSolverLanguageParser.g:4112:2: rule__IfElse__Group__2__Impl rule__IfElse__Group__3 + // InternalSolverLanguageParser.g:5578:1: ( rule__LetBinding__Group__2__Impl rule__LetBinding__Group__3 ) + // InternalSolverLanguageParser.g:5579:2: rule__LetBinding__Group__2__Impl rule__LetBinding__Group__3 { - pushFollow(FOLLOW_7); - rule__IfElse__Group__2__Impl(); + pushFollow(FOLLOW_12); + rule__LetBinding__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__IfElse__Group__3(); + rule__LetBinding__Group__3(); state._fsp--; @@ -12949,25 +17420,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__2" + // $ANTLR end "rule__LetBinding__Group__2" - // $ANTLR start "rule__IfElse__Group__2__Impl" - // InternalSolverLanguageParser.g:4119:1: rule__IfElse__Group__2__Impl : ( Then ) ; - public final void rule__IfElse__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__LetBinding__Group__2__Impl" + // InternalSolverLanguageParser.g:5586:1: rule__LetBinding__Group__2__Impl : ( EqualsSign ) ; + public final void rule__LetBinding__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4123:1: ( ( Then ) ) - // InternalSolverLanguageParser.g:4124:1: ( Then ) + // InternalSolverLanguageParser.g:5590:1: ( ( EqualsSign ) ) + // InternalSolverLanguageParser.g:5591:1: ( EqualsSign ) { - // InternalSolverLanguageParser.g:4124:1: ( Then ) - // InternalSolverLanguageParser.g:4125:2: Then + // InternalSolverLanguageParser.g:5591:1: ( EqualsSign ) + // InternalSolverLanguageParser.g:5592:2: EqualsSign { - before(grammarAccess.getIfElseAccess().getThenKeyword_2()); - match(input,Then,FOLLOW_2); - after(grammarAccess.getIfElseAccess().getThenKeyword_2()); + before(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_2()); + match(input,EqualsSign,FOLLOW_2); + after(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_2()); } @@ -12986,26 +17457,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__2__Impl" + // $ANTLR end "rule__LetBinding__Group__2__Impl" - // $ANTLR start "rule__IfElse__Group__3" - // InternalSolverLanguageParser.g:4134:1: rule__IfElse__Group__3 : rule__IfElse__Group__3__Impl rule__IfElse__Group__4 ; - public final void rule__IfElse__Group__3() throws RecognitionException { + // $ANTLR start "rule__LetBinding__Group__3" + // InternalSolverLanguageParser.g:5601:1: rule__LetBinding__Group__3 : rule__LetBinding__Group__3__Impl ; + public final void rule__LetBinding__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4138:1: ( rule__IfElse__Group__3__Impl rule__IfElse__Group__4 ) - // InternalSolverLanguageParser.g:4139:2: rule__IfElse__Group__3__Impl rule__IfElse__Group__4 + // InternalSolverLanguageParser.g:5605:1: ( rule__LetBinding__Group__3__Impl ) + // InternalSolverLanguageParser.g:5606:2: rule__LetBinding__Group__3__Impl { - pushFollow(FOLLOW_23); - rule__IfElse__Group__3__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__IfElse__Group__4(); + rule__LetBinding__Group__3__Impl(); state._fsp--; @@ -13024,35 +17490,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__3" + // $ANTLR end "rule__LetBinding__Group__3" - // $ANTLR start "rule__IfElse__Group__3__Impl" - // InternalSolverLanguageParser.g:4146:1: rule__IfElse__Group__3__Impl : ( ( rule__IfElse__ThenAssignment_3 ) ) ; - public final void rule__IfElse__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__LetBinding__Group__3__Impl" + // InternalSolverLanguageParser.g:5612:1: rule__LetBinding__Group__3__Impl : ( ( rule__LetBinding__ValueAssignment_3 ) ) ; + public final void rule__LetBinding__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4150:1: ( ( ( rule__IfElse__ThenAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:4151:1: ( ( rule__IfElse__ThenAssignment_3 ) ) + // InternalSolverLanguageParser.g:5616:1: ( ( ( rule__LetBinding__ValueAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:5617:1: ( ( rule__LetBinding__ValueAssignment_3 ) ) { - // InternalSolverLanguageParser.g:4151:1: ( ( rule__IfElse__ThenAssignment_3 ) ) - // InternalSolverLanguageParser.g:4152:2: ( rule__IfElse__ThenAssignment_3 ) + // InternalSolverLanguageParser.g:5617:1: ( ( rule__LetBinding__ValueAssignment_3 ) ) + // InternalSolverLanguageParser.g:5618:2: ( rule__LetBinding__ValueAssignment_3 ) { - before(grammarAccess.getIfElseAccess().getThenAssignment_3()); - // InternalSolverLanguageParser.g:4153:2: ( rule__IfElse__ThenAssignment_3 ) - // InternalSolverLanguageParser.g:4153:3: rule__IfElse__ThenAssignment_3 + before(grammarAccess.getLetBindingAccess().getValueAssignment_3()); + // InternalSolverLanguageParser.g:5619:2: ( rule__LetBinding__ValueAssignment_3 ) + // InternalSolverLanguageParser.g:5619:3: rule__LetBinding__ValueAssignment_3 { pushFollow(FOLLOW_2); - rule__IfElse__ThenAssignment_3(); + rule__LetBinding__ValueAssignment_3(); state._fsp--; } - after(grammarAccess.getIfElseAccess().getThenAssignment_3()); + after(grammarAccess.getLetBindingAccess().getValueAssignment_3()); } @@ -13071,96 +17537,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__3__Impl" + // $ANTLR end "rule__LetBinding__Group__3__Impl" - // $ANTLR start "rule__IfElse__Group__4" - // InternalSolverLanguageParser.g:4161:1: rule__IfElse__Group__4 : rule__IfElse__Group__4__Impl rule__IfElse__Group__5 ; - public final void rule__IfElse__Group__4() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group__0" + // InternalSolverLanguageParser.g:5628:1: rule__DisjunctiveExpression__Group__0 : rule__DisjunctiveExpression__Group__0__Impl rule__DisjunctiveExpression__Group__1 ; + public final void rule__DisjunctiveExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4165:1: ( rule__IfElse__Group__4__Impl rule__IfElse__Group__5 ) - // InternalSolverLanguageParser.g:4166:2: rule__IfElse__Group__4__Impl rule__IfElse__Group__5 + // InternalSolverLanguageParser.g:5632:1: ( rule__DisjunctiveExpression__Group__0__Impl rule__DisjunctiveExpression__Group__1 ) + // InternalSolverLanguageParser.g:5633:2: rule__DisjunctiveExpression__Group__0__Impl rule__DisjunctiveExpression__Group__1 { - pushFollow(FOLLOW_7); - rule__IfElse__Group__4__Impl(); - - state._fsp--; - - pushFollow(FOLLOW_2); - rule__IfElse__Group__5(); + pushFollow(FOLLOW_31); + rule__DisjunctiveExpression__Group__0__Impl(); state._fsp--; - - } - - } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } - finally { - - restoreStackSize(stackSize); - - } - return ; - } - // $ANTLR end "rule__IfElse__Group__4" - - - // $ANTLR start "rule__IfElse__Group__4__Impl" - // InternalSolverLanguageParser.g:4173:1: rule__IfElse__Group__4__Impl : ( Else ) ; - public final void rule__IfElse__Group__4__Impl() throws RecognitionException { - - int stackSize = keepStackSize(); - - try { - // InternalSolverLanguageParser.g:4177:1: ( ( Else ) ) - // InternalSolverLanguageParser.g:4178:1: ( Else ) - { - // InternalSolverLanguageParser.g:4178:1: ( Else ) - // InternalSolverLanguageParser.g:4179:2: Else - { - before(grammarAccess.getIfElseAccess().getElseKeyword_4()); - match(input,Else,FOLLOW_2); - after(grammarAccess.getIfElseAccess().getElseKeyword_4()); - - } - - - } - - } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } - finally { - - restoreStackSize(stackSize); - - } - return ; - } - // $ANTLR end "rule__IfElse__Group__4__Impl" - - - // $ANTLR start "rule__IfElse__Group__5" - // InternalSolverLanguageParser.g:4188:1: rule__IfElse__Group__5 : rule__IfElse__Group__5__Impl ; - public final void rule__IfElse__Group__5() throws RecognitionException { - - int stackSize = keepStackSize(); - - try { - // InternalSolverLanguageParser.g:4192:1: ( rule__IfElse__Group__5__Impl ) - // InternalSolverLanguageParser.g:4193:2: rule__IfElse__Group__5__Impl - { pushFollow(FOLLOW_2); - rule__IfElse__Group__5__Impl(); + rule__DisjunctiveExpression__Group__1(); state._fsp--; @@ -13179,35 +17575,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__5" + // $ANTLR end "rule__DisjunctiveExpression__Group__0" - // $ANTLR start "rule__IfElse__Group__5__Impl" - // InternalSolverLanguageParser.g:4199:1: rule__IfElse__Group__5__Impl : ( ( rule__IfElse__ElseAssignment_5 ) ) ; - public final void rule__IfElse__Group__5__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:5640:1: rule__DisjunctiveExpression__Group__0__Impl : ( ruleConjunctiveExpression ) ; + public final void rule__DisjunctiveExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4203:1: ( ( ( rule__IfElse__ElseAssignment_5 ) ) ) - // InternalSolverLanguageParser.g:4204:1: ( ( rule__IfElse__ElseAssignment_5 ) ) + // InternalSolverLanguageParser.g:5644:1: ( ( ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:5645:1: ( ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:4204:1: ( ( rule__IfElse__ElseAssignment_5 ) ) - // InternalSolverLanguageParser.g:4205:2: ( rule__IfElse__ElseAssignment_5 ) - { - before(grammarAccess.getIfElseAccess().getElseAssignment_5()); - // InternalSolverLanguageParser.g:4206:2: ( rule__IfElse__ElseAssignment_5 ) - // InternalSolverLanguageParser.g:4206:3: rule__IfElse__ElseAssignment_5 + // InternalSolverLanguageParser.g:5645:1: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:5646:2: ruleConjunctiveExpression { + before(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - rule__IfElse__ElseAssignment_5(); + ruleConjunctiveExpression(); state._fsp--; - - } - - after(grammarAccess.getIfElseAccess().getElseAssignment_5()); + after(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); } @@ -13226,26 +17616,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__Group__5__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group__0__Impl" - // $ANTLR start "rule__Let__Group__0" - // InternalSolverLanguageParser.g:4215:1: rule__Let__Group__0 : rule__Let__Group__0__Impl rule__Let__Group__1 ; - public final void rule__Let__Group__0() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group__1" + // InternalSolverLanguageParser.g:5655:1: rule__DisjunctiveExpression__Group__1 : rule__DisjunctiveExpression__Group__1__Impl ; + public final void rule__DisjunctiveExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4219:1: ( rule__Let__Group__0__Impl rule__Let__Group__1 ) - // InternalSolverLanguageParser.g:4220:2: rule__Let__Group__0__Impl rule__Let__Group__1 + // InternalSolverLanguageParser.g:5659:1: ( rule__DisjunctiveExpression__Group__1__Impl ) + // InternalSolverLanguageParser.g:5660:2: rule__DisjunctiveExpression__Group__1__Impl { - pushFollow(FOLLOW_9); - rule__Let__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__Let__Group__1(); + rule__DisjunctiveExpression__Group__1__Impl(); state._fsp--; @@ -13264,25 +17649,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__0" + // $ANTLR end "rule__DisjunctiveExpression__Group__1" - // $ANTLR start "rule__Let__Group__0__Impl" - // InternalSolverLanguageParser.g:4227:1: rule__Let__Group__0__Impl : ( Let ) ; - public final void rule__Let__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:5666:1: rule__DisjunctiveExpression__Group__1__Impl : ( ( rule__DisjunctiveExpression__Alternatives_1 )? ) ; + public final void rule__DisjunctiveExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4231:1: ( ( Let ) ) - // InternalSolverLanguageParser.g:4232:1: ( Let ) + // InternalSolverLanguageParser.g:5670:1: ( ( ( rule__DisjunctiveExpression__Alternatives_1 )? ) ) + // InternalSolverLanguageParser.g:5671:1: ( ( rule__DisjunctiveExpression__Alternatives_1 )? ) { - // InternalSolverLanguageParser.g:4232:1: ( Let ) - // InternalSolverLanguageParser.g:4233:2: Let + // InternalSolverLanguageParser.g:5671:1: ( ( rule__DisjunctiveExpression__Alternatives_1 )? ) + // InternalSolverLanguageParser.g:5672:2: ( rule__DisjunctiveExpression__Alternatives_1 )? { - before(grammarAccess.getLetAccess().getLetKeyword_0()); - match(input,Let,FOLLOW_2); - after(grammarAccess.getLetAccess().getLetKeyword_0()); + before(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1()); + // InternalSolverLanguageParser.g:5673:2: ( rule__DisjunctiveExpression__Alternatives_1 )? + int alt41=2; + int LA41_0 = input.LA(1); + + if ( (LA41_0==HyphenMinusGreaterThanSign||LA41_0==Semicolon) ) { + alt41=1; + } + switch (alt41) { + case 1 : + // InternalSolverLanguageParser.g:5673:3: rule__DisjunctiveExpression__Alternatives_1 + { + pushFollow(FOLLOW_2); + rule__DisjunctiveExpression__Alternatives_1(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1()); } @@ -13301,26 +17707,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__0__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group__1__Impl" - // $ANTLR start "rule__Let__Group__1" - // InternalSolverLanguageParser.g:4242:1: rule__Let__Group__1 : rule__Let__Group__1__Impl rule__Let__Group__2 ; - public final void rule__Let__Group__1() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_0__0" + // InternalSolverLanguageParser.g:5682:1: rule__DisjunctiveExpression__Group_1_0__0 : rule__DisjunctiveExpression__Group_1_0__0__Impl rule__DisjunctiveExpression__Group_1_0__1 ; + public final void rule__DisjunctiveExpression__Group_1_0__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4246:1: ( rule__Let__Group__1__Impl rule__Let__Group__2 ) - // InternalSolverLanguageParser.g:4247:2: rule__Let__Group__1__Impl rule__Let__Group__2 + // InternalSolverLanguageParser.g:5686:1: ( rule__DisjunctiveExpression__Group_1_0__0__Impl rule__DisjunctiveExpression__Group_1_0__1 ) + // InternalSolverLanguageParser.g:5687:2: rule__DisjunctiveExpression__Group_1_0__0__Impl rule__DisjunctiveExpression__Group_1_0__1 { - pushFollow(FOLLOW_24); - rule__Let__Group__1__Impl(); + pushFollow(FOLLOW_32); + rule__DisjunctiveExpression__Group_1_0__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Let__Group__2(); + rule__DisjunctiveExpression__Group_1_0__1(); state._fsp--; @@ -13339,35 +17745,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__1" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_0__0" - // $ANTLR start "rule__Let__Group__1__Impl" - // InternalSolverLanguageParser.g:4254:1: rule__Let__Group__1__Impl : ( ( rule__Let__BindingsAssignment_1 ) ) ; - public final void rule__Let__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_0__0__Impl" + // InternalSolverLanguageParser.g:5694:1: rule__DisjunctiveExpression__Group_1_0__0__Impl : ( () ) ; + public final void rule__DisjunctiveExpression__Group_1_0__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4258:1: ( ( ( rule__Let__BindingsAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:4259:1: ( ( rule__Let__BindingsAssignment_1 ) ) + // InternalSolverLanguageParser.g:5698:1: ( ( () ) ) + // InternalSolverLanguageParser.g:5699:1: ( () ) { - // InternalSolverLanguageParser.g:4259:1: ( ( rule__Let__BindingsAssignment_1 ) ) - // InternalSolverLanguageParser.g:4260:2: ( rule__Let__BindingsAssignment_1 ) + // InternalSolverLanguageParser.g:5699:1: ( () ) + // InternalSolverLanguageParser.g:5700:2: () { - before(grammarAccess.getLetAccess().getBindingsAssignment_1()); - // InternalSolverLanguageParser.g:4261:2: ( rule__Let__BindingsAssignment_1 ) - // InternalSolverLanguageParser.g:4261:3: rule__Let__BindingsAssignment_1 + before(grammarAccess.getDisjunctiveExpressionAccess().getDisjunctionChildrenAction_1_0_0()); + // InternalSolverLanguageParser.g:5701:2: () + // InternalSolverLanguageParser.g:5701:3: { - pushFollow(FOLLOW_2); - rule__Let__BindingsAssignment_1(); - - state._fsp--; - - } - after(grammarAccess.getLetAccess().getBindingsAssignment_1()); + after(grammarAccess.getDisjunctiveExpressionAccess().getDisjunctionChildrenAction_1_0_0()); } @@ -13375,10 +17775,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -13386,26 +17782,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__1__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_0__0__Impl" - // $ANTLR start "rule__Let__Group__2" - // InternalSolverLanguageParser.g:4269:1: rule__Let__Group__2 : rule__Let__Group__2__Impl rule__Let__Group__3 ; - public final void rule__Let__Group__2() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_0__1" + // InternalSolverLanguageParser.g:5709:1: rule__DisjunctiveExpression__Group_1_0__1 : rule__DisjunctiveExpression__Group_1_0__1__Impl ; + public final void rule__DisjunctiveExpression__Group_1_0__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4273:1: ( rule__Let__Group__2__Impl rule__Let__Group__3 ) - // InternalSolverLanguageParser.g:4274:2: rule__Let__Group__2__Impl rule__Let__Group__3 + // InternalSolverLanguageParser.g:5713:1: ( rule__DisjunctiveExpression__Group_1_0__1__Impl ) + // InternalSolverLanguageParser.g:5714:2: rule__DisjunctiveExpression__Group_1_0__1__Impl { - pushFollow(FOLLOW_24); - rule__Let__Group__2__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__Let__Group__3(); + rule__DisjunctiveExpression__Group_1_0__1__Impl(); state._fsp--; @@ -13424,40 +17815,62 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__2" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_0__1" - // $ANTLR start "rule__Let__Group__2__Impl" - // InternalSolverLanguageParser.g:4281:1: rule__Let__Group__2__Impl : ( ( rule__Let__Group_2__0 )* ) ; - public final void rule__Let__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_0__1__Impl" + // InternalSolverLanguageParser.g:5720:1: rule__DisjunctiveExpression__Group_1_0__1__Impl : ( ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) ) ; + public final void rule__DisjunctiveExpression__Group_1_0__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4285:1: ( ( ( rule__Let__Group_2__0 )* ) ) - // InternalSolverLanguageParser.g:4286:1: ( ( rule__Let__Group_2__0 )* ) + // InternalSolverLanguageParser.g:5724:1: ( ( ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) ) ) + // InternalSolverLanguageParser.g:5725:1: ( ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) ) { - // InternalSolverLanguageParser.g:4286:1: ( ( rule__Let__Group_2__0 )* ) - // InternalSolverLanguageParser.g:4287:2: ( rule__Let__Group_2__0 )* + // InternalSolverLanguageParser.g:5725:1: ( ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) ) + // InternalSolverLanguageParser.g:5726:2: ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) { - before(grammarAccess.getLetAccess().getGroup_2()); - // InternalSolverLanguageParser.g:4288:2: ( rule__Let__Group_2__0 )* - loop31: + // InternalSolverLanguageParser.g:5726:2: ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) + // InternalSolverLanguageParser.g:5727:3: ( rule__DisjunctiveExpression__Group_1_0_1__0 ) + { + before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); + // InternalSolverLanguageParser.g:5728:3: ( rule__DisjunctiveExpression__Group_1_0_1__0 ) + // InternalSolverLanguageParser.g:5728:4: rule__DisjunctiveExpression__Group_1_0_1__0 + { + pushFollow(FOLLOW_33); + rule__DisjunctiveExpression__Group_1_0_1__0(); + + state._fsp--; + + + } + + after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); + + } + + // InternalSolverLanguageParser.g:5731:2: ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) + // InternalSolverLanguageParser.g:5732:3: ( rule__DisjunctiveExpression__Group_1_0_1__0 )* + { + before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); + // InternalSolverLanguageParser.g:5733:3: ( rule__DisjunctiveExpression__Group_1_0_1__0 )* + loop42: do { - int alt31=2; - int LA31_0 = input.LA(1); + int alt42=2; + int LA42_0 = input.LA(1); - if ( (LA31_0==Comma) ) { - alt31=1; + if ( (LA42_0==Semicolon) ) { + alt42=1; } - switch (alt31) { + switch (alt42) { case 1 : - // InternalSolverLanguageParser.g:4288:3: rule__Let__Group_2__0 + // InternalSolverLanguageParser.g:5733:4: rule__DisjunctiveExpression__Group_1_0_1__0 { - pushFollow(FOLLOW_20); - rule__Let__Group_2__0(); + pushFollow(FOLLOW_33); + rule__DisjunctiveExpression__Group_1_0_1__0(); state._fsp--; @@ -13466,11 +17879,14 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP break; default : - break loop31; + break loop42; } } while (true); - after(grammarAccess.getLetAccess().getGroup_2()); + after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); + + } + } @@ -13489,26 +17905,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__2__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_0__1__Impl" - // $ANTLR start "rule__Let__Group__3" - // InternalSolverLanguageParser.g:4296:1: rule__Let__Group__3 : rule__Let__Group__3__Impl rule__Let__Group__4 ; - public final void rule__Let__Group__3() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_0_1__0" + // InternalSolverLanguageParser.g:5743:1: rule__DisjunctiveExpression__Group_1_0_1__0 : rule__DisjunctiveExpression__Group_1_0_1__0__Impl rule__DisjunctiveExpression__Group_1_0_1__1 ; + public final void rule__DisjunctiveExpression__Group_1_0_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4300:1: ( rule__Let__Group__3__Impl rule__Let__Group__4 ) - // InternalSolverLanguageParser.g:4301:2: rule__Let__Group__3__Impl rule__Let__Group__4 + // InternalSolverLanguageParser.g:5747:1: ( rule__DisjunctiveExpression__Group_1_0_1__0__Impl rule__DisjunctiveExpression__Group_1_0_1__1 ) + // InternalSolverLanguageParser.g:5748:2: rule__DisjunctiveExpression__Group_1_0_1__0__Impl rule__DisjunctiveExpression__Group_1_0_1__1 { - pushFollow(FOLLOW_7); - rule__Let__Group__3__Impl(); + pushFollow(FOLLOW_12); + rule__DisjunctiveExpression__Group_1_0_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Let__Group__4(); + rule__DisjunctiveExpression__Group_1_0_1__1(); state._fsp--; @@ -13527,25 +17943,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__3" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_0_1__0" - // $ANTLR start "rule__Let__Group__3__Impl" - // InternalSolverLanguageParser.g:4308:1: rule__Let__Group__3__Impl : ( In ) ; - public final void rule__Let__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_0_1__0__Impl" + // InternalSolverLanguageParser.g:5755:1: rule__DisjunctiveExpression__Group_1_0_1__0__Impl : ( Semicolon ) ; + public final void rule__DisjunctiveExpression__Group_1_0_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4312:1: ( ( In ) ) - // InternalSolverLanguageParser.g:4313:1: ( In ) + // InternalSolverLanguageParser.g:5759:1: ( ( Semicolon ) ) + // InternalSolverLanguageParser.g:5760:1: ( Semicolon ) { - // InternalSolverLanguageParser.g:4313:1: ( In ) - // InternalSolverLanguageParser.g:4314:2: In + // InternalSolverLanguageParser.g:5760:1: ( Semicolon ) + // InternalSolverLanguageParser.g:5761:2: Semicolon { - before(grammarAccess.getLetAccess().getInKeyword_3()); - match(input,In,FOLLOW_2); - after(grammarAccess.getLetAccess().getInKeyword_3()); + before(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); + match(input,Semicolon,FOLLOW_2); + after(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); } @@ -13564,21 +17980,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__3__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_0_1__0__Impl" - // $ANTLR start "rule__Let__Group__4" - // InternalSolverLanguageParser.g:4323:1: rule__Let__Group__4 : rule__Let__Group__4__Impl ; - public final void rule__Let__Group__4() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_0_1__1" + // InternalSolverLanguageParser.g:5770:1: rule__DisjunctiveExpression__Group_1_0_1__1 : rule__DisjunctiveExpression__Group_1_0_1__1__Impl ; + public final void rule__DisjunctiveExpression__Group_1_0_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4327:1: ( rule__Let__Group__4__Impl ) - // InternalSolverLanguageParser.g:4328:2: rule__Let__Group__4__Impl + // InternalSolverLanguageParser.g:5774:1: ( rule__DisjunctiveExpression__Group_1_0_1__1__Impl ) + // InternalSolverLanguageParser.g:5775:2: rule__DisjunctiveExpression__Group_1_0_1__1__Impl { pushFollow(FOLLOW_2); - rule__Let__Group__4__Impl(); + rule__DisjunctiveExpression__Group_1_0_1__1__Impl(); state._fsp--; @@ -13597,35 +18013,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__4" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_0_1__1" - // $ANTLR start "rule__Let__Group__4__Impl" - // InternalSolverLanguageParser.g:4334:1: rule__Let__Group__4__Impl : ( ( rule__Let__BodyAssignment_4 ) ) ; - public final void rule__Let__Group__4__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_0_1__1__Impl" + // InternalSolverLanguageParser.g:5781:1: rule__DisjunctiveExpression__Group_1_0_1__1__Impl : ( ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) ) ; + public final void rule__DisjunctiveExpression__Group_1_0_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4338:1: ( ( ( rule__Let__BodyAssignment_4 ) ) ) - // InternalSolverLanguageParser.g:4339:1: ( ( rule__Let__BodyAssignment_4 ) ) + // InternalSolverLanguageParser.g:5785:1: ( ( ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) ) ) + // InternalSolverLanguageParser.g:5786:1: ( ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) ) { - // InternalSolverLanguageParser.g:4339:1: ( ( rule__Let__BodyAssignment_4 ) ) - // InternalSolverLanguageParser.g:4340:2: ( rule__Let__BodyAssignment_4 ) + // InternalSolverLanguageParser.g:5786:1: ( ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) ) + // InternalSolverLanguageParser.g:5787:2: ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) { - before(grammarAccess.getLetAccess().getBodyAssignment_4()); - // InternalSolverLanguageParser.g:4341:2: ( rule__Let__BodyAssignment_4 ) - // InternalSolverLanguageParser.g:4341:3: rule__Let__BodyAssignment_4 + before(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1()); + // InternalSolverLanguageParser.g:5788:2: ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) + // InternalSolverLanguageParser.g:5788:3: rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 { pushFollow(FOLLOW_2); - rule__Let__BodyAssignment_4(); + rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1(); state._fsp--; } - after(grammarAccess.getLetAccess().getBodyAssignment_4()); + after(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1()); } @@ -13644,26 +18060,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group__4__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_0_1__1__Impl" - // $ANTLR start "rule__Let__Group_2__0" - // InternalSolverLanguageParser.g:4350:1: rule__Let__Group_2__0 : rule__Let__Group_2__0__Impl rule__Let__Group_2__1 ; - public final void rule__Let__Group_2__0() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__0" + // InternalSolverLanguageParser.g:5797:1: rule__DisjunctiveExpression__Group_1_1__0 : rule__DisjunctiveExpression__Group_1_1__0__Impl rule__DisjunctiveExpression__Group_1_1__1 ; + public final void rule__DisjunctiveExpression__Group_1_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4354:1: ( rule__Let__Group_2__0__Impl rule__Let__Group_2__1 ) - // InternalSolverLanguageParser.g:4355:2: rule__Let__Group_2__0__Impl rule__Let__Group_2__1 + // InternalSolverLanguageParser.g:5801:1: ( rule__DisjunctiveExpression__Group_1_1__0__Impl rule__DisjunctiveExpression__Group_1_1__1 ) + // InternalSolverLanguageParser.g:5802:2: rule__DisjunctiveExpression__Group_1_1__0__Impl rule__DisjunctiveExpression__Group_1_1__1 { - pushFollow(FOLLOW_9); - rule__Let__Group_2__0__Impl(); + pushFollow(FOLLOW_31); + rule__DisjunctiveExpression__Group_1_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Let__Group_2__1(); + rule__DisjunctiveExpression__Group_1_1__1(); state._fsp--; @@ -13682,25 +18098,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group_2__0" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__0" - // $ANTLR start "rule__Let__Group_2__0__Impl" - // InternalSolverLanguageParser.g:4362:1: rule__Let__Group_2__0__Impl : ( Comma ) ; - public final void rule__Let__Group_2__0__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__0__Impl" + // InternalSolverLanguageParser.g:5809:1: rule__DisjunctiveExpression__Group_1_1__0__Impl : ( () ) ; + public final void rule__DisjunctiveExpression__Group_1_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4366:1: ( ( Comma ) ) - // InternalSolverLanguageParser.g:4367:1: ( Comma ) + // InternalSolverLanguageParser.g:5813:1: ( ( () ) ) + // InternalSolverLanguageParser.g:5814:1: ( () ) { - // InternalSolverLanguageParser.g:4367:1: ( Comma ) - // InternalSolverLanguageParser.g:4368:2: Comma + // InternalSolverLanguageParser.g:5814:1: ( () ) + // InternalSolverLanguageParser.g:5815:2: () { - before(grammarAccess.getLetAccess().getCommaKeyword_2_0()); - match(input,Comma,FOLLOW_2); - after(grammarAccess.getLetAccess().getCommaKeyword_2_0()); + before(grammarAccess.getDisjunctiveExpressionAccess().getCaseConditionAction_1_1_0()); + // InternalSolverLanguageParser.g:5816:2: () + // InternalSolverLanguageParser.g:5816:3: + { + } + + after(grammarAccess.getDisjunctiveExpressionAccess().getCaseConditionAction_1_1_0()); } @@ -13708,10 +18128,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -13719,21 +18135,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group_2__0__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__0__Impl" - // $ANTLR start "rule__Let__Group_2__1" - // InternalSolverLanguageParser.g:4377:1: rule__Let__Group_2__1 : rule__Let__Group_2__1__Impl ; - public final void rule__Let__Group_2__1() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__1" + // InternalSolverLanguageParser.g:5824:1: rule__DisjunctiveExpression__Group_1_1__1 : rule__DisjunctiveExpression__Group_1_1__1__Impl rule__DisjunctiveExpression__Group_1_1__2 ; + public final void rule__DisjunctiveExpression__Group_1_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4381:1: ( rule__Let__Group_2__1__Impl ) - // InternalSolverLanguageParser.g:4382:2: rule__Let__Group_2__1__Impl + // InternalSolverLanguageParser.g:5828:1: ( rule__DisjunctiveExpression__Group_1_1__1__Impl rule__DisjunctiveExpression__Group_1_1__2 ) + // InternalSolverLanguageParser.g:5829:2: rule__DisjunctiveExpression__Group_1_1__1__Impl rule__DisjunctiveExpression__Group_1_1__2 { + pushFollow(FOLLOW_12); + rule__DisjunctiveExpression__Group_1_1__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__Let__Group_2__1__Impl(); + rule__DisjunctiveExpression__Group_1_1__2(); state._fsp--; @@ -13752,35 +18173,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group_2__1" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__1" - // $ANTLR start "rule__Let__Group_2__1__Impl" - // InternalSolverLanguageParser.g:4388:1: rule__Let__Group_2__1__Impl : ( ( rule__Let__BindingsAssignment_2_1 ) ) ; - public final void rule__Let__Group_2__1__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__1__Impl" + // InternalSolverLanguageParser.g:5836:1: rule__DisjunctiveExpression__Group_1_1__1__Impl : ( HyphenMinusGreaterThanSign ) ; + public final void rule__DisjunctiveExpression__Group_1_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4392:1: ( ( ( rule__Let__BindingsAssignment_2_1 ) ) ) - // InternalSolverLanguageParser.g:4393:1: ( ( rule__Let__BindingsAssignment_2_1 ) ) - { - // InternalSolverLanguageParser.g:4393:1: ( ( rule__Let__BindingsAssignment_2_1 ) ) - // InternalSolverLanguageParser.g:4394:2: ( rule__Let__BindingsAssignment_2_1 ) + // InternalSolverLanguageParser.g:5840:1: ( ( HyphenMinusGreaterThanSign ) ) + // InternalSolverLanguageParser.g:5841:1: ( HyphenMinusGreaterThanSign ) { - before(grammarAccess.getLetAccess().getBindingsAssignment_2_1()); - // InternalSolverLanguageParser.g:4395:2: ( rule__Let__BindingsAssignment_2_1 ) - // InternalSolverLanguageParser.g:4395:3: rule__Let__BindingsAssignment_2_1 + // InternalSolverLanguageParser.g:5841:1: ( HyphenMinusGreaterThanSign ) + // InternalSolverLanguageParser.g:5842:2: HyphenMinusGreaterThanSign { - pushFollow(FOLLOW_2); - rule__Let__BindingsAssignment_2_1(); - - state._fsp--; - - - } - - after(grammarAccess.getLetAccess().getBindingsAssignment_2_1()); + before(grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); + match(input,HyphenMinusGreaterThanSign,FOLLOW_2); + after(grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); } @@ -13799,26 +18210,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__Group_2__1__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__1__Impl" - // $ANTLR start "rule__LetBinding__Group__0" - // InternalSolverLanguageParser.g:4404:1: rule__LetBinding__Group__0 : rule__LetBinding__Group__0__Impl rule__LetBinding__Group__1 ; - public final void rule__LetBinding__Group__0() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__2" + // InternalSolverLanguageParser.g:5851:1: rule__DisjunctiveExpression__Group_1_1__2 : rule__DisjunctiveExpression__Group_1_1__2__Impl rule__DisjunctiveExpression__Group_1_1__3 ; + public final void rule__DisjunctiveExpression__Group_1_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4408:1: ( rule__LetBinding__Group__0__Impl rule__LetBinding__Group__1 ) - // InternalSolverLanguageParser.g:4409:2: rule__LetBinding__Group__0__Impl rule__LetBinding__Group__1 + // InternalSolverLanguageParser.g:5855:1: ( rule__DisjunctiveExpression__Group_1_1__2__Impl rule__DisjunctiveExpression__Group_1_1__3 ) + // InternalSolverLanguageParser.g:5856:2: rule__DisjunctiveExpression__Group_1_1__2__Impl rule__DisjunctiveExpression__Group_1_1__3 { - pushFollow(FOLLOW_13); - rule__LetBinding__Group__0__Impl(); + pushFollow(FOLLOW_32); + rule__DisjunctiveExpression__Group_1_1__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LetBinding__Group__1(); + rule__DisjunctiveExpression__Group_1_1__3(); state._fsp--; @@ -13837,35 +18248,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LetBinding__Group__0" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__2" - // $ANTLR start "rule__LetBinding__Group__0__Impl" - // InternalSolverLanguageParser.g:4416:1: rule__LetBinding__Group__0__Impl : ( ( rule__LetBinding__VariableAssignment_0 ) ) ; - public final void rule__LetBinding__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__2__Impl" + // InternalSolverLanguageParser.g:5863:1: rule__DisjunctiveExpression__Group_1_1__2__Impl : ( ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) ) ; + public final void rule__DisjunctiveExpression__Group_1_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4420:1: ( ( ( rule__LetBinding__VariableAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:4421:1: ( ( rule__LetBinding__VariableAssignment_0 ) ) + // InternalSolverLanguageParser.g:5867:1: ( ( ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) ) ) + // InternalSolverLanguageParser.g:5868:1: ( ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) ) { - // InternalSolverLanguageParser.g:4421:1: ( ( rule__LetBinding__VariableAssignment_0 ) ) - // InternalSolverLanguageParser.g:4422:2: ( rule__LetBinding__VariableAssignment_0 ) + // InternalSolverLanguageParser.g:5868:1: ( ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) ) + // InternalSolverLanguageParser.g:5869:2: ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) { - before(grammarAccess.getLetBindingAccess().getVariableAssignment_0()); - // InternalSolverLanguageParser.g:4423:2: ( rule__LetBinding__VariableAssignment_0 ) - // InternalSolverLanguageParser.g:4423:3: rule__LetBinding__VariableAssignment_0 + before(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2()); + // InternalSolverLanguageParser.g:5870:2: ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) + // InternalSolverLanguageParser.g:5870:3: rule__DisjunctiveExpression__BodyAssignment_1_1_2 { pushFollow(FOLLOW_2); - rule__LetBinding__VariableAssignment_0(); + rule__DisjunctiveExpression__BodyAssignment_1_1_2(); state._fsp--; } - after(grammarAccess.getLetBindingAccess().getVariableAssignment_0()); + after(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2()); } @@ -13884,26 +18295,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LetBinding__Group__0__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__2__Impl" - // $ANTLR start "rule__LetBinding__Group__1" - // InternalSolverLanguageParser.g:4431:1: rule__LetBinding__Group__1 : rule__LetBinding__Group__1__Impl rule__LetBinding__Group__2 ; - public final void rule__LetBinding__Group__1() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__3" + // InternalSolverLanguageParser.g:5878:1: rule__DisjunctiveExpression__Group_1_1__3 : rule__DisjunctiveExpression__Group_1_1__3__Impl rule__DisjunctiveExpression__Group_1_1__4 ; + public final void rule__DisjunctiveExpression__Group_1_1__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4435:1: ( rule__LetBinding__Group__1__Impl rule__LetBinding__Group__2 ) - // InternalSolverLanguageParser.g:4436:2: rule__LetBinding__Group__1__Impl rule__LetBinding__Group__2 + // InternalSolverLanguageParser.g:5882:1: ( rule__DisjunctiveExpression__Group_1_1__3__Impl rule__DisjunctiveExpression__Group_1_1__4 ) + // InternalSolverLanguageParser.g:5883:2: rule__DisjunctiveExpression__Group_1_1__3__Impl rule__DisjunctiveExpression__Group_1_1__4 { - pushFollow(FOLLOW_7); - rule__LetBinding__Group__1__Impl(); + pushFollow(FOLLOW_32); + rule__DisjunctiveExpression__Group_1_1__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LetBinding__Group__2(); + rule__DisjunctiveExpression__Group_1_1__4(); state._fsp--; @@ -13922,25 +18333,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LetBinding__Group__1" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__3" - // $ANTLR start "rule__LetBinding__Group__1__Impl" - // InternalSolverLanguageParser.g:4443:1: rule__LetBinding__Group__1__Impl : ( EqualsSign ) ; - public final void rule__LetBinding__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__3__Impl" + // InternalSolverLanguageParser.g:5890:1: rule__DisjunctiveExpression__Group_1_1__3__Impl : ( () ) ; + public final void rule__DisjunctiveExpression__Group_1_1__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4447:1: ( ( EqualsSign ) ) - // InternalSolverLanguageParser.g:4448:1: ( EqualsSign ) + // InternalSolverLanguageParser.g:5894:1: ( ( () ) ) + // InternalSolverLanguageParser.g:5895:1: ( () ) { - // InternalSolverLanguageParser.g:4448:1: ( EqualsSign ) - // InternalSolverLanguageParser.g:4449:2: EqualsSign + // InternalSolverLanguageParser.g:5895:1: ( () ) + // InternalSolverLanguageParser.g:5896:2: () { - before(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1()); - match(input,EqualsSign,FOLLOW_2); - after(grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1()); + before(grammarAccess.getDisjunctiveExpressionAccess().getSwitchCasesAction_1_1_3()); + // InternalSolverLanguageParser.g:5897:2: () + // InternalSolverLanguageParser.g:5897:3: + { + } + + after(grammarAccess.getDisjunctiveExpressionAccess().getSwitchCasesAction_1_1_3()); } @@ -13948,10 +18363,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -13959,21 +18370,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LetBinding__Group__1__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__3__Impl" - // $ANTLR start "rule__LetBinding__Group__2" - // InternalSolverLanguageParser.g:4458:1: rule__LetBinding__Group__2 : rule__LetBinding__Group__2__Impl ; - public final void rule__LetBinding__Group__2() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__4" + // InternalSolverLanguageParser.g:5905:1: rule__DisjunctiveExpression__Group_1_1__4 : rule__DisjunctiveExpression__Group_1_1__4__Impl ; + public final void rule__DisjunctiveExpression__Group_1_1__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4462:1: ( rule__LetBinding__Group__2__Impl ) - // InternalSolverLanguageParser.g:4463:2: rule__LetBinding__Group__2__Impl + // InternalSolverLanguageParser.g:5909:1: ( rule__DisjunctiveExpression__Group_1_1__4__Impl ) + // InternalSolverLanguageParser.g:5910:2: rule__DisjunctiveExpression__Group_1_1__4__Impl { pushFollow(FOLLOW_2); - rule__LetBinding__Group__2__Impl(); + rule__DisjunctiveExpression__Group_1_1__4__Impl(); state._fsp--; @@ -13992,35 +18403,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LetBinding__Group__2" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__4" - // $ANTLR start "rule__LetBinding__Group__2__Impl" - // InternalSolverLanguageParser.g:4469:1: rule__LetBinding__Group__2__Impl : ( ( rule__LetBinding__ValueAssignment_2 ) ) ; - public final void rule__LetBinding__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__4__Impl" + // InternalSolverLanguageParser.g:5916:1: rule__DisjunctiveExpression__Group_1_1__4__Impl : ( ( rule__DisjunctiveExpression__Group_1_1_4__0 )* ) ; + public final void rule__DisjunctiveExpression__Group_1_1__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4473:1: ( ( ( rule__LetBinding__ValueAssignment_2 ) ) ) - // InternalSolverLanguageParser.g:4474:1: ( ( rule__LetBinding__ValueAssignment_2 ) ) + // InternalSolverLanguageParser.g:5920:1: ( ( ( rule__DisjunctiveExpression__Group_1_1_4__0 )* ) ) + // InternalSolverLanguageParser.g:5921:1: ( ( rule__DisjunctiveExpression__Group_1_1_4__0 )* ) { - // InternalSolverLanguageParser.g:4474:1: ( ( rule__LetBinding__ValueAssignment_2 ) ) - // InternalSolverLanguageParser.g:4475:2: ( rule__LetBinding__ValueAssignment_2 ) + // InternalSolverLanguageParser.g:5921:1: ( ( rule__DisjunctiveExpression__Group_1_1_4__0 )* ) + // InternalSolverLanguageParser.g:5922:2: ( rule__DisjunctiveExpression__Group_1_1_4__0 )* { - before(grammarAccess.getLetBindingAccess().getValueAssignment_2()); - // InternalSolverLanguageParser.g:4476:2: ( rule__LetBinding__ValueAssignment_2 ) - // InternalSolverLanguageParser.g:4476:3: rule__LetBinding__ValueAssignment_2 - { - pushFollow(FOLLOW_2); - rule__LetBinding__ValueAssignment_2(); + before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1_4()); + // InternalSolverLanguageParser.g:5923:2: ( rule__DisjunctiveExpression__Group_1_1_4__0 )* + loop43: + do { + int alt43=2; + int LA43_0 = input.LA(1); - state._fsp--; + if ( (LA43_0==Semicolon) ) { + alt43=1; + } - } + switch (alt43) { + case 1 : + // InternalSolverLanguageParser.g:5923:3: rule__DisjunctiveExpression__Group_1_1_4__0 + { + pushFollow(FOLLOW_33); + rule__DisjunctiveExpression__Group_1_1_4__0(); + + state._fsp--; + + + } + break; - after(grammarAccess.getLetBindingAccess().getValueAssignment_2()); + default : + break loop43; + } + } while (true); + + after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1_4()); } @@ -14039,26 +18468,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LetBinding__Group__2__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__4__Impl" - // $ANTLR start "rule__ImplicationExpression__Group__0" - // InternalSolverLanguageParser.g:4485:1: rule__ImplicationExpression__Group__0 : rule__ImplicationExpression__Group__0__Impl rule__ImplicationExpression__Group__1 ; - public final void rule__ImplicationExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1_4__0" + // InternalSolverLanguageParser.g:5932:1: rule__DisjunctiveExpression__Group_1_1_4__0 : rule__DisjunctiveExpression__Group_1_1_4__0__Impl rule__DisjunctiveExpression__Group_1_1_4__1 ; + public final void rule__DisjunctiveExpression__Group_1_1_4__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4489:1: ( rule__ImplicationExpression__Group__0__Impl rule__ImplicationExpression__Group__1 ) - // InternalSolverLanguageParser.g:4490:2: rule__ImplicationExpression__Group__0__Impl rule__ImplicationExpression__Group__1 + // InternalSolverLanguageParser.g:5936:1: ( rule__DisjunctiveExpression__Group_1_1_4__0__Impl rule__DisjunctiveExpression__Group_1_1_4__1 ) + // InternalSolverLanguageParser.g:5937:2: rule__DisjunctiveExpression__Group_1_1_4__0__Impl rule__DisjunctiveExpression__Group_1_1_4__1 { - pushFollow(FOLLOW_25); - rule__ImplicationExpression__Group__0__Impl(); + pushFollow(FOLLOW_12); + rule__DisjunctiveExpression__Group_1_1_4__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ImplicationExpression__Group__1(); + rule__DisjunctiveExpression__Group_1_1_4__1(); state._fsp--; @@ -14077,29 +18506,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group__0" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1_4__0" - // $ANTLR start "rule__ImplicationExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:4497:1: rule__ImplicationExpression__Group__0__Impl : ( ruleDisjunctiveExpression ) ; - public final void rule__ImplicationExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1_4__0__Impl" + // InternalSolverLanguageParser.g:5944:1: rule__DisjunctiveExpression__Group_1_1_4__0__Impl : ( Semicolon ) ; + public final void rule__DisjunctiveExpression__Group_1_1_4__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); - try { - // InternalSolverLanguageParser.g:4501:1: ( ( ruleDisjunctiveExpression ) ) - // InternalSolverLanguageParser.g:4502:1: ( ruleDisjunctiveExpression ) - { - // InternalSolverLanguageParser.g:4502:1: ( ruleDisjunctiveExpression ) - // InternalSolverLanguageParser.g:4503:2: ruleDisjunctiveExpression - { - before(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0()); - pushFollow(FOLLOW_2); - ruleDisjunctiveExpression(); - - state._fsp--; - - after(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0()); + try { + // InternalSolverLanguageParser.g:5948:1: ( ( Semicolon ) ) + // InternalSolverLanguageParser.g:5949:1: ( Semicolon ) + { + // InternalSolverLanguageParser.g:5949:1: ( Semicolon ) + // InternalSolverLanguageParser.g:5950:2: Semicolon + { + before(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); + match(input,Semicolon,FOLLOW_2); + after(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); } @@ -14118,21 +18543,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group__0__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1_4__0__Impl" - // $ANTLR start "rule__ImplicationExpression__Group__1" - // InternalSolverLanguageParser.g:4512:1: rule__ImplicationExpression__Group__1 : rule__ImplicationExpression__Group__1__Impl ; - public final void rule__ImplicationExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1_4__1" + // InternalSolverLanguageParser.g:5959:1: rule__DisjunctiveExpression__Group_1_1_4__1 : rule__DisjunctiveExpression__Group_1_1_4__1__Impl ; + public final void rule__DisjunctiveExpression__Group_1_1_4__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4516:1: ( rule__ImplicationExpression__Group__1__Impl ) - // InternalSolverLanguageParser.g:4517:2: rule__ImplicationExpression__Group__1__Impl + // InternalSolverLanguageParser.g:5963:1: ( rule__DisjunctiveExpression__Group_1_1_4__1__Impl ) + // InternalSolverLanguageParser.g:5964:2: rule__DisjunctiveExpression__Group_1_1_4__1__Impl { pushFollow(FOLLOW_2); - rule__ImplicationExpression__Group__1__Impl(); + rule__DisjunctiveExpression__Group_1_1_4__1__Impl(); state._fsp--; @@ -14151,46 +18576,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group__1" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1_4__1" - // $ANTLR start "rule__ImplicationExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:4523:1: rule__ImplicationExpression__Group__1__Impl : ( ( rule__ImplicationExpression__Group_1__0 )? ) ; - public final void rule__ImplicationExpression__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__DisjunctiveExpression__Group_1_1_4__1__Impl" + // InternalSolverLanguageParser.g:5970:1: rule__DisjunctiveExpression__Group_1_1_4__1__Impl : ( ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) ) ; + public final void rule__DisjunctiveExpression__Group_1_1_4__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4527:1: ( ( ( rule__ImplicationExpression__Group_1__0 )? ) ) - // InternalSolverLanguageParser.g:4528:1: ( ( rule__ImplicationExpression__Group_1__0 )? ) + // InternalSolverLanguageParser.g:5974:1: ( ( ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) ) ) + // InternalSolverLanguageParser.g:5975:1: ( ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) ) { - // InternalSolverLanguageParser.g:4528:1: ( ( rule__ImplicationExpression__Group_1__0 )? ) - // InternalSolverLanguageParser.g:4529:2: ( rule__ImplicationExpression__Group_1__0 )? + // InternalSolverLanguageParser.g:5975:1: ( ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) ) + // InternalSolverLanguageParser.g:5976:2: ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) { - before(grammarAccess.getImplicationExpressionAccess().getGroup_1()); - // InternalSolverLanguageParser.g:4530:2: ( rule__ImplicationExpression__Group_1__0 )? - int alt32=2; - int LA32_0 = input.LA(1); - - if ( (LA32_0==EqualsSignGreaterThanSign) ) { - alt32=1; - } - switch (alt32) { - case 1 : - // InternalSolverLanguageParser.g:4530:3: rule__ImplicationExpression__Group_1__0 - { - pushFollow(FOLLOW_2); - rule__ImplicationExpression__Group_1__0(); - - state._fsp--; + before(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1()); + // InternalSolverLanguageParser.g:5977:2: ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) + // InternalSolverLanguageParser.g:5977:3: rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 + { + pushFollow(FOLLOW_2); + rule__DisjunctiveExpression__CasesAssignment_1_1_4_1(); + state._fsp--; - } - break; } - after(grammarAccess.getImplicationExpressionAccess().getGroup_1()); + after(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1()); } @@ -14209,26 +18623,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group__1__Impl" + // $ANTLR end "rule__DisjunctiveExpression__Group_1_1_4__1__Impl" - // $ANTLR start "rule__ImplicationExpression__Group_1__0" - // InternalSolverLanguageParser.g:4539:1: rule__ImplicationExpression__Group_1__0 : rule__ImplicationExpression__Group_1__0__Impl rule__ImplicationExpression__Group_1__1 ; - public final void rule__ImplicationExpression__Group_1__0() throws RecognitionException { + // $ANTLR start "rule__Case__Group__0" + // InternalSolverLanguageParser.g:5986:1: rule__Case__Group__0 : rule__Case__Group__0__Impl rule__Case__Group__1 ; + public final void rule__Case__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4543:1: ( rule__ImplicationExpression__Group_1__0__Impl rule__ImplicationExpression__Group_1__1 ) - // InternalSolverLanguageParser.g:4544:2: rule__ImplicationExpression__Group_1__0__Impl rule__ImplicationExpression__Group_1__1 + // InternalSolverLanguageParser.g:5990:1: ( rule__Case__Group__0__Impl rule__Case__Group__1 ) + // InternalSolverLanguageParser.g:5991:2: rule__Case__Group__0__Impl rule__Case__Group__1 { - pushFollow(FOLLOW_25); - rule__ImplicationExpression__Group_1__0__Impl(); + pushFollow(FOLLOW_34); + rule__Case__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ImplicationExpression__Group_1__1(); + rule__Case__Group__1(); state._fsp--; @@ -14247,29 +18661,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group_1__0" + // $ANTLR end "rule__Case__Group__0" - // $ANTLR start "rule__ImplicationExpression__Group_1__0__Impl" - // InternalSolverLanguageParser.g:4551:1: rule__ImplicationExpression__Group_1__0__Impl : ( () ) ; - public final void rule__ImplicationExpression__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Case__Group__0__Impl" + // InternalSolverLanguageParser.g:5998:1: rule__Case__Group__0__Impl : ( ( rule__Case__ConditionAssignment_0 ) ) ; + public final void rule__Case__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4555:1: ( ( () ) ) - // InternalSolverLanguageParser.g:4556:1: ( () ) + // InternalSolverLanguageParser.g:6002:1: ( ( ( rule__Case__ConditionAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:6003:1: ( ( rule__Case__ConditionAssignment_0 ) ) { - // InternalSolverLanguageParser.g:4556:1: ( () ) - // InternalSolverLanguageParser.g:4557:2: () + // InternalSolverLanguageParser.g:6003:1: ( ( rule__Case__ConditionAssignment_0 ) ) + // InternalSolverLanguageParser.g:6004:2: ( rule__Case__ConditionAssignment_0 ) { - before(grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0()); - // InternalSolverLanguageParser.g:4558:2: () - // InternalSolverLanguageParser.g:4558:3: + before(grammarAccess.getCaseAccess().getConditionAssignment_0()); + // InternalSolverLanguageParser.g:6005:2: ( rule__Case__ConditionAssignment_0 ) + // InternalSolverLanguageParser.g:6005:3: rule__Case__ConditionAssignment_0 { + pushFollow(FOLLOW_2); + rule__Case__ConditionAssignment_0(); + + state._fsp--; + + } - after(grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0()); + after(grammarAccess.getCaseAccess().getConditionAssignment_0()); } @@ -14277,6 +18697,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -14284,26 +18708,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group_1__0__Impl" + // $ANTLR end "rule__Case__Group__0__Impl" - // $ANTLR start "rule__ImplicationExpression__Group_1__1" - // InternalSolverLanguageParser.g:4566:1: rule__ImplicationExpression__Group_1__1 : rule__ImplicationExpression__Group_1__1__Impl rule__ImplicationExpression__Group_1__2 ; - public final void rule__ImplicationExpression__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__Case__Group__1" + // InternalSolverLanguageParser.g:6013:1: rule__Case__Group__1 : rule__Case__Group__1__Impl rule__Case__Group__2 ; + public final void rule__Case__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4570:1: ( rule__ImplicationExpression__Group_1__1__Impl rule__ImplicationExpression__Group_1__2 ) - // InternalSolverLanguageParser.g:4571:2: rule__ImplicationExpression__Group_1__1__Impl rule__ImplicationExpression__Group_1__2 + // InternalSolverLanguageParser.g:6017:1: ( rule__Case__Group__1__Impl rule__Case__Group__2 ) + // InternalSolverLanguageParser.g:6018:2: rule__Case__Group__1__Impl rule__Case__Group__2 { - pushFollow(FOLLOW_7); - rule__ImplicationExpression__Group_1__1__Impl(); + pushFollow(FOLLOW_12); + rule__Case__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ImplicationExpression__Group_1__2(); + rule__Case__Group__2(); state._fsp--; @@ -14322,35 +18746,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group_1__1" + // $ANTLR end "rule__Case__Group__1" - // $ANTLR start "rule__ImplicationExpression__Group_1__1__Impl" - // InternalSolverLanguageParser.g:4578:1: rule__ImplicationExpression__Group_1__1__Impl : ( ( rule__ImplicationExpression__OpAssignment_1_1 ) ) ; - public final void rule__ImplicationExpression__Group_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Case__Group__1__Impl" + // InternalSolverLanguageParser.g:6025:1: rule__Case__Group__1__Impl : ( HyphenMinusGreaterThanSign ) ; + public final void rule__Case__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4582:1: ( ( ( rule__ImplicationExpression__OpAssignment_1_1 ) ) ) - // InternalSolverLanguageParser.g:4583:1: ( ( rule__ImplicationExpression__OpAssignment_1_1 ) ) - { - // InternalSolverLanguageParser.g:4583:1: ( ( rule__ImplicationExpression__OpAssignment_1_1 ) ) - // InternalSolverLanguageParser.g:4584:2: ( rule__ImplicationExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:6029:1: ( ( HyphenMinusGreaterThanSign ) ) + // InternalSolverLanguageParser.g:6030:1: ( HyphenMinusGreaterThanSign ) { - before(grammarAccess.getImplicationExpressionAccess().getOpAssignment_1_1()); - // InternalSolverLanguageParser.g:4585:2: ( rule__ImplicationExpression__OpAssignment_1_1 ) - // InternalSolverLanguageParser.g:4585:3: rule__ImplicationExpression__OpAssignment_1_1 + // InternalSolverLanguageParser.g:6030:1: ( HyphenMinusGreaterThanSign ) + // InternalSolverLanguageParser.g:6031:2: HyphenMinusGreaterThanSign { - pushFollow(FOLLOW_2); - rule__ImplicationExpression__OpAssignment_1_1(); - - state._fsp--; - - - } - - after(grammarAccess.getImplicationExpressionAccess().getOpAssignment_1_1()); + before(grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); + match(input,HyphenMinusGreaterThanSign,FOLLOW_2); + after(grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); } @@ -14369,21 +18783,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group_1__1__Impl" + // $ANTLR end "rule__Case__Group__1__Impl" - // $ANTLR start "rule__ImplicationExpression__Group_1__2" - // InternalSolverLanguageParser.g:4593:1: rule__ImplicationExpression__Group_1__2 : rule__ImplicationExpression__Group_1__2__Impl ; - public final void rule__ImplicationExpression__Group_1__2() throws RecognitionException { + // $ANTLR start "rule__Case__Group__2" + // InternalSolverLanguageParser.g:6040:1: rule__Case__Group__2 : rule__Case__Group__2__Impl ; + public final void rule__Case__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4597:1: ( rule__ImplicationExpression__Group_1__2__Impl ) - // InternalSolverLanguageParser.g:4598:2: rule__ImplicationExpression__Group_1__2__Impl + // InternalSolverLanguageParser.g:6044:1: ( rule__Case__Group__2__Impl ) + // InternalSolverLanguageParser.g:6045:2: rule__Case__Group__2__Impl { pushFollow(FOLLOW_2); - rule__ImplicationExpression__Group_1__2__Impl(); + rule__Case__Group__2__Impl(); state._fsp--; @@ -14402,35 +18816,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group_1__2" + // $ANTLR end "rule__Case__Group__2" - // $ANTLR start "rule__ImplicationExpression__Group_1__2__Impl" - // InternalSolverLanguageParser.g:4604:1: rule__ImplicationExpression__Group_1__2__Impl : ( ( rule__ImplicationExpression__RightAssignment_1_2 ) ) ; - public final void rule__ImplicationExpression__Group_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Case__Group__2__Impl" + // InternalSolverLanguageParser.g:6051:1: rule__Case__Group__2__Impl : ( ( rule__Case__BodyAssignment_2 ) ) ; + public final void rule__Case__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4608:1: ( ( ( rule__ImplicationExpression__RightAssignment_1_2 ) ) ) - // InternalSolverLanguageParser.g:4609:1: ( ( rule__ImplicationExpression__RightAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6055:1: ( ( ( rule__Case__BodyAssignment_2 ) ) ) + // InternalSolverLanguageParser.g:6056:1: ( ( rule__Case__BodyAssignment_2 ) ) { - // InternalSolverLanguageParser.g:4609:1: ( ( rule__ImplicationExpression__RightAssignment_1_2 ) ) - // InternalSolverLanguageParser.g:4610:2: ( rule__ImplicationExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:6056:1: ( ( rule__Case__BodyAssignment_2 ) ) + // InternalSolverLanguageParser.g:6057:2: ( rule__Case__BodyAssignment_2 ) { - before(grammarAccess.getImplicationExpressionAccess().getRightAssignment_1_2()); - // InternalSolverLanguageParser.g:4611:2: ( rule__ImplicationExpression__RightAssignment_1_2 ) - // InternalSolverLanguageParser.g:4611:3: rule__ImplicationExpression__RightAssignment_1_2 + before(grammarAccess.getCaseAccess().getBodyAssignment_2()); + // InternalSolverLanguageParser.g:6058:2: ( rule__Case__BodyAssignment_2 ) + // InternalSolverLanguageParser.g:6058:3: rule__Case__BodyAssignment_2 { pushFollow(FOLLOW_2); - rule__ImplicationExpression__RightAssignment_1_2(); + rule__Case__BodyAssignment_2(); state._fsp--; } - after(grammarAccess.getImplicationExpressionAccess().getRightAssignment_1_2()); + after(grammarAccess.getCaseAccess().getBodyAssignment_2()); } @@ -14449,26 +18863,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__Group_1__2__Impl" + // $ANTLR end "rule__Case__Group__2__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group__0" - // InternalSolverLanguageParser.g:4620:1: rule__DisjunctiveExpression__Group__0 : rule__DisjunctiveExpression__Group__0__Impl rule__DisjunctiveExpression__Group__1 ; - public final void rule__DisjunctiveExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group__0" + // InternalSolverLanguageParser.g:6067:1: rule__ConjunctiveExpression__Group__0 : rule__ConjunctiveExpression__Group__0__Impl rule__ConjunctiveExpression__Group__1 ; + public final void rule__ConjunctiveExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4624:1: ( rule__DisjunctiveExpression__Group__0__Impl rule__DisjunctiveExpression__Group__1 ) - // InternalSolverLanguageParser.g:4625:2: rule__DisjunctiveExpression__Group__0__Impl rule__DisjunctiveExpression__Group__1 + // InternalSolverLanguageParser.g:6071:1: ( rule__ConjunctiveExpression__Group__0__Impl rule__ConjunctiveExpression__Group__1 ) + // InternalSolverLanguageParser.g:6072:2: rule__ConjunctiveExpression__Group__0__Impl rule__ConjunctiveExpression__Group__1 { - pushFollow(FOLLOW_26); - rule__DisjunctiveExpression__Group__0__Impl(); + pushFollow(FOLLOW_35); + rule__ConjunctiveExpression__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group__1(); + rule__ConjunctiveExpression__Group__1(); state._fsp--; @@ -14487,29 +18901,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group__0" + // $ANTLR end "rule__ConjunctiveExpression__Group__0" - // $ANTLR start "rule__DisjunctiveExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:4632:1: rule__DisjunctiveExpression__Group__0__Impl : ( ruleConjunctiveExpression ) ; - public final void rule__DisjunctiveExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:6079:1: rule__ConjunctiveExpression__Group__0__Impl : ( ruleComparisonExpression ) ; + public final void rule__ConjunctiveExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4636:1: ( ( ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:4637:1: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:6083:1: ( ( ruleComparisonExpression ) ) + // InternalSolverLanguageParser.g:6084:1: ( ruleComparisonExpression ) { - // InternalSolverLanguageParser.g:4637:1: ( ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:4638:2: ruleConjunctiveExpression + // InternalSolverLanguageParser.g:6084:1: ( ruleComparisonExpression ) + // InternalSolverLanguageParser.g:6085:2: ruleComparisonExpression { - before(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); + before(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleConjunctiveExpression(); + ruleComparisonExpression(); state._fsp--; - after(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); + after(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); } @@ -14528,21 +18942,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group__0__Impl" + // $ANTLR end "rule__ConjunctiveExpression__Group__0__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group__1" - // InternalSolverLanguageParser.g:4647:1: rule__DisjunctiveExpression__Group__1 : rule__DisjunctiveExpression__Group__1__Impl ; - public final void rule__DisjunctiveExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group__1" + // InternalSolverLanguageParser.g:6094:1: rule__ConjunctiveExpression__Group__1 : rule__ConjunctiveExpression__Group__1__Impl ; + public final void rule__ConjunctiveExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4651:1: ( rule__DisjunctiveExpression__Group__1__Impl ) - // InternalSolverLanguageParser.g:4652:2: rule__DisjunctiveExpression__Group__1__Impl + // InternalSolverLanguageParser.g:6098:1: ( rule__ConjunctiveExpression__Group__1__Impl ) + // InternalSolverLanguageParser.g:6099:2: rule__ConjunctiveExpression__Group__1__Impl { pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group__1__Impl(); + rule__ConjunctiveExpression__Group__1__Impl(); state._fsp--; @@ -14561,36 +18975,36 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group__1" + // $ANTLR end "rule__ConjunctiveExpression__Group__1" - // $ANTLR start "rule__DisjunctiveExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:4658:1: rule__DisjunctiveExpression__Group__1__Impl : ( ( rule__DisjunctiveExpression__Alternatives_1 )? ) ; - public final void rule__DisjunctiveExpression__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:6105:1: rule__ConjunctiveExpression__Group__1__Impl : ( ( rule__ConjunctiveExpression__Group_1__0 )? ) ; + public final void rule__ConjunctiveExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4662:1: ( ( ( rule__DisjunctiveExpression__Alternatives_1 )? ) ) - // InternalSolverLanguageParser.g:4663:1: ( ( rule__DisjunctiveExpression__Alternatives_1 )? ) + // InternalSolverLanguageParser.g:6109:1: ( ( ( rule__ConjunctiveExpression__Group_1__0 )? ) ) + // InternalSolverLanguageParser.g:6110:1: ( ( rule__ConjunctiveExpression__Group_1__0 )? ) { - // InternalSolverLanguageParser.g:4663:1: ( ( rule__DisjunctiveExpression__Alternatives_1 )? ) - // InternalSolverLanguageParser.g:4664:2: ( rule__DisjunctiveExpression__Alternatives_1 )? + // InternalSolverLanguageParser.g:6110:1: ( ( rule__ConjunctiveExpression__Group_1__0 )? ) + // InternalSolverLanguageParser.g:6111:2: ( rule__ConjunctiveExpression__Group_1__0 )? { - before(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1()); - // InternalSolverLanguageParser.g:4665:2: ( rule__DisjunctiveExpression__Alternatives_1 )? - int alt33=2; - int LA33_0 = input.LA(1); + before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1()); + // InternalSolverLanguageParser.g:6112:2: ( rule__ConjunctiveExpression__Group_1__0 )? + int alt44=2; + int LA44_0 = input.LA(1); - if ( (LA33_0==HyphenMinusGreaterThanSign||LA33_0==Semicolon) ) { - alt33=1; + if ( (LA44_0==Comma) ) { + alt44=1; } - switch (alt33) { + switch (alt44) { case 1 : - // InternalSolverLanguageParser.g:4665:3: rule__DisjunctiveExpression__Alternatives_1 + // InternalSolverLanguageParser.g:6112:3: rule__ConjunctiveExpression__Group_1__0 { pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Alternatives_1(); + rule__ConjunctiveExpression__Group_1__0(); state._fsp--; @@ -14600,7 +19014,7 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } - after(grammarAccess.getDisjunctiveExpressionAccess().getAlternatives_1()); + after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1()); } @@ -14619,26 +19033,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group__1__Impl" + // $ANTLR end "rule__ConjunctiveExpression__Group__1__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_0__0" - // InternalSolverLanguageParser.g:4674:1: rule__DisjunctiveExpression__Group_1_0__0 : rule__DisjunctiveExpression__Group_1_0__0__Impl rule__DisjunctiveExpression__Group_1_0__1 ; - public final void rule__DisjunctiveExpression__Group_1_0__0() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group_1__0" + // InternalSolverLanguageParser.g:6121:1: rule__ConjunctiveExpression__Group_1__0 : rule__ConjunctiveExpression__Group_1__0__Impl rule__ConjunctiveExpression__Group_1__1 ; + public final void rule__ConjunctiveExpression__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4678:1: ( rule__DisjunctiveExpression__Group_1_0__0__Impl rule__DisjunctiveExpression__Group_1_0__1 ) - // InternalSolverLanguageParser.g:4679:2: rule__DisjunctiveExpression__Group_1_0__0__Impl rule__DisjunctiveExpression__Group_1_0__1 + // InternalSolverLanguageParser.g:6125:1: ( rule__ConjunctiveExpression__Group_1__0__Impl rule__ConjunctiveExpression__Group_1__1 ) + // InternalSolverLanguageParser.g:6126:2: rule__ConjunctiveExpression__Group_1__0__Impl rule__ConjunctiveExpression__Group_1__1 { - pushFollow(FOLLOW_27); - rule__DisjunctiveExpression__Group_1_0__0__Impl(); + pushFollow(FOLLOW_35); + rule__ConjunctiveExpression__Group_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_0__1(); + rule__ConjunctiveExpression__Group_1__1(); state._fsp--; @@ -14657,29 +19071,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_0__0" + // $ANTLR end "rule__ConjunctiveExpression__Group_1__0" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_0__0__Impl" - // InternalSolverLanguageParser.g:4686:1: rule__DisjunctiveExpression__Group_1_0__0__Impl : ( () ) ; - public final void rule__DisjunctiveExpression__Group_1_0__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group_1__0__Impl" + // InternalSolverLanguageParser.g:6133:1: rule__ConjunctiveExpression__Group_1__0__Impl : ( () ) ; + public final void rule__ConjunctiveExpression__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4690:1: ( ( () ) ) - // InternalSolverLanguageParser.g:4691:1: ( () ) + // InternalSolverLanguageParser.g:6137:1: ( ( () ) ) + // InternalSolverLanguageParser.g:6138:1: ( () ) { - // InternalSolverLanguageParser.g:4691:1: ( () ) - // InternalSolverLanguageParser.g:4692:2: () + // InternalSolverLanguageParser.g:6138:1: ( () ) + // InternalSolverLanguageParser.g:6139:2: () { - before(grammarAccess.getDisjunctiveExpressionAccess().getDisjunctionChildrenAction_1_0_0()); - // InternalSolverLanguageParser.g:4693:2: () - // InternalSolverLanguageParser.g:4693:3: + before(grammarAccess.getConjunctiveExpressionAccess().getConjunctionChildrenAction_1_0()); + // InternalSolverLanguageParser.g:6140:2: () + // InternalSolverLanguageParser.g:6140:3: { } - after(grammarAccess.getDisjunctiveExpressionAccess().getDisjunctionChildrenAction_1_0_0()); + after(grammarAccess.getConjunctiveExpressionAccess().getConjunctionChildrenAction_1_0()); } @@ -14694,21 +19108,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_0__0__Impl" + // $ANTLR end "rule__ConjunctiveExpression__Group_1__0__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_0__1" - // InternalSolverLanguageParser.g:4701:1: rule__DisjunctiveExpression__Group_1_0__1 : rule__DisjunctiveExpression__Group_1_0__1__Impl ; - public final void rule__DisjunctiveExpression__Group_1_0__1() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group_1__1" + // InternalSolverLanguageParser.g:6148:1: rule__ConjunctiveExpression__Group_1__1 : rule__ConjunctiveExpression__Group_1__1__Impl ; + public final void rule__ConjunctiveExpression__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4705:1: ( rule__DisjunctiveExpression__Group_1_0__1__Impl ) - // InternalSolverLanguageParser.g:4706:2: rule__DisjunctiveExpression__Group_1_0__1__Impl + // InternalSolverLanguageParser.g:6152:1: ( rule__ConjunctiveExpression__Group_1__1__Impl ) + // InternalSolverLanguageParser.g:6153:2: rule__ConjunctiveExpression__Group_1__1__Impl { pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_0__1__Impl(); + rule__ConjunctiveExpression__Group_1__1__Impl(); state._fsp--; @@ -14727,62 +19141,62 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_0__1" + // $ANTLR end "rule__ConjunctiveExpression__Group_1__1" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_0__1__Impl" - // InternalSolverLanguageParser.g:4712:1: rule__DisjunctiveExpression__Group_1_0__1__Impl : ( ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) ) ; - public final void rule__DisjunctiveExpression__Group_1_0__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group_1__1__Impl" + // InternalSolverLanguageParser.g:6159:1: rule__ConjunctiveExpression__Group_1__1__Impl : ( ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) ) ; + public final void rule__ConjunctiveExpression__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4716:1: ( ( ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) ) ) - // InternalSolverLanguageParser.g:4717:1: ( ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) ) + // InternalSolverLanguageParser.g:6163:1: ( ( ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) ) ) + // InternalSolverLanguageParser.g:6164:1: ( ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) ) { - // InternalSolverLanguageParser.g:4717:1: ( ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) ) - // InternalSolverLanguageParser.g:4718:2: ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) + // InternalSolverLanguageParser.g:6164:1: ( ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) ) + // InternalSolverLanguageParser.g:6165:2: ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) { - // InternalSolverLanguageParser.g:4718:2: ( ( rule__DisjunctiveExpression__Group_1_0_1__0 ) ) - // InternalSolverLanguageParser.g:4719:3: ( rule__DisjunctiveExpression__Group_1_0_1__0 ) + // InternalSolverLanguageParser.g:6165:2: ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) + // InternalSolverLanguageParser.g:6166:3: ( rule__ConjunctiveExpression__Group_1_1__0 ) { - before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); - // InternalSolverLanguageParser.g:4720:3: ( rule__DisjunctiveExpression__Group_1_0_1__0 ) - // InternalSolverLanguageParser.g:4720:4: rule__DisjunctiveExpression__Group_1_0_1__0 + before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); + // InternalSolverLanguageParser.g:6167:3: ( rule__ConjunctiveExpression__Group_1_1__0 ) + // InternalSolverLanguageParser.g:6167:4: rule__ConjunctiveExpression__Group_1_1__0 { - pushFollow(FOLLOW_28); - rule__DisjunctiveExpression__Group_1_0_1__0(); + pushFollow(FOLLOW_29); + rule__ConjunctiveExpression__Group_1_1__0(); state._fsp--; } - after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); + after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } - // InternalSolverLanguageParser.g:4723:2: ( ( rule__DisjunctiveExpression__Group_1_0_1__0 )* ) - // InternalSolverLanguageParser.g:4724:3: ( rule__DisjunctiveExpression__Group_1_0_1__0 )* + // InternalSolverLanguageParser.g:6170:2: ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) + // InternalSolverLanguageParser.g:6171:3: ( rule__ConjunctiveExpression__Group_1_1__0 )* { - before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); - // InternalSolverLanguageParser.g:4725:3: ( rule__DisjunctiveExpression__Group_1_0_1__0 )* - loop34: + before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); + // InternalSolverLanguageParser.g:6172:3: ( rule__ConjunctiveExpression__Group_1_1__0 )* + loop45: do { - int alt34=2; - int LA34_0 = input.LA(1); + int alt45=2; + int LA45_0 = input.LA(1); - if ( (LA34_0==Semicolon) ) { - alt34=1; + if ( (LA45_0==Comma) ) { + alt45=1; } - switch (alt34) { + switch (alt45) { case 1 : - // InternalSolverLanguageParser.g:4725:4: rule__DisjunctiveExpression__Group_1_0_1__0 + // InternalSolverLanguageParser.g:6172:4: rule__ConjunctiveExpression__Group_1_1__0 { - pushFollow(FOLLOW_28); - rule__DisjunctiveExpression__Group_1_0_1__0(); + pushFollow(FOLLOW_29); + rule__ConjunctiveExpression__Group_1_1__0(); state._fsp--; @@ -14791,11 +19205,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP break; default : - break loop34; + break loop45; } } while (true); - after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_0_1()); + after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); } @@ -14817,26 +19231,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_0__1__Impl" + // $ANTLR end "rule__ConjunctiveExpression__Group_1__1__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_0_1__0" - // InternalSolverLanguageParser.g:4735:1: rule__DisjunctiveExpression__Group_1_0_1__0 : rule__DisjunctiveExpression__Group_1_0_1__0__Impl rule__DisjunctiveExpression__Group_1_0_1__1 ; - public final void rule__DisjunctiveExpression__Group_1_0_1__0() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group_1_1__0" + // InternalSolverLanguageParser.g:6182:1: rule__ConjunctiveExpression__Group_1_1__0 : rule__ConjunctiveExpression__Group_1_1__0__Impl rule__ConjunctiveExpression__Group_1_1__1 ; + public final void rule__ConjunctiveExpression__Group_1_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4739:1: ( rule__DisjunctiveExpression__Group_1_0_1__0__Impl rule__DisjunctiveExpression__Group_1_0_1__1 ) - // InternalSolverLanguageParser.g:4740:2: rule__DisjunctiveExpression__Group_1_0_1__0__Impl rule__DisjunctiveExpression__Group_1_0_1__1 + // InternalSolverLanguageParser.g:6186:1: ( rule__ConjunctiveExpression__Group_1_1__0__Impl rule__ConjunctiveExpression__Group_1_1__1 ) + // InternalSolverLanguageParser.g:6187:2: rule__ConjunctiveExpression__Group_1_1__0__Impl rule__ConjunctiveExpression__Group_1_1__1 { - pushFollow(FOLLOW_7); - rule__DisjunctiveExpression__Group_1_0_1__0__Impl(); + pushFollow(FOLLOW_12); + rule__ConjunctiveExpression__Group_1_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_0_1__1(); + rule__ConjunctiveExpression__Group_1_1__1(); state._fsp--; @@ -14855,25 +19269,105 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_0_1__0" + // $ANTLR end "rule__ConjunctiveExpression__Group_1_1__0" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_0_1__0__Impl" - // InternalSolverLanguageParser.g:4747:1: rule__DisjunctiveExpression__Group_1_0_1__0__Impl : ( Semicolon ) ; - public final void rule__DisjunctiveExpression__Group_1_0_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ConjunctiveExpression__Group_1_1__0__Impl" + // InternalSolverLanguageParser.g:6194:1: rule__ConjunctiveExpression__Group_1_1__0__Impl : ( Comma ) ; + public final void rule__ConjunctiveExpression__Group_1_1__0__Impl() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:6198:1: ( ( Comma ) ) + // InternalSolverLanguageParser.g:6199:1: ( Comma ) + { + // InternalSolverLanguageParser.g:6199:1: ( Comma ) + // InternalSolverLanguageParser.g:6200:2: Comma + { + before(grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); + match(input,Comma,FOLLOW_2); + after(grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConjunctiveExpression__Group_1_1__0__Impl" + + + // $ANTLR start "rule__ConjunctiveExpression__Group_1_1__1" + // InternalSolverLanguageParser.g:6209:1: rule__ConjunctiveExpression__Group_1_1__1 : rule__ConjunctiveExpression__Group_1_1__1__Impl ; + public final void rule__ConjunctiveExpression__Group_1_1__1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:6213:1: ( rule__ConjunctiveExpression__Group_1_1__1__Impl ) + // InternalSolverLanguageParser.g:6214:2: rule__ConjunctiveExpression__Group_1_1__1__Impl + { + pushFollow(FOLLOW_2); + rule__ConjunctiveExpression__Group_1_1__1__Impl(); + + state._fsp--; + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ConjunctiveExpression__Group_1_1__1" + + + // $ANTLR start "rule__ConjunctiveExpression__Group_1_1__1__Impl" + // InternalSolverLanguageParser.g:6220:1: rule__ConjunctiveExpression__Group_1_1__1__Impl : ( ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) ) ; + public final void rule__ConjunctiveExpression__Group_1_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4751:1: ( ( Semicolon ) ) - // InternalSolverLanguageParser.g:4752:1: ( Semicolon ) + // InternalSolverLanguageParser.g:6224:1: ( ( ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) ) ) + // InternalSolverLanguageParser.g:6225:1: ( ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) ) { - // InternalSolverLanguageParser.g:4752:1: ( Semicolon ) - // InternalSolverLanguageParser.g:4753:2: Semicolon + // InternalSolverLanguageParser.g:6225:1: ( ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) ) + // InternalSolverLanguageParser.g:6226:2: ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) { - before(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); - match(input,Semicolon,FOLLOW_2); - after(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); + before(grammarAccess.getConjunctiveExpressionAccess().getChildrenAssignment_1_1_1()); + // InternalSolverLanguageParser.g:6227:2: ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) + // InternalSolverLanguageParser.g:6227:3: rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 + { + pushFollow(FOLLOW_2); + rule__ConjunctiveExpression__ChildrenAssignment_1_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getConjunctiveExpressionAccess().getChildrenAssignment_1_1_1()); } @@ -14892,21 +19386,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_0_1__0__Impl" + // $ANTLR end "rule__ConjunctiveExpression__Group_1_1__1__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_0_1__1" - // InternalSolverLanguageParser.g:4762:1: rule__DisjunctiveExpression__Group_1_0_1__1 : rule__DisjunctiveExpression__Group_1_0_1__1__Impl ; - public final void rule__DisjunctiveExpression__Group_1_0_1__1() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group__0" + // InternalSolverLanguageParser.g:6236:1: rule__ComparisonExpression__Group__0 : rule__ComparisonExpression__Group__0__Impl rule__ComparisonExpression__Group__1 ; + public final void rule__ComparisonExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4766:1: ( rule__DisjunctiveExpression__Group_1_0_1__1__Impl ) - // InternalSolverLanguageParser.g:4767:2: rule__DisjunctiveExpression__Group_1_0_1__1__Impl + // InternalSolverLanguageParser.g:6240:1: ( rule__ComparisonExpression__Group__0__Impl rule__ComparisonExpression__Group__1 ) + // InternalSolverLanguageParser.g:6241:2: rule__ComparisonExpression__Group__0__Impl rule__ComparisonExpression__Group__1 { + pushFollow(FOLLOW_36); + rule__ComparisonExpression__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_0_1__1__Impl(); + rule__ComparisonExpression__Group__1(); state._fsp--; @@ -14925,35 +19424,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_0_1__1" + // $ANTLR end "rule__ComparisonExpression__Group__0" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_0_1__1__Impl" - // InternalSolverLanguageParser.g:4773:1: rule__DisjunctiveExpression__Group_1_0_1__1__Impl : ( ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) ) ; - public final void rule__DisjunctiveExpression__Group_1_0_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:6248:1: rule__ComparisonExpression__Group__0__Impl : ( ruleAdditiveExpression ) ; + public final void rule__ComparisonExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4777:1: ( ( ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) ) ) - // InternalSolverLanguageParser.g:4778:1: ( ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) ) + // InternalSolverLanguageParser.g:6252:1: ( ( ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:6253:1: ( ruleAdditiveExpression ) { - // InternalSolverLanguageParser.g:4778:1: ( ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) ) - // InternalSolverLanguageParser.g:4779:2: ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) - { - before(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1()); - // InternalSolverLanguageParser.g:4780:2: ( rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 ) - // InternalSolverLanguageParser.g:4780:3: rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 + // InternalSolverLanguageParser.g:6253:1: ( ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:6254:2: ruleAdditiveExpression { + before(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1(); + ruleAdditiveExpression(); state._fsp--; - - } - - after(grammarAccess.getDisjunctiveExpressionAccess().getChildrenAssignment_1_0_1_1()); + after(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); } @@ -14972,26 +19465,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_0_1__1__Impl" + // $ANTLR end "rule__ComparisonExpression__Group__0__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__0" - // InternalSolverLanguageParser.g:4789:1: rule__DisjunctiveExpression__Group_1_1__0 : rule__DisjunctiveExpression__Group_1_1__0__Impl rule__DisjunctiveExpression__Group_1_1__1 ; - public final void rule__DisjunctiveExpression__Group_1_1__0() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group__1" + // InternalSolverLanguageParser.g:6263:1: rule__ComparisonExpression__Group__1 : rule__ComparisonExpression__Group__1__Impl ; + public final void rule__ComparisonExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4793:1: ( rule__DisjunctiveExpression__Group_1_1__0__Impl rule__DisjunctiveExpression__Group_1_1__1 ) - // InternalSolverLanguageParser.g:4794:2: rule__DisjunctiveExpression__Group_1_1__0__Impl rule__DisjunctiveExpression__Group_1_1__1 + // InternalSolverLanguageParser.g:6267:1: ( rule__ComparisonExpression__Group__1__Impl ) + // InternalSolverLanguageParser.g:6268:2: rule__ComparisonExpression__Group__1__Impl { - pushFollow(FOLLOW_26); - rule__DisjunctiveExpression__Group_1_1__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_1__1(); + rule__ComparisonExpression__Group__1__Impl(); state._fsp--; @@ -15010,29 +19498,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__0" + // $ANTLR end "rule__ComparisonExpression__Group__1" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__0__Impl" - // InternalSolverLanguageParser.g:4801:1: rule__DisjunctiveExpression__Group_1_1__0__Impl : ( () ) ; - public final void rule__DisjunctiveExpression__Group_1_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:6274:1: rule__ComparisonExpression__Group__1__Impl : ( ( rule__ComparisonExpression__Group_1__0 )? ) ; + public final void rule__ComparisonExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4805:1: ( ( () ) ) - // InternalSolverLanguageParser.g:4806:1: ( () ) - { - // InternalSolverLanguageParser.g:4806:1: ( () ) - // InternalSolverLanguageParser.g:4807:2: () + // InternalSolverLanguageParser.g:6278:1: ( ( ( rule__ComparisonExpression__Group_1__0 )? ) ) + // InternalSolverLanguageParser.g:6279:1: ( ( rule__ComparisonExpression__Group_1__0 )? ) { - before(grammarAccess.getDisjunctiveExpressionAccess().getCaseConditionAction_1_1_0()); - // InternalSolverLanguageParser.g:4808:2: () - // InternalSolverLanguageParser.g:4808:3: + // InternalSolverLanguageParser.g:6279:1: ( ( rule__ComparisonExpression__Group_1__0 )? ) + // InternalSolverLanguageParser.g:6280:2: ( rule__ComparisonExpression__Group_1__0 )? { + before(grammarAccess.getComparisonExpressionAccess().getGroup_1()); + // InternalSolverLanguageParser.g:6281:2: ( rule__ComparisonExpression__Group_1__0 )? + int alt46=2; + int LA46_0 = input.LA(1); + + if ( (LA46_0==ExclamationMarkEqualsSign||(LA46_0>=LessThanSignEqualsSign && LA46_0<=EqualsSignEqualsSign)||LA46_0==GreaterThanSignEqualsSign||LA46_0==In||LA46_0==LessThanSign||LA46_0==GreaterThanSign) ) { + alt46=1; } + switch (alt46) { + case 1 : + // InternalSolverLanguageParser.g:6281:3: rule__ComparisonExpression__Group_1__0 + { + pushFollow(FOLLOW_2); + rule__ComparisonExpression__Group_1__0(); - after(grammarAccess.getDisjunctiveExpressionAccess().getCaseConditionAction_1_1_0()); + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getComparisonExpressionAccess().getGroup_1()); } @@ -15040,6 +19545,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -15047,26 +19556,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__0__Impl" + // $ANTLR end "rule__ComparisonExpression__Group__1__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__1" - // InternalSolverLanguageParser.g:4816:1: rule__DisjunctiveExpression__Group_1_1__1 : rule__DisjunctiveExpression__Group_1_1__1__Impl rule__DisjunctiveExpression__Group_1_1__2 ; - public final void rule__DisjunctiveExpression__Group_1_1__1() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group_1__0" + // InternalSolverLanguageParser.g:6290:1: rule__ComparisonExpression__Group_1__0 : rule__ComparisonExpression__Group_1__0__Impl rule__ComparisonExpression__Group_1__1 ; + public final void rule__ComparisonExpression__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4820:1: ( rule__DisjunctiveExpression__Group_1_1__1__Impl rule__DisjunctiveExpression__Group_1_1__2 ) - // InternalSolverLanguageParser.g:4821:2: rule__DisjunctiveExpression__Group_1_1__1__Impl rule__DisjunctiveExpression__Group_1_1__2 + // InternalSolverLanguageParser.g:6294:1: ( rule__ComparisonExpression__Group_1__0__Impl rule__ComparisonExpression__Group_1__1 ) + // InternalSolverLanguageParser.g:6295:2: rule__ComparisonExpression__Group_1__0__Impl rule__ComparisonExpression__Group_1__1 { - pushFollow(FOLLOW_7); - rule__DisjunctiveExpression__Group_1_1__1__Impl(); + pushFollow(FOLLOW_36); + rule__ComparisonExpression__Group_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_1__2(); + rule__ComparisonExpression__Group_1__1(); state._fsp--; @@ -15085,25 +19594,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__1" + // $ANTLR end "rule__ComparisonExpression__Group_1__0" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__1__Impl" - // InternalSolverLanguageParser.g:4828:1: rule__DisjunctiveExpression__Group_1_1__1__Impl : ( HyphenMinusGreaterThanSign ) ; - public final void rule__DisjunctiveExpression__Group_1_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group_1__0__Impl" + // InternalSolverLanguageParser.g:6302:1: rule__ComparisonExpression__Group_1__0__Impl : ( () ) ; + public final void rule__ComparisonExpression__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4832:1: ( ( HyphenMinusGreaterThanSign ) ) - // InternalSolverLanguageParser.g:4833:1: ( HyphenMinusGreaterThanSign ) + // InternalSolverLanguageParser.g:6306:1: ( ( () ) ) + // InternalSolverLanguageParser.g:6307:1: ( () ) { - // InternalSolverLanguageParser.g:4833:1: ( HyphenMinusGreaterThanSign ) - // InternalSolverLanguageParser.g:4834:2: HyphenMinusGreaterThanSign + // InternalSolverLanguageParser.g:6307:1: ( () ) + // InternalSolverLanguageParser.g:6308:2: () { - before(grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); - match(input,HyphenMinusGreaterThanSign,FOLLOW_2); - after(grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); + before(grammarAccess.getComparisonExpressionAccess().getBinaryExpressionLeftAction_1_0()); + // InternalSolverLanguageParser.g:6309:2: () + // InternalSolverLanguageParser.g:6309:3: + { + } + + after(grammarAccess.getComparisonExpressionAccess().getBinaryExpressionLeftAction_1_0()); } @@ -15111,10 +19624,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -15122,26 +19631,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__1__Impl" + // $ANTLR end "rule__ComparisonExpression__Group_1__0__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__2" - // InternalSolverLanguageParser.g:4843:1: rule__DisjunctiveExpression__Group_1_1__2 : rule__DisjunctiveExpression__Group_1_1__2__Impl rule__DisjunctiveExpression__Group_1_1__3 ; - public final void rule__DisjunctiveExpression__Group_1_1__2() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group_1__1" + // InternalSolverLanguageParser.g:6317:1: rule__ComparisonExpression__Group_1__1 : rule__ComparisonExpression__Group_1__1__Impl rule__ComparisonExpression__Group_1__2 ; + public final void rule__ComparisonExpression__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4847:1: ( rule__DisjunctiveExpression__Group_1_1__2__Impl rule__DisjunctiveExpression__Group_1_1__3 ) - // InternalSolverLanguageParser.g:4848:2: rule__DisjunctiveExpression__Group_1_1__2__Impl rule__DisjunctiveExpression__Group_1_1__3 + // InternalSolverLanguageParser.g:6321:1: ( rule__ComparisonExpression__Group_1__1__Impl rule__ComparisonExpression__Group_1__2 ) + // InternalSolverLanguageParser.g:6322:2: rule__ComparisonExpression__Group_1__1__Impl rule__ComparisonExpression__Group_1__2 { - pushFollow(FOLLOW_27); - rule__DisjunctiveExpression__Group_1_1__2__Impl(); + pushFollow(FOLLOW_12); + rule__ComparisonExpression__Group_1__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_1__3(); + rule__ComparisonExpression__Group_1__2(); state._fsp--; @@ -15160,35 +19669,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__2" + // $ANTLR end "rule__ComparisonExpression__Group_1__1" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__2__Impl" - // InternalSolverLanguageParser.g:4855:1: rule__DisjunctiveExpression__Group_1_1__2__Impl : ( ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) ) ; - public final void rule__DisjunctiveExpression__Group_1_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group_1__1__Impl" + // InternalSolverLanguageParser.g:6329:1: rule__ComparisonExpression__Group_1__1__Impl : ( ( rule__ComparisonExpression__OpAssignment_1_1 ) ) ; + public final void rule__ComparisonExpression__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4859:1: ( ( ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) ) ) - // InternalSolverLanguageParser.g:4860:1: ( ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) ) + // InternalSolverLanguageParser.g:6333:1: ( ( ( rule__ComparisonExpression__OpAssignment_1_1 ) ) ) + // InternalSolverLanguageParser.g:6334:1: ( ( rule__ComparisonExpression__OpAssignment_1_1 ) ) { - // InternalSolverLanguageParser.g:4860:1: ( ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) ) - // InternalSolverLanguageParser.g:4861:2: ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) + // InternalSolverLanguageParser.g:6334:1: ( ( rule__ComparisonExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:6335:2: ( rule__ComparisonExpression__OpAssignment_1_1 ) { - before(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2()); - // InternalSolverLanguageParser.g:4862:2: ( rule__DisjunctiveExpression__BodyAssignment_1_1_2 ) - // InternalSolverLanguageParser.g:4862:3: rule__DisjunctiveExpression__BodyAssignment_1_1_2 + before(grammarAccess.getComparisonExpressionAccess().getOpAssignment_1_1()); + // InternalSolverLanguageParser.g:6336:2: ( rule__ComparisonExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:6336:3: rule__ComparisonExpression__OpAssignment_1_1 { pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__BodyAssignment_1_1_2(); + rule__ComparisonExpression__OpAssignment_1_1(); state._fsp--; } - after(grammarAccess.getDisjunctiveExpressionAccess().getBodyAssignment_1_1_2()); + after(grammarAccess.getComparisonExpressionAccess().getOpAssignment_1_1()); } @@ -15207,26 +19716,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__2__Impl" + // $ANTLR end "rule__ComparisonExpression__Group_1__1__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__3" - // InternalSolverLanguageParser.g:4870:1: rule__DisjunctiveExpression__Group_1_1__3 : rule__DisjunctiveExpression__Group_1_1__3__Impl rule__DisjunctiveExpression__Group_1_1__4 ; - public final void rule__DisjunctiveExpression__Group_1_1__3() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group_1__2" + // InternalSolverLanguageParser.g:6344:1: rule__ComparisonExpression__Group_1__2 : rule__ComparisonExpression__Group_1__2__Impl ; + public final void rule__ComparisonExpression__Group_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4874:1: ( rule__DisjunctiveExpression__Group_1_1__3__Impl rule__DisjunctiveExpression__Group_1_1__4 ) - // InternalSolverLanguageParser.g:4875:2: rule__DisjunctiveExpression__Group_1_1__3__Impl rule__DisjunctiveExpression__Group_1_1__4 + // InternalSolverLanguageParser.g:6348:1: ( rule__ComparisonExpression__Group_1__2__Impl ) + // InternalSolverLanguageParser.g:6349:2: rule__ComparisonExpression__Group_1__2__Impl { - pushFollow(FOLLOW_27); - rule__DisjunctiveExpression__Group_1_1__3__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_1__4(); + rule__ComparisonExpression__Group_1__2__Impl(); state._fsp--; @@ -15245,29 +19749,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__3" + // $ANTLR end "rule__ComparisonExpression__Group_1__2" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__3__Impl" - // InternalSolverLanguageParser.g:4882:1: rule__DisjunctiveExpression__Group_1_1__3__Impl : ( () ) ; - public final void rule__DisjunctiveExpression__Group_1_1__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ComparisonExpression__Group_1__2__Impl" + // InternalSolverLanguageParser.g:6355:1: rule__ComparisonExpression__Group_1__2__Impl : ( ( rule__ComparisonExpression__RightAssignment_1_2 ) ) ; + public final void rule__ComparisonExpression__Group_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4886:1: ( ( () ) ) - // InternalSolverLanguageParser.g:4887:1: ( () ) + // InternalSolverLanguageParser.g:6359:1: ( ( ( rule__ComparisonExpression__RightAssignment_1_2 ) ) ) + // InternalSolverLanguageParser.g:6360:1: ( ( rule__ComparisonExpression__RightAssignment_1_2 ) ) { - // InternalSolverLanguageParser.g:4887:1: ( () ) - // InternalSolverLanguageParser.g:4888:2: () + // InternalSolverLanguageParser.g:6360:1: ( ( rule__ComparisonExpression__RightAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6361:2: ( rule__ComparisonExpression__RightAssignment_1_2 ) { - before(grammarAccess.getDisjunctiveExpressionAccess().getSwitchCasesAction_1_1_3()); - // InternalSolverLanguageParser.g:4889:2: () - // InternalSolverLanguageParser.g:4889:3: + before(grammarAccess.getComparisonExpressionAccess().getRightAssignment_1_2()); + // InternalSolverLanguageParser.g:6362:2: ( rule__ComparisonExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:6362:3: rule__ComparisonExpression__RightAssignment_1_2 { + pushFollow(FOLLOW_2); + rule__ComparisonExpression__RightAssignment_1_2(); + + state._fsp--; + + } - after(grammarAccess.getDisjunctiveExpressionAccess().getSwitchCasesAction_1_1_3()); + after(grammarAccess.getComparisonExpressionAccess().getRightAssignment_1_2()); } @@ -15275,6 +19785,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -15282,21 +19796,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__3__Impl" + // $ANTLR end "rule__ComparisonExpression__Group_1__2__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__4" - // InternalSolverLanguageParser.g:4897:1: rule__DisjunctiveExpression__Group_1_1__4 : rule__DisjunctiveExpression__Group_1_1__4__Impl ; - public final void rule__DisjunctiveExpression__Group_1_1__4() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group__0" + // InternalSolverLanguageParser.g:6371:1: rule__AdditiveExpression__Group__0 : rule__AdditiveExpression__Group__0__Impl rule__AdditiveExpression__Group__1 ; + public final void rule__AdditiveExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4901:1: ( rule__DisjunctiveExpression__Group_1_1__4__Impl ) - // InternalSolverLanguageParser.g:4902:2: rule__DisjunctiveExpression__Group_1_1__4__Impl + // InternalSolverLanguageParser.g:6375:1: ( rule__AdditiveExpression__Group__0__Impl rule__AdditiveExpression__Group__1 ) + // InternalSolverLanguageParser.g:6376:2: rule__AdditiveExpression__Group__0__Impl rule__AdditiveExpression__Group__1 { + pushFollow(FOLLOW_37); + rule__AdditiveExpression__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_1__4__Impl(); + rule__AdditiveExpression__Group__1(); state._fsp--; @@ -15315,53 +19834,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__4" + // $ANTLR end "rule__AdditiveExpression__Group__0" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1__4__Impl" - // InternalSolverLanguageParser.g:4908:1: rule__DisjunctiveExpression__Group_1_1__4__Impl : ( ( rule__DisjunctiveExpression__Group_1_1_4__0 )* ) ; - public final void rule__DisjunctiveExpression__Group_1_1__4__Impl() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:6383:1: rule__AdditiveExpression__Group__0__Impl : ( ruleMultiplicativeExpression ) ; + public final void rule__AdditiveExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4912:1: ( ( ( rule__DisjunctiveExpression__Group_1_1_4__0 )* ) ) - // InternalSolverLanguageParser.g:4913:1: ( ( rule__DisjunctiveExpression__Group_1_1_4__0 )* ) + // InternalSolverLanguageParser.g:6387:1: ( ( ruleMultiplicativeExpression ) ) + // InternalSolverLanguageParser.g:6388:1: ( ruleMultiplicativeExpression ) { - // InternalSolverLanguageParser.g:4913:1: ( ( rule__DisjunctiveExpression__Group_1_1_4__0 )* ) - // InternalSolverLanguageParser.g:4914:2: ( rule__DisjunctiveExpression__Group_1_1_4__0 )* + // InternalSolverLanguageParser.g:6388:1: ( ruleMultiplicativeExpression ) + // InternalSolverLanguageParser.g:6389:2: ruleMultiplicativeExpression { - before(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1_4()); - // InternalSolverLanguageParser.g:4915:2: ( rule__DisjunctiveExpression__Group_1_1_4__0 )* - loop35: - do { - int alt35=2; - int LA35_0 = input.LA(1); - - if ( (LA35_0==Semicolon) ) { - alt35=1; - } - - - switch (alt35) { - case 1 : - // InternalSolverLanguageParser.g:4915:3: rule__DisjunctiveExpression__Group_1_1_4__0 - { - pushFollow(FOLLOW_28); - rule__DisjunctiveExpression__Group_1_1_4__0(); - - state._fsp--; - - - } - break; + before(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleMultiplicativeExpression(); - default : - break loop35; - } - } while (true); + state._fsp--; - after(grammarAccess.getDisjunctiveExpressionAccess().getGroup_1_1_4()); + after(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); } @@ -15380,26 +19875,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1__4__Impl" + // $ANTLR end "rule__AdditiveExpression__Group__0__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1_4__0" - // InternalSolverLanguageParser.g:4924:1: rule__DisjunctiveExpression__Group_1_1_4__0 : rule__DisjunctiveExpression__Group_1_1_4__0__Impl rule__DisjunctiveExpression__Group_1_1_4__1 ; - public final void rule__DisjunctiveExpression__Group_1_1_4__0() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group__1" + // InternalSolverLanguageParser.g:6398:1: rule__AdditiveExpression__Group__1 : rule__AdditiveExpression__Group__1__Impl ; + public final void rule__AdditiveExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4928:1: ( rule__DisjunctiveExpression__Group_1_1_4__0__Impl rule__DisjunctiveExpression__Group_1_1_4__1 ) - // InternalSolverLanguageParser.g:4929:2: rule__DisjunctiveExpression__Group_1_1_4__0__Impl rule__DisjunctiveExpression__Group_1_1_4__1 + // InternalSolverLanguageParser.g:6402:1: ( rule__AdditiveExpression__Group__1__Impl ) + // InternalSolverLanguageParser.g:6403:2: rule__AdditiveExpression__Group__1__Impl { - pushFollow(FOLLOW_7); - rule__DisjunctiveExpression__Group_1_1_4__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_1_4__1(); + rule__AdditiveExpression__Group__1__Impl(); state._fsp--; @@ -15418,25 +19908,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1_4__0" + // $ANTLR end "rule__AdditiveExpression__Group__1" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1_4__0__Impl" - // InternalSolverLanguageParser.g:4936:1: rule__DisjunctiveExpression__Group_1_1_4__0__Impl : ( Semicolon ) ; - public final void rule__DisjunctiveExpression__Group_1_1_4__0__Impl() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:6409:1: rule__AdditiveExpression__Group__1__Impl : ( ( rule__AdditiveExpression__Group_1__0 )* ) ; + public final void rule__AdditiveExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4940:1: ( ( Semicolon ) ) - // InternalSolverLanguageParser.g:4941:1: ( Semicolon ) + // InternalSolverLanguageParser.g:6413:1: ( ( ( rule__AdditiveExpression__Group_1__0 )* ) ) + // InternalSolverLanguageParser.g:6414:1: ( ( rule__AdditiveExpression__Group_1__0 )* ) { - // InternalSolverLanguageParser.g:4941:1: ( Semicolon ) - // InternalSolverLanguageParser.g:4942:2: Semicolon + // InternalSolverLanguageParser.g:6414:1: ( ( rule__AdditiveExpression__Group_1__0 )* ) + // InternalSolverLanguageParser.g:6415:2: ( rule__AdditiveExpression__Group_1__0 )* { - before(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); - match(input,Semicolon,FOLLOW_2); - after(grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); + before(grammarAccess.getAdditiveExpressionAccess().getGroup_1()); + // InternalSolverLanguageParser.g:6416:2: ( rule__AdditiveExpression__Group_1__0 )* + loop47: + do { + int alt47=2; + int LA47_0 = input.LA(1); + + if ( (LA47_0==PlusSign||LA47_0==HyphenMinus) ) { + alt47=1; + } + + + switch (alt47) { + case 1 : + // InternalSolverLanguageParser.g:6416:3: rule__AdditiveExpression__Group_1__0 + { + pushFollow(FOLLOW_38); + rule__AdditiveExpression__Group_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop47; + } + } while (true); + + after(grammarAccess.getAdditiveExpressionAccess().getGroup_1()); } @@ -15455,21 +19973,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1_4__0__Impl" + // $ANTLR end "rule__AdditiveExpression__Group__1__Impl" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1_4__1" - // InternalSolverLanguageParser.g:4951:1: rule__DisjunctiveExpression__Group_1_1_4__1 : rule__DisjunctiveExpression__Group_1_1_4__1__Impl ; - public final void rule__DisjunctiveExpression__Group_1_1_4__1() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group_1__0" + // InternalSolverLanguageParser.g:6425:1: rule__AdditiveExpression__Group_1__0 : rule__AdditiveExpression__Group_1__0__Impl rule__AdditiveExpression__Group_1__1 ; + public final void rule__AdditiveExpression__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4955:1: ( rule__DisjunctiveExpression__Group_1_1_4__1__Impl ) - // InternalSolverLanguageParser.g:4956:2: rule__DisjunctiveExpression__Group_1_1_4__1__Impl + // InternalSolverLanguageParser.g:6429:1: ( rule__AdditiveExpression__Group_1__0__Impl rule__AdditiveExpression__Group_1__1 ) + // InternalSolverLanguageParser.g:6430:2: rule__AdditiveExpression__Group_1__0__Impl rule__AdditiveExpression__Group_1__1 { + pushFollow(FOLLOW_37); + rule__AdditiveExpression__Group_1__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__Group_1_1_4__1__Impl(); + rule__AdditiveExpression__Group_1__1(); state._fsp--; @@ -15488,35 +20011,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1_4__1" + // $ANTLR end "rule__AdditiveExpression__Group_1__0" - // $ANTLR start "rule__DisjunctiveExpression__Group_1_1_4__1__Impl" - // InternalSolverLanguageParser.g:4962:1: rule__DisjunctiveExpression__Group_1_1_4__1__Impl : ( ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) ) ; - public final void rule__DisjunctiveExpression__Group_1_1_4__1__Impl() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group_1__0__Impl" + // InternalSolverLanguageParser.g:6437:1: rule__AdditiveExpression__Group_1__0__Impl : ( () ) ; + public final void rule__AdditiveExpression__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4966:1: ( ( ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) ) ) - // InternalSolverLanguageParser.g:4967:1: ( ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) ) + // InternalSolverLanguageParser.g:6441:1: ( ( () ) ) + // InternalSolverLanguageParser.g:6442:1: ( () ) { - // InternalSolverLanguageParser.g:4967:1: ( ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) ) - // InternalSolverLanguageParser.g:4968:2: ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) + // InternalSolverLanguageParser.g:6442:1: ( () ) + // InternalSolverLanguageParser.g:6443:2: () { - before(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1()); - // InternalSolverLanguageParser.g:4969:2: ( rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 ) - // InternalSolverLanguageParser.g:4969:3: rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 + before(grammarAccess.getAdditiveExpressionAccess().getBinaryExpressionLeftAction_1_0()); + // InternalSolverLanguageParser.g:6444:2: () + // InternalSolverLanguageParser.g:6444:3: { - pushFollow(FOLLOW_2); - rule__DisjunctiveExpression__CasesAssignment_1_1_4_1(); - - state._fsp--; - - } - after(grammarAccess.getDisjunctiveExpressionAccess().getCasesAssignment_1_1_4_1()); + after(grammarAccess.getAdditiveExpressionAccess().getBinaryExpressionLeftAction_1_0()); } @@ -15524,10 +20041,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -15535,26 +20048,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DisjunctiveExpression__Group_1_1_4__1__Impl" + // $ANTLR end "rule__AdditiveExpression__Group_1__0__Impl" - // $ANTLR start "rule__Case__Group__0" - // InternalSolverLanguageParser.g:4978:1: rule__Case__Group__0 : rule__Case__Group__0__Impl rule__Case__Group__1 ; - public final void rule__Case__Group__0() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group_1__1" + // InternalSolverLanguageParser.g:6452:1: rule__AdditiveExpression__Group_1__1 : rule__AdditiveExpression__Group_1__1__Impl rule__AdditiveExpression__Group_1__2 ; + public final void rule__AdditiveExpression__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4982:1: ( rule__Case__Group__0__Impl rule__Case__Group__1 ) - // InternalSolverLanguageParser.g:4983:2: rule__Case__Group__0__Impl rule__Case__Group__1 + // InternalSolverLanguageParser.g:6456:1: ( rule__AdditiveExpression__Group_1__1__Impl rule__AdditiveExpression__Group_1__2 ) + // InternalSolverLanguageParser.g:6457:2: rule__AdditiveExpression__Group_1__1__Impl rule__AdditiveExpression__Group_1__2 { - pushFollow(FOLLOW_29); - rule__Case__Group__0__Impl(); + pushFollow(FOLLOW_12); + rule__AdditiveExpression__Group_1__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Case__Group__1(); + rule__AdditiveExpression__Group_1__2(); state._fsp--; @@ -15573,35 +20086,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Case__Group__0" + // $ANTLR end "rule__AdditiveExpression__Group_1__1" - // $ANTLR start "rule__Case__Group__0__Impl" - // InternalSolverLanguageParser.g:4990:1: rule__Case__Group__0__Impl : ( ( rule__Case__ConditionAssignment_0 ) ) ; - public final void rule__Case__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group_1__1__Impl" + // InternalSolverLanguageParser.g:6464:1: rule__AdditiveExpression__Group_1__1__Impl : ( ( rule__AdditiveExpression__OpAssignment_1_1 ) ) ; + public final void rule__AdditiveExpression__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:4994:1: ( ( ( rule__Case__ConditionAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:4995:1: ( ( rule__Case__ConditionAssignment_0 ) ) + // InternalSolverLanguageParser.g:6468:1: ( ( ( rule__AdditiveExpression__OpAssignment_1_1 ) ) ) + // InternalSolverLanguageParser.g:6469:1: ( ( rule__AdditiveExpression__OpAssignment_1_1 ) ) { - // InternalSolverLanguageParser.g:4995:1: ( ( rule__Case__ConditionAssignment_0 ) ) - // InternalSolverLanguageParser.g:4996:2: ( rule__Case__ConditionAssignment_0 ) + // InternalSolverLanguageParser.g:6469:1: ( ( rule__AdditiveExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:6470:2: ( rule__AdditiveExpression__OpAssignment_1_1 ) { - before(grammarAccess.getCaseAccess().getConditionAssignment_0()); - // InternalSolverLanguageParser.g:4997:2: ( rule__Case__ConditionAssignment_0 ) - // InternalSolverLanguageParser.g:4997:3: rule__Case__ConditionAssignment_0 + before(grammarAccess.getAdditiveExpressionAccess().getOpAssignment_1_1()); + // InternalSolverLanguageParser.g:6471:2: ( rule__AdditiveExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:6471:3: rule__AdditiveExpression__OpAssignment_1_1 { pushFollow(FOLLOW_2); - rule__Case__ConditionAssignment_0(); + rule__AdditiveExpression__OpAssignment_1_1(); state._fsp--; } - after(grammarAccess.getCaseAccess().getConditionAssignment_0()); + after(grammarAccess.getAdditiveExpressionAccess().getOpAssignment_1_1()); } @@ -15620,26 +20133,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Case__Group__0__Impl" + // $ANTLR end "rule__AdditiveExpression__Group_1__1__Impl" - // $ANTLR start "rule__Case__Group__1" - // InternalSolverLanguageParser.g:5005:1: rule__Case__Group__1 : rule__Case__Group__1__Impl rule__Case__Group__2 ; - public final void rule__Case__Group__1() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group_1__2" + // InternalSolverLanguageParser.g:6479:1: rule__AdditiveExpression__Group_1__2 : rule__AdditiveExpression__Group_1__2__Impl ; + public final void rule__AdditiveExpression__Group_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5009:1: ( rule__Case__Group__1__Impl rule__Case__Group__2 ) - // InternalSolverLanguageParser.g:5010:2: rule__Case__Group__1__Impl rule__Case__Group__2 + // InternalSolverLanguageParser.g:6483:1: ( rule__AdditiveExpression__Group_1__2__Impl ) + // InternalSolverLanguageParser.g:6484:2: rule__AdditiveExpression__Group_1__2__Impl { - pushFollow(FOLLOW_7); - rule__Case__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__Case__Group__2(); + rule__AdditiveExpression__Group_1__2__Impl(); state._fsp--; @@ -15658,25 +20166,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Case__Group__1" + // $ANTLR end "rule__AdditiveExpression__Group_1__2" - // $ANTLR start "rule__Case__Group__1__Impl" - // InternalSolverLanguageParser.g:5017:1: rule__Case__Group__1__Impl : ( HyphenMinusGreaterThanSign ) ; - public final void rule__Case__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__AdditiveExpression__Group_1__2__Impl" + // InternalSolverLanguageParser.g:6490:1: rule__AdditiveExpression__Group_1__2__Impl : ( ( rule__AdditiveExpression__RightAssignment_1_2 ) ) ; + public final void rule__AdditiveExpression__Group_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5021:1: ( ( HyphenMinusGreaterThanSign ) ) - // InternalSolverLanguageParser.g:5022:1: ( HyphenMinusGreaterThanSign ) + // InternalSolverLanguageParser.g:6494:1: ( ( ( rule__AdditiveExpression__RightAssignment_1_2 ) ) ) + // InternalSolverLanguageParser.g:6495:1: ( ( rule__AdditiveExpression__RightAssignment_1_2 ) ) { - // InternalSolverLanguageParser.g:5022:1: ( HyphenMinusGreaterThanSign ) - // InternalSolverLanguageParser.g:5023:2: HyphenMinusGreaterThanSign + // InternalSolverLanguageParser.g:6495:1: ( ( rule__AdditiveExpression__RightAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6496:2: ( rule__AdditiveExpression__RightAssignment_1_2 ) { - before(grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); - match(input,HyphenMinusGreaterThanSign,FOLLOW_2); - after(grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); + before(grammarAccess.getAdditiveExpressionAccess().getRightAssignment_1_2()); + // InternalSolverLanguageParser.g:6497:2: ( rule__AdditiveExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:6497:3: rule__AdditiveExpression__RightAssignment_1_2 + { + pushFollow(FOLLOW_2); + rule__AdditiveExpression__RightAssignment_1_2(); + + state._fsp--; + + + } + + after(grammarAccess.getAdditiveExpressionAccess().getRightAssignment_1_2()); } @@ -15695,21 +20213,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Case__Group__1__Impl" + // $ANTLR end "rule__AdditiveExpression__Group_1__2__Impl" - // $ANTLR start "rule__Case__Group__2" - // InternalSolverLanguageParser.g:5032:1: rule__Case__Group__2 : rule__Case__Group__2__Impl ; - public final void rule__Case__Group__2() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group__0" + // InternalSolverLanguageParser.g:6506:1: rule__MultiplicativeExpression__Group__0 : rule__MultiplicativeExpression__Group__0__Impl rule__MultiplicativeExpression__Group__1 ; + public final void rule__MultiplicativeExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5036:1: ( rule__Case__Group__2__Impl ) - // InternalSolverLanguageParser.g:5037:2: rule__Case__Group__2__Impl + // InternalSolverLanguageParser.g:6510:1: ( rule__MultiplicativeExpression__Group__0__Impl rule__MultiplicativeExpression__Group__1 ) + // InternalSolverLanguageParser.g:6511:2: rule__MultiplicativeExpression__Group__0__Impl rule__MultiplicativeExpression__Group__1 { + pushFollow(FOLLOW_39); + rule__MultiplicativeExpression__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__Case__Group__2__Impl(); + rule__MultiplicativeExpression__Group__1(); state._fsp--; @@ -15728,35 +20251,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Case__Group__2" + // $ANTLR end "rule__MultiplicativeExpression__Group__0" - // $ANTLR start "rule__Case__Group__2__Impl" - // InternalSolverLanguageParser.g:5043:1: rule__Case__Group__2__Impl : ( ( rule__Case__BodyAssignment_2 ) ) ; - public final void rule__Case__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:6518:1: rule__MultiplicativeExpression__Group__0__Impl : ( ruleExponentialExpression ) ; + public final void rule__MultiplicativeExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5047:1: ( ( ( rule__Case__BodyAssignment_2 ) ) ) - // InternalSolverLanguageParser.g:5048:1: ( ( rule__Case__BodyAssignment_2 ) ) - { - // InternalSolverLanguageParser.g:5048:1: ( ( rule__Case__BodyAssignment_2 ) ) - // InternalSolverLanguageParser.g:5049:2: ( rule__Case__BodyAssignment_2 ) + // InternalSolverLanguageParser.g:6522:1: ( ( ruleExponentialExpression ) ) + // InternalSolverLanguageParser.g:6523:1: ( ruleExponentialExpression ) { - before(grammarAccess.getCaseAccess().getBodyAssignment_2()); - // InternalSolverLanguageParser.g:5050:2: ( rule__Case__BodyAssignment_2 ) - // InternalSolverLanguageParser.g:5050:3: rule__Case__BodyAssignment_2 + // InternalSolverLanguageParser.g:6523:1: ( ruleExponentialExpression ) + // InternalSolverLanguageParser.g:6524:2: ruleExponentialExpression { + before(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - rule__Case__BodyAssignment_2(); + ruleExponentialExpression(); state._fsp--; - - } - - after(grammarAccess.getCaseAccess().getBodyAssignment_2()); + after(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); } @@ -15775,26 +20292,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Case__Group__2__Impl" + // $ANTLR end "rule__MultiplicativeExpression__Group__0__Impl" - // $ANTLR start "rule__ConjunctiveExpression__Group__0" - // InternalSolverLanguageParser.g:5059:1: rule__ConjunctiveExpression__Group__0 : rule__ConjunctiveExpression__Group__0__Impl rule__ConjunctiveExpression__Group__1 ; - public final void rule__ConjunctiveExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group__1" + // InternalSolverLanguageParser.g:6533:1: rule__MultiplicativeExpression__Group__1 : rule__MultiplicativeExpression__Group__1__Impl ; + public final void rule__MultiplicativeExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5063:1: ( rule__ConjunctiveExpression__Group__0__Impl rule__ConjunctiveExpression__Group__1 ) - // InternalSolverLanguageParser.g:5064:2: rule__ConjunctiveExpression__Group__0__Impl rule__ConjunctiveExpression__Group__1 + // InternalSolverLanguageParser.g:6537:1: ( rule__MultiplicativeExpression__Group__1__Impl ) + // InternalSolverLanguageParser.g:6538:2: rule__MultiplicativeExpression__Group__1__Impl { - pushFollow(FOLLOW_19); - rule__ConjunctiveExpression__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__Group__1(); + rule__MultiplicativeExpression__Group__1__Impl(); state._fsp--; @@ -15813,29 +20325,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group__0" + // $ANTLR end "rule__MultiplicativeExpression__Group__1" - // $ANTLR start "rule__ConjunctiveExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:5071:1: rule__ConjunctiveExpression__Group__0__Impl : ( ruleComparisonExpression ) ; - public final void rule__ConjunctiveExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:6544:1: rule__MultiplicativeExpression__Group__1__Impl : ( ( rule__MultiplicativeExpression__Group_1__0 )* ) ; + public final void rule__MultiplicativeExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5075:1: ( ( ruleComparisonExpression ) ) - // InternalSolverLanguageParser.g:5076:1: ( ruleComparisonExpression ) + // InternalSolverLanguageParser.g:6548:1: ( ( ( rule__MultiplicativeExpression__Group_1__0 )* ) ) + // InternalSolverLanguageParser.g:6549:1: ( ( rule__MultiplicativeExpression__Group_1__0 )* ) { - // InternalSolverLanguageParser.g:5076:1: ( ruleComparisonExpression ) - // InternalSolverLanguageParser.g:5077:2: ruleComparisonExpression + // InternalSolverLanguageParser.g:6549:1: ( ( rule__MultiplicativeExpression__Group_1__0 )* ) + // InternalSolverLanguageParser.g:6550:2: ( rule__MultiplicativeExpression__Group_1__0 )* { - before(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); - pushFollow(FOLLOW_2); - ruleComparisonExpression(); + before(grammarAccess.getMultiplicativeExpressionAccess().getGroup_1()); + // InternalSolverLanguageParser.g:6551:2: ( rule__MultiplicativeExpression__Group_1__0 )* + loop48: + do { + int alt48=2; + int LA48_0 = input.LA(1); - state._fsp--; + if ( (LA48_0==Asterisk||LA48_0==Solidus) ) { + alt48=1; + } - after(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); + + switch (alt48) { + case 1 : + // InternalSolverLanguageParser.g:6551:3: rule__MultiplicativeExpression__Group_1__0 + { + pushFollow(FOLLOW_40); + rule__MultiplicativeExpression__Group_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop48; + } + } while (true); + + after(grammarAccess.getMultiplicativeExpressionAccess().getGroup_1()); } @@ -15854,21 +20390,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group__0__Impl" + // $ANTLR end "rule__MultiplicativeExpression__Group__1__Impl" - // $ANTLR start "rule__ConjunctiveExpression__Group__1" - // InternalSolverLanguageParser.g:5086:1: rule__ConjunctiveExpression__Group__1 : rule__ConjunctiveExpression__Group__1__Impl ; - public final void rule__ConjunctiveExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group_1__0" + // InternalSolverLanguageParser.g:6560:1: rule__MultiplicativeExpression__Group_1__0 : rule__MultiplicativeExpression__Group_1__0__Impl rule__MultiplicativeExpression__Group_1__1 ; + public final void rule__MultiplicativeExpression__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5090:1: ( rule__ConjunctiveExpression__Group__1__Impl ) - // InternalSolverLanguageParser.g:5091:2: rule__ConjunctiveExpression__Group__1__Impl + // InternalSolverLanguageParser.g:6564:1: ( rule__MultiplicativeExpression__Group_1__0__Impl rule__MultiplicativeExpression__Group_1__1 ) + // InternalSolverLanguageParser.g:6565:2: rule__MultiplicativeExpression__Group_1__0__Impl rule__MultiplicativeExpression__Group_1__1 { + pushFollow(FOLLOW_39); + rule__MultiplicativeExpression__Group_1__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__Group__1__Impl(); + rule__MultiplicativeExpression__Group_1__1(); state._fsp--; @@ -15887,46 +20428,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group__1" + // $ANTLR end "rule__MultiplicativeExpression__Group_1__0" - // $ANTLR start "rule__ConjunctiveExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:5097:1: rule__ConjunctiveExpression__Group__1__Impl : ( ( rule__ConjunctiveExpression__Group_1__0 )? ) ; - public final void rule__ConjunctiveExpression__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group_1__0__Impl" + // InternalSolverLanguageParser.g:6572:1: rule__MultiplicativeExpression__Group_1__0__Impl : ( () ) ; + public final void rule__MultiplicativeExpression__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5101:1: ( ( ( rule__ConjunctiveExpression__Group_1__0 )? ) ) - // InternalSolverLanguageParser.g:5102:1: ( ( rule__ConjunctiveExpression__Group_1__0 )? ) + // InternalSolverLanguageParser.g:6576:1: ( ( () ) ) + // InternalSolverLanguageParser.g:6577:1: ( () ) { - // InternalSolverLanguageParser.g:5102:1: ( ( rule__ConjunctiveExpression__Group_1__0 )? ) - // InternalSolverLanguageParser.g:5103:2: ( rule__ConjunctiveExpression__Group_1__0 )? + // InternalSolverLanguageParser.g:6577:1: ( () ) + // InternalSolverLanguageParser.g:6578:2: () + { + before(grammarAccess.getMultiplicativeExpressionAccess().getBinaryExpressionLeftAction_1_0()); + // InternalSolverLanguageParser.g:6579:2: () + // InternalSolverLanguageParser.g:6579:3: { - before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1()); - // InternalSolverLanguageParser.g:5104:2: ( rule__ConjunctiveExpression__Group_1__0 )? - int alt36=2; - int LA36_0 = input.LA(1); - - if ( (LA36_0==Comma) ) { - alt36=1; - } - switch (alt36) { - case 1 : - // InternalSolverLanguageParser.g:5104:3: rule__ConjunctiveExpression__Group_1__0 - { - pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__Group_1__0(); - - state._fsp--; - - - } - break; - } - after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1()); + after(grammarAccess.getMultiplicativeExpressionAccess().getBinaryExpressionLeftAction_1_0()); } @@ -15934,10 +20458,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -15945,26 +20465,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group__1__Impl" + // $ANTLR end "rule__MultiplicativeExpression__Group_1__0__Impl" - // $ANTLR start "rule__ConjunctiveExpression__Group_1__0" - // InternalSolverLanguageParser.g:5113:1: rule__ConjunctiveExpression__Group_1__0 : rule__ConjunctiveExpression__Group_1__0__Impl rule__ConjunctiveExpression__Group_1__1 ; - public final void rule__ConjunctiveExpression__Group_1__0() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group_1__1" + // InternalSolverLanguageParser.g:6587:1: rule__MultiplicativeExpression__Group_1__1 : rule__MultiplicativeExpression__Group_1__1__Impl rule__MultiplicativeExpression__Group_1__2 ; + public final void rule__MultiplicativeExpression__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5117:1: ( rule__ConjunctiveExpression__Group_1__0__Impl rule__ConjunctiveExpression__Group_1__1 ) - // InternalSolverLanguageParser.g:5118:2: rule__ConjunctiveExpression__Group_1__0__Impl rule__ConjunctiveExpression__Group_1__1 + // InternalSolverLanguageParser.g:6591:1: ( rule__MultiplicativeExpression__Group_1__1__Impl rule__MultiplicativeExpression__Group_1__2 ) + // InternalSolverLanguageParser.g:6592:2: rule__MultiplicativeExpression__Group_1__1__Impl rule__MultiplicativeExpression__Group_1__2 { - pushFollow(FOLLOW_19); - rule__ConjunctiveExpression__Group_1__0__Impl(); + pushFollow(FOLLOW_12); + rule__MultiplicativeExpression__Group_1__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__Group_1__1(); + rule__MultiplicativeExpression__Group_1__2(); state._fsp--; @@ -15983,29 +20503,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group_1__0" + // $ANTLR end "rule__MultiplicativeExpression__Group_1__1" - // $ANTLR start "rule__ConjunctiveExpression__Group_1__0__Impl" - // InternalSolverLanguageParser.g:5125:1: rule__ConjunctiveExpression__Group_1__0__Impl : ( () ) ; - public final void rule__ConjunctiveExpression__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group_1__1__Impl" + // InternalSolverLanguageParser.g:6599:1: rule__MultiplicativeExpression__Group_1__1__Impl : ( ( rule__MultiplicativeExpression__OpAssignment_1_1 ) ) ; + public final void rule__MultiplicativeExpression__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5129:1: ( ( () ) ) - // InternalSolverLanguageParser.g:5130:1: ( () ) + // InternalSolverLanguageParser.g:6603:1: ( ( ( rule__MultiplicativeExpression__OpAssignment_1_1 ) ) ) + // InternalSolverLanguageParser.g:6604:1: ( ( rule__MultiplicativeExpression__OpAssignment_1_1 ) ) { - // InternalSolverLanguageParser.g:5130:1: ( () ) - // InternalSolverLanguageParser.g:5131:2: () + // InternalSolverLanguageParser.g:6604:1: ( ( rule__MultiplicativeExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:6605:2: ( rule__MultiplicativeExpression__OpAssignment_1_1 ) { - before(grammarAccess.getConjunctiveExpressionAccess().getConjunctionChildrenAction_1_0()); - // InternalSolverLanguageParser.g:5132:2: () - // InternalSolverLanguageParser.g:5132:3: + before(grammarAccess.getMultiplicativeExpressionAccess().getOpAssignment_1_1()); + // InternalSolverLanguageParser.g:6606:2: ( rule__MultiplicativeExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:6606:3: rule__MultiplicativeExpression__OpAssignment_1_1 { + pushFollow(FOLLOW_2); + rule__MultiplicativeExpression__OpAssignment_1_1(); + + state._fsp--; + + } - after(grammarAccess.getConjunctiveExpressionAccess().getConjunctionChildrenAction_1_0()); + after(grammarAccess.getMultiplicativeExpressionAccess().getOpAssignment_1_1()); } @@ -16013,6 +20539,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -16020,21 +20550,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group_1__0__Impl" + // $ANTLR end "rule__MultiplicativeExpression__Group_1__1__Impl" - // $ANTLR start "rule__ConjunctiveExpression__Group_1__1" - // InternalSolverLanguageParser.g:5140:1: rule__ConjunctiveExpression__Group_1__1 : rule__ConjunctiveExpression__Group_1__1__Impl ; - public final void rule__ConjunctiveExpression__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group_1__2" + // InternalSolverLanguageParser.g:6614:1: rule__MultiplicativeExpression__Group_1__2 : rule__MultiplicativeExpression__Group_1__2__Impl ; + public final void rule__MultiplicativeExpression__Group_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5144:1: ( rule__ConjunctiveExpression__Group_1__1__Impl ) - // InternalSolverLanguageParser.g:5145:2: rule__ConjunctiveExpression__Group_1__1__Impl + // InternalSolverLanguageParser.g:6618:1: ( rule__MultiplicativeExpression__Group_1__2__Impl ) + // InternalSolverLanguageParser.g:6619:2: rule__MultiplicativeExpression__Group_1__2__Impl { pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__Group_1__1__Impl(); + rule__MultiplicativeExpression__Group_1__2__Impl(); state._fsp--; @@ -16053,78 +20583,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group_1__1" + // $ANTLR end "rule__MultiplicativeExpression__Group_1__2" - // $ANTLR start "rule__ConjunctiveExpression__Group_1__1__Impl" - // InternalSolverLanguageParser.g:5151:1: rule__ConjunctiveExpression__Group_1__1__Impl : ( ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) ) ; - public final void rule__ConjunctiveExpression__Group_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__MultiplicativeExpression__Group_1__2__Impl" + // InternalSolverLanguageParser.g:6625:1: rule__MultiplicativeExpression__Group_1__2__Impl : ( ( rule__MultiplicativeExpression__RightAssignment_1_2 ) ) ; + public final void rule__MultiplicativeExpression__Group_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5155:1: ( ( ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) ) ) - // InternalSolverLanguageParser.g:5156:1: ( ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) ) - { - // InternalSolverLanguageParser.g:5156:1: ( ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) ) - // InternalSolverLanguageParser.g:5157:2: ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) + // InternalSolverLanguageParser.g:6629:1: ( ( ( rule__MultiplicativeExpression__RightAssignment_1_2 ) ) ) + // InternalSolverLanguageParser.g:6630:1: ( ( rule__MultiplicativeExpression__RightAssignment_1_2 ) ) { - // InternalSolverLanguageParser.g:5157:2: ( ( rule__ConjunctiveExpression__Group_1_1__0 ) ) - // InternalSolverLanguageParser.g:5158:3: ( rule__ConjunctiveExpression__Group_1_1__0 ) + // InternalSolverLanguageParser.g:6630:1: ( ( rule__MultiplicativeExpression__RightAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6631:2: ( rule__MultiplicativeExpression__RightAssignment_1_2 ) { - before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); - // InternalSolverLanguageParser.g:5159:3: ( rule__ConjunctiveExpression__Group_1_1__0 ) - // InternalSolverLanguageParser.g:5159:4: rule__ConjunctiveExpression__Group_1_1__0 + before(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2()); + // InternalSolverLanguageParser.g:6632:2: ( rule__MultiplicativeExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:6632:3: rule__MultiplicativeExpression__RightAssignment_1_2 { - pushFollow(FOLLOW_20); - rule__ConjunctiveExpression__Group_1_1__0(); + pushFollow(FOLLOW_2); + rule__MultiplicativeExpression__RightAssignment_1_2(); state._fsp--; } - after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); - - } - - // InternalSolverLanguageParser.g:5162:2: ( ( rule__ConjunctiveExpression__Group_1_1__0 )* ) - // InternalSolverLanguageParser.g:5163:3: ( rule__ConjunctiveExpression__Group_1_1__0 )* - { - before(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); - // InternalSolverLanguageParser.g:5164:3: ( rule__ConjunctiveExpression__Group_1_1__0 )* - loop37: - do { - int alt37=2; - int LA37_0 = input.LA(1); - - if ( (LA37_0==Comma) ) { - alt37=1; - } - - - switch (alt37) { - case 1 : - // InternalSolverLanguageParser.g:5164:4: rule__ConjunctiveExpression__Group_1_1__0 - { - pushFollow(FOLLOW_20); - rule__ConjunctiveExpression__Group_1_1__0(); - - state._fsp--; - - - } - break; - - default : - break loop37; - } - } while (true); - - after(grammarAccess.getConjunctiveExpressionAccess().getGroup_1_1()); - - } - + after(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2()); } @@ -16143,26 +20630,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group_1__1__Impl" + // $ANTLR end "rule__MultiplicativeExpression__Group_1__2__Impl" - // $ANTLR start "rule__ConjunctiveExpression__Group_1_1__0" - // InternalSolverLanguageParser.g:5174:1: rule__ConjunctiveExpression__Group_1_1__0 : rule__ConjunctiveExpression__Group_1_1__0__Impl rule__ConjunctiveExpression__Group_1_1__1 ; - public final void rule__ConjunctiveExpression__Group_1_1__0() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group__0" + // InternalSolverLanguageParser.g:6641:1: rule__ExponentialExpression__Group__0 : rule__ExponentialExpression__Group__0__Impl rule__ExponentialExpression__Group__1 ; + public final void rule__ExponentialExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5178:1: ( rule__ConjunctiveExpression__Group_1_1__0__Impl rule__ConjunctiveExpression__Group_1_1__1 ) - // InternalSolverLanguageParser.g:5179:2: rule__ConjunctiveExpression__Group_1_1__0__Impl rule__ConjunctiveExpression__Group_1_1__1 + // InternalSolverLanguageParser.g:6645:1: ( rule__ExponentialExpression__Group__0__Impl rule__ExponentialExpression__Group__1 ) + // InternalSolverLanguageParser.g:6646:2: rule__ExponentialExpression__Group__0__Impl rule__ExponentialExpression__Group__1 { - pushFollow(FOLLOW_7); - rule__ConjunctiveExpression__Group_1_1__0__Impl(); + pushFollow(FOLLOW_41); + rule__ExponentialExpression__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__Group_1_1__1(); + rule__ExponentialExpression__Group__1(); state._fsp--; @@ -16181,25 +20668,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group_1_1__0" + // $ANTLR end "rule__ExponentialExpression__Group__0" - // $ANTLR start "rule__ConjunctiveExpression__Group_1_1__0__Impl" - // InternalSolverLanguageParser.g:5186:1: rule__ConjunctiveExpression__Group_1_1__0__Impl : ( Comma ) ; - public final void rule__ConjunctiveExpression__Group_1_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:6653:1: rule__ExponentialExpression__Group__0__Impl : ( ruleCastExpression ) ; + public final void rule__ExponentialExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5190:1: ( ( Comma ) ) - // InternalSolverLanguageParser.g:5191:1: ( Comma ) + // InternalSolverLanguageParser.g:6657:1: ( ( ruleCastExpression ) ) + // InternalSolverLanguageParser.g:6658:1: ( ruleCastExpression ) { - // InternalSolverLanguageParser.g:5191:1: ( Comma ) - // InternalSolverLanguageParser.g:5192:2: Comma + // InternalSolverLanguageParser.g:6658:1: ( ruleCastExpression ) + // InternalSolverLanguageParser.g:6659:2: ruleCastExpression { - before(grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); - match(input,Comma,FOLLOW_2); - after(grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); + before(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleCastExpression(); + + state._fsp--; + + after(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); } @@ -16218,21 +20709,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group_1_1__0__Impl" + // $ANTLR end "rule__ExponentialExpression__Group__0__Impl" - // $ANTLR start "rule__ConjunctiveExpression__Group_1_1__1" - // InternalSolverLanguageParser.g:5201:1: rule__ConjunctiveExpression__Group_1_1__1 : rule__ConjunctiveExpression__Group_1_1__1__Impl ; - public final void rule__ConjunctiveExpression__Group_1_1__1() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group__1" + // InternalSolverLanguageParser.g:6668:1: rule__ExponentialExpression__Group__1 : rule__ExponentialExpression__Group__1__Impl ; + public final void rule__ExponentialExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5205:1: ( rule__ConjunctiveExpression__Group_1_1__1__Impl ) - // InternalSolverLanguageParser.g:5206:2: rule__ConjunctiveExpression__Group_1_1__1__Impl + // InternalSolverLanguageParser.g:6672:1: ( rule__ExponentialExpression__Group__1__Impl ) + // InternalSolverLanguageParser.g:6673:2: rule__ExponentialExpression__Group__1__Impl { pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__Group_1_1__1__Impl(); + rule__ExponentialExpression__Group__1__Impl(); state._fsp--; @@ -16251,35 +20742,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group_1_1__1" + // $ANTLR end "rule__ExponentialExpression__Group__1" - // $ANTLR start "rule__ConjunctiveExpression__Group_1_1__1__Impl" - // InternalSolverLanguageParser.g:5212:1: rule__ConjunctiveExpression__Group_1_1__1__Impl : ( ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) ) ; - public final void rule__ConjunctiveExpression__Group_1_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:6679:1: rule__ExponentialExpression__Group__1__Impl : ( ( rule__ExponentialExpression__Group_1__0 )? ) ; + public final void rule__ExponentialExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5216:1: ( ( ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) ) ) - // InternalSolverLanguageParser.g:5217:1: ( ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) ) + // InternalSolverLanguageParser.g:6683:1: ( ( ( rule__ExponentialExpression__Group_1__0 )? ) ) + // InternalSolverLanguageParser.g:6684:1: ( ( rule__ExponentialExpression__Group_1__0 )? ) { - // InternalSolverLanguageParser.g:5217:1: ( ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) ) - // InternalSolverLanguageParser.g:5218:2: ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) + // InternalSolverLanguageParser.g:6684:1: ( ( rule__ExponentialExpression__Group_1__0 )? ) + // InternalSolverLanguageParser.g:6685:2: ( rule__ExponentialExpression__Group_1__0 )? { - before(grammarAccess.getConjunctiveExpressionAccess().getChildrenAssignment_1_1_1()); - // InternalSolverLanguageParser.g:5219:2: ( rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 ) - // InternalSolverLanguageParser.g:5219:3: rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 - { - pushFollow(FOLLOW_2); - rule__ConjunctiveExpression__ChildrenAssignment_1_1_1(); + before(grammarAccess.getExponentialExpressionAccess().getGroup_1()); + // InternalSolverLanguageParser.g:6686:2: ( rule__ExponentialExpression__Group_1__0 )? + int alt49=2; + int LA49_0 = input.LA(1); + + if ( (LA49_0==CircumflexAccent) ) { + alt49=1; + } + switch (alt49) { + case 1 : + // InternalSolverLanguageParser.g:6686:3: rule__ExponentialExpression__Group_1__0 + { + pushFollow(FOLLOW_2); + rule__ExponentialExpression__Group_1__0(); + + state._fsp--; - state._fsp--; + } + break; } - after(grammarAccess.getConjunctiveExpressionAccess().getChildrenAssignment_1_1_1()); + after(grammarAccess.getExponentialExpressionAccess().getGroup_1()); } @@ -16298,26 +20800,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ConjunctiveExpression__Group_1_1__1__Impl" + // $ANTLR end "rule__ExponentialExpression__Group__1__Impl" - // $ANTLR start "rule__ComparisonExpression__Group__0" - // InternalSolverLanguageParser.g:5228:1: rule__ComparisonExpression__Group__0 : rule__ComparisonExpression__Group__0__Impl rule__ComparisonExpression__Group__1 ; - public final void rule__ComparisonExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group_1__0" + // InternalSolverLanguageParser.g:6695:1: rule__ExponentialExpression__Group_1__0 : rule__ExponentialExpression__Group_1__0__Impl rule__ExponentialExpression__Group_1__1 ; + public final void rule__ExponentialExpression__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5232:1: ( rule__ComparisonExpression__Group__0__Impl rule__ComparisonExpression__Group__1 ) - // InternalSolverLanguageParser.g:5233:2: rule__ComparisonExpression__Group__0__Impl rule__ComparisonExpression__Group__1 + // InternalSolverLanguageParser.g:6699:1: ( rule__ExponentialExpression__Group_1__0__Impl rule__ExponentialExpression__Group_1__1 ) + // InternalSolverLanguageParser.g:6700:2: rule__ExponentialExpression__Group_1__0__Impl rule__ExponentialExpression__Group_1__1 { - pushFollow(FOLLOW_30); - rule__ComparisonExpression__Group__0__Impl(); + pushFollow(FOLLOW_41); + rule__ExponentialExpression__Group_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ComparisonExpression__Group__1(); + rule__ExponentialExpression__Group_1__1(); state._fsp--; @@ -16336,29 +20838,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group__0" + // $ANTLR end "rule__ExponentialExpression__Group_1__0" - // $ANTLR start "rule__ComparisonExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:5240:1: rule__ComparisonExpression__Group__0__Impl : ( ruleAdditiveExpression ) ; - public final void rule__ComparisonExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group_1__0__Impl" + // InternalSolverLanguageParser.g:6707:1: rule__ExponentialExpression__Group_1__0__Impl : ( () ) ; + public final void rule__ExponentialExpression__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5244:1: ( ( ruleAdditiveExpression ) ) - // InternalSolverLanguageParser.g:5245:1: ( ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:6711:1: ( ( () ) ) + // InternalSolverLanguageParser.g:6712:1: ( () ) { - // InternalSolverLanguageParser.g:5245:1: ( ruleAdditiveExpression ) - // InternalSolverLanguageParser.g:5246:2: ruleAdditiveExpression + // InternalSolverLanguageParser.g:6712:1: ( () ) + // InternalSolverLanguageParser.g:6713:2: () { - before(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); - pushFollow(FOLLOW_2); - ruleAdditiveExpression(); - - state._fsp--; + before(grammarAccess.getExponentialExpressionAccess().getBinaryExpressionLeftAction_1_0()); + // InternalSolverLanguageParser.g:6714:2: () + // InternalSolverLanguageParser.g:6714:3: + { + } - after(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); + after(grammarAccess.getExponentialExpressionAccess().getBinaryExpressionLeftAction_1_0()); } @@ -16366,10 +20868,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -16377,21 +20875,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group__0__Impl" + // $ANTLR end "rule__ExponentialExpression__Group_1__0__Impl" - // $ANTLR start "rule__ComparisonExpression__Group__1" - // InternalSolverLanguageParser.g:5255:1: rule__ComparisonExpression__Group__1 : rule__ComparisonExpression__Group__1__Impl ; - public final void rule__ComparisonExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group_1__1" + // InternalSolverLanguageParser.g:6722:1: rule__ExponentialExpression__Group_1__1 : rule__ExponentialExpression__Group_1__1__Impl rule__ExponentialExpression__Group_1__2 ; + public final void rule__ExponentialExpression__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5259:1: ( rule__ComparisonExpression__Group__1__Impl ) - // InternalSolverLanguageParser.g:5260:2: rule__ComparisonExpression__Group__1__Impl + // InternalSolverLanguageParser.g:6726:1: ( rule__ExponentialExpression__Group_1__1__Impl rule__ExponentialExpression__Group_1__2 ) + // InternalSolverLanguageParser.g:6727:2: rule__ExponentialExpression__Group_1__1__Impl rule__ExponentialExpression__Group_1__2 { + pushFollow(FOLLOW_12); + rule__ExponentialExpression__Group_1__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ComparisonExpression__Group__1__Impl(); + rule__ExponentialExpression__Group_1__2(); state._fsp--; @@ -16410,46 +20913,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group__1" + // $ANTLR end "rule__ExponentialExpression__Group_1__1" - // $ANTLR start "rule__ComparisonExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:5266:1: rule__ComparisonExpression__Group__1__Impl : ( ( rule__ComparisonExpression__Group_1__0 )? ) ; - public final void rule__ComparisonExpression__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group_1__1__Impl" + // InternalSolverLanguageParser.g:6734:1: rule__ExponentialExpression__Group_1__1__Impl : ( ( rule__ExponentialExpression__OpAssignment_1_1 ) ) ; + public final void rule__ExponentialExpression__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5270:1: ( ( ( rule__ComparisonExpression__Group_1__0 )? ) ) - // InternalSolverLanguageParser.g:5271:1: ( ( rule__ComparisonExpression__Group_1__0 )? ) + // InternalSolverLanguageParser.g:6738:1: ( ( ( rule__ExponentialExpression__OpAssignment_1_1 ) ) ) + // InternalSolverLanguageParser.g:6739:1: ( ( rule__ExponentialExpression__OpAssignment_1_1 ) ) { - // InternalSolverLanguageParser.g:5271:1: ( ( rule__ComparisonExpression__Group_1__0 )? ) - // InternalSolverLanguageParser.g:5272:2: ( rule__ComparisonExpression__Group_1__0 )? + // InternalSolverLanguageParser.g:6739:1: ( ( rule__ExponentialExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:6740:2: ( rule__ExponentialExpression__OpAssignment_1_1 ) { - before(grammarAccess.getComparisonExpressionAccess().getGroup_1()); - // InternalSolverLanguageParser.g:5273:2: ( rule__ComparisonExpression__Group_1__0 )? - int alt38=2; - int LA38_0 = input.LA(1); - - if ( (LA38_0==ExclamationMarkEqualsSign||(LA38_0>=LessThanSignEqualsSign && LA38_0<=EqualsSignEqualsSign)||LA38_0==GreaterThanSignEqualsSign||LA38_0==In||LA38_0==LessThanSign||LA38_0==GreaterThanSign) ) { - alt38=1; - } - switch (alt38) { - case 1 : - // InternalSolverLanguageParser.g:5273:3: rule__ComparisonExpression__Group_1__0 - { - pushFollow(FOLLOW_2); - rule__ComparisonExpression__Group_1__0(); - - state._fsp--; + before(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1()); + // InternalSolverLanguageParser.g:6741:2: ( rule__ExponentialExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:6741:3: rule__ExponentialExpression__OpAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__ExponentialExpression__OpAssignment_1_1(); + state._fsp--; - } - break; } - after(grammarAccess.getComparisonExpressionAccess().getGroup_1()); + after(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1()); } @@ -16468,26 +20960,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group__1__Impl" + // $ANTLR end "rule__ExponentialExpression__Group_1__1__Impl" - // $ANTLR start "rule__ComparisonExpression__Group_1__0" - // InternalSolverLanguageParser.g:5282:1: rule__ComparisonExpression__Group_1__0 : rule__ComparisonExpression__Group_1__0__Impl rule__ComparisonExpression__Group_1__1 ; - public final void rule__ComparisonExpression__Group_1__0() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group_1__2" + // InternalSolverLanguageParser.g:6749:1: rule__ExponentialExpression__Group_1__2 : rule__ExponentialExpression__Group_1__2__Impl ; + public final void rule__ExponentialExpression__Group_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5286:1: ( rule__ComparisonExpression__Group_1__0__Impl rule__ComparisonExpression__Group_1__1 ) - // InternalSolverLanguageParser.g:5287:2: rule__ComparisonExpression__Group_1__0__Impl rule__ComparisonExpression__Group_1__1 + // InternalSolverLanguageParser.g:6753:1: ( rule__ExponentialExpression__Group_1__2__Impl ) + // InternalSolverLanguageParser.g:6754:2: rule__ExponentialExpression__Group_1__2__Impl { - pushFollow(FOLLOW_30); - rule__ComparisonExpression__Group_1__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ComparisonExpression__Group_1__1(); + rule__ExponentialExpression__Group_1__2__Impl(); state._fsp--; @@ -16506,29 +20993,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group_1__0" + // $ANTLR end "rule__ExponentialExpression__Group_1__2" - // $ANTLR start "rule__ComparisonExpression__Group_1__0__Impl" - // InternalSolverLanguageParser.g:5294:1: rule__ComparisonExpression__Group_1__0__Impl : ( () ) ; - public final void rule__ComparisonExpression__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExponentialExpression__Group_1__2__Impl" + // InternalSolverLanguageParser.g:6760:1: rule__ExponentialExpression__Group_1__2__Impl : ( ( rule__ExponentialExpression__RightAssignment_1_2 ) ) ; + public final void rule__ExponentialExpression__Group_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5298:1: ( ( () ) ) - // InternalSolverLanguageParser.g:5299:1: ( () ) + // InternalSolverLanguageParser.g:6764:1: ( ( ( rule__ExponentialExpression__RightAssignment_1_2 ) ) ) + // InternalSolverLanguageParser.g:6765:1: ( ( rule__ExponentialExpression__RightAssignment_1_2 ) ) { - // InternalSolverLanguageParser.g:5299:1: ( () ) - // InternalSolverLanguageParser.g:5300:2: () + // InternalSolverLanguageParser.g:6765:1: ( ( rule__ExponentialExpression__RightAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6766:2: ( rule__ExponentialExpression__RightAssignment_1_2 ) { - before(grammarAccess.getComparisonExpressionAccess().getComparisonLeftAction_1_0()); - // InternalSolverLanguageParser.g:5301:2: () - // InternalSolverLanguageParser.g:5301:3: + before(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2()); + // InternalSolverLanguageParser.g:6767:2: ( rule__ExponentialExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:6767:3: rule__ExponentialExpression__RightAssignment_1_2 { + pushFollow(FOLLOW_2); + rule__ExponentialExpression__RightAssignment_1_2(); + + state._fsp--; + + } - after(grammarAccess.getComparisonExpressionAccess().getComparisonLeftAction_1_0()); + after(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2()); } @@ -16536,6 +21029,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -16543,26 +21040,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group_1__0__Impl" + // $ANTLR end "rule__ExponentialExpression__Group_1__2__Impl" - // $ANTLR start "rule__ComparisonExpression__Group_1__1" - // InternalSolverLanguageParser.g:5309:1: rule__ComparisonExpression__Group_1__1 : rule__ComparisonExpression__Group_1__1__Impl rule__ComparisonExpression__Group_1__2 ; - public final void rule__ComparisonExpression__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group__0" + // InternalSolverLanguageParser.g:6776:1: rule__CastExpression__Group__0 : rule__CastExpression__Group__0__Impl rule__CastExpression__Group__1 ; + public final void rule__CastExpression__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5313:1: ( rule__ComparisonExpression__Group_1__1__Impl rule__ComparisonExpression__Group_1__2 ) - // InternalSolverLanguageParser.g:5314:2: rule__ComparisonExpression__Group_1__1__Impl rule__ComparisonExpression__Group_1__2 + // InternalSolverLanguageParser.g:6780:1: ( rule__CastExpression__Group__0__Impl rule__CastExpression__Group__1 ) + // InternalSolverLanguageParser.g:6781:2: rule__CastExpression__Group__0__Impl rule__CastExpression__Group__1 { - pushFollow(FOLLOW_7); - rule__ComparisonExpression__Group_1__1__Impl(); + pushFollow(FOLLOW_9); + rule__CastExpression__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ComparisonExpression__Group_1__2(); + rule__CastExpression__Group__1(); state._fsp--; @@ -16581,35 +21078,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group_1__1" + // $ANTLR end "rule__CastExpression__Group__0" - // $ANTLR start "rule__ComparisonExpression__Group_1__1__Impl" - // InternalSolverLanguageParser.g:5321:1: rule__ComparisonExpression__Group_1__1__Impl : ( ( rule__ComparisonExpression__OpAssignment_1_1 ) ) ; - public final void rule__ComparisonExpression__Group_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group__0__Impl" + // InternalSolverLanguageParser.g:6788:1: rule__CastExpression__Group__0__Impl : ( ruleUnaryExpression ) ; + public final void rule__CastExpression__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5325:1: ( ( ( rule__ComparisonExpression__OpAssignment_1_1 ) ) ) - // InternalSolverLanguageParser.g:5326:1: ( ( rule__ComparisonExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:6792:1: ( ( ruleUnaryExpression ) ) + // InternalSolverLanguageParser.g:6793:1: ( ruleUnaryExpression ) { - // InternalSolverLanguageParser.g:5326:1: ( ( rule__ComparisonExpression__OpAssignment_1_1 ) ) - // InternalSolverLanguageParser.g:5327:2: ( rule__ComparisonExpression__OpAssignment_1_1 ) - { - before(grammarAccess.getComparisonExpressionAccess().getOpAssignment_1_1()); - // InternalSolverLanguageParser.g:5328:2: ( rule__ComparisonExpression__OpAssignment_1_1 ) - // InternalSolverLanguageParser.g:5328:3: rule__ComparisonExpression__OpAssignment_1_1 + // InternalSolverLanguageParser.g:6793:1: ( ruleUnaryExpression ) + // InternalSolverLanguageParser.g:6794:2: ruleUnaryExpression { + before(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - rule__ComparisonExpression__OpAssignment_1_1(); + ruleUnaryExpression(); state._fsp--; - - } - - after(grammarAccess.getComparisonExpressionAccess().getOpAssignment_1_1()); + after(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); } @@ -16628,21 +21119,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group_1__1__Impl" + // $ANTLR end "rule__CastExpression__Group__0__Impl" - // $ANTLR start "rule__ComparisonExpression__Group_1__2" - // InternalSolverLanguageParser.g:5336:1: rule__ComparisonExpression__Group_1__2 : rule__ComparisonExpression__Group_1__2__Impl ; - public final void rule__ComparisonExpression__Group_1__2() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group__1" + // InternalSolverLanguageParser.g:6803:1: rule__CastExpression__Group__1 : rule__CastExpression__Group__1__Impl ; + public final void rule__CastExpression__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5340:1: ( rule__ComparisonExpression__Group_1__2__Impl ) - // InternalSolverLanguageParser.g:5341:2: rule__ComparisonExpression__Group_1__2__Impl + // InternalSolverLanguageParser.g:6807:1: ( rule__CastExpression__Group__1__Impl ) + // InternalSolverLanguageParser.g:6808:2: rule__CastExpression__Group__1__Impl { pushFollow(FOLLOW_2); - rule__ComparisonExpression__Group_1__2__Impl(); + rule__CastExpression__Group__1__Impl(); state._fsp--; @@ -16661,35 +21152,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group_1__2" + // $ANTLR end "rule__CastExpression__Group__1" - // $ANTLR start "rule__ComparisonExpression__Group_1__2__Impl" - // InternalSolverLanguageParser.g:5347:1: rule__ComparisonExpression__Group_1__2__Impl : ( ( rule__ComparisonExpression__RightAssignment_1_2 ) ) ; - public final void rule__ComparisonExpression__Group_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group__1__Impl" + // InternalSolverLanguageParser.g:6814:1: rule__CastExpression__Group__1__Impl : ( ( rule__CastExpression__Group_1__0 )? ) ; + public final void rule__CastExpression__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5351:1: ( ( ( rule__ComparisonExpression__RightAssignment_1_2 ) ) ) - // InternalSolverLanguageParser.g:5352:1: ( ( rule__ComparisonExpression__RightAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6818:1: ( ( ( rule__CastExpression__Group_1__0 )? ) ) + // InternalSolverLanguageParser.g:6819:1: ( ( rule__CastExpression__Group_1__0 )? ) { - // InternalSolverLanguageParser.g:5352:1: ( ( rule__ComparisonExpression__RightAssignment_1_2 ) ) - // InternalSolverLanguageParser.g:5353:2: ( rule__ComparisonExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:6819:1: ( ( rule__CastExpression__Group_1__0 )? ) + // InternalSolverLanguageParser.g:6820:2: ( rule__CastExpression__Group_1__0 )? { - before(grammarAccess.getComparisonExpressionAccess().getRightAssignment_1_2()); - // InternalSolverLanguageParser.g:5354:2: ( rule__ComparisonExpression__RightAssignment_1_2 ) - // InternalSolverLanguageParser.g:5354:3: rule__ComparisonExpression__RightAssignment_1_2 - { - pushFollow(FOLLOW_2); - rule__ComparisonExpression__RightAssignment_1_2(); + before(grammarAccess.getCastExpressionAccess().getGroup_1()); + // InternalSolverLanguageParser.g:6821:2: ( rule__CastExpression__Group_1__0 )? + int alt50=2; + int LA50_0 = input.LA(1); + + if ( (LA50_0==As) ) { + alt50=1; + } + switch (alt50) { + case 1 : + // InternalSolverLanguageParser.g:6821:3: rule__CastExpression__Group_1__0 + { + pushFollow(FOLLOW_2); + rule__CastExpression__Group_1__0(); + + state._fsp--; - state._fsp--; + } + break; } - after(grammarAccess.getComparisonExpressionAccess().getRightAssignment_1_2()); + after(grammarAccess.getCastExpressionAccess().getGroup_1()); } @@ -16708,26 +21210,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ComparisonExpression__Group_1__2__Impl" + // $ANTLR end "rule__CastExpression__Group__1__Impl" - // $ANTLR start "rule__AdditiveExpression__Group__0" - // InternalSolverLanguageParser.g:5363:1: rule__AdditiveExpression__Group__0 : rule__AdditiveExpression__Group__0__Impl rule__AdditiveExpression__Group__1 ; - public final void rule__AdditiveExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group_1__0" + // InternalSolverLanguageParser.g:6830:1: rule__CastExpression__Group_1__0 : rule__CastExpression__Group_1__0__Impl rule__CastExpression__Group_1__1 ; + public final void rule__CastExpression__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5367:1: ( rule__AdditiveExpression__Group__0__Impl rule__AdditiveExpression__Group__1 ) - // InternalSolverLanguageParser.g:5368:2: rule__AdditiveExpression__Group__0__Impl rule__AdditiveExpression__Group__1 + // InternalSolverLanguageParser.g:6834:1: ( rule__CastExpression__Group_1__0__Impl rule__CastExpression__Group_1__1 ) + // InternalSolverLanguageParser.g:6835:2: rule__CastExpression__Group_1__0__Impl rule__CastExpression__Group_1__1 { - pushFollow(FOLLOW_31); - rule__AdditiveExpression__Group__0__Impl(); + pushFollow(FOLLOW_9); + rule__CastExpression__Group_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AdditiveExpression__Group__1(); + rule__CastExpression__Group_1__1(); state._fsp--; @@ -16746,29 +21248,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group__0" + // $ANTLR end "rule__CastExpression__Group_1__0" - // $ANTLR start "rule__AdditiveExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:5375:1: rule__AdditiveExpression__Group__0__Impl : ( ruleMultiplicativeExpression ) ; - public final void rule__AdditiveExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group_1__0__Impl" + // InternalSolverLanguageParser.g:6842:1: rule__CastExpression__Group_1__0__Impl : ( () ) ; + public final void rule__CastExpression__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5379:1: ( ( ruleMultiplicativeExpression ) ) - // InternalSolverLanguageParser.g:5380:1: ( ruleMultiplicativeExpression ) + // InternalSolverLanguageParser.g:6846:1: ( ( () ) ) + // InternalSolverLanguageParser.g:6847:1: ( () ) { - // InternalSolverLanguageParser.g:5380:1: ( ruleMultiplicativeExpression ) - // InternalSolverLanguageParser.g:5381:2: ruleMultiplicativeExpression + // InternalSolverLanguageParser.g:6847:1: ( () ) + // InternalSolverLanguageParser.g:6848:2: () { - before(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); - pushFollow(FOLLOW_2); - ruleMultiplicativeExpression(); - - state._fsp--; + before(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); + // InternalSolverLanguageParser.g:6849:2: () + // InternalSolverLanguageParser.g:6849:3: + { + } - after(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); + after(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); } @@ -16776,10 +21278,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -16787,21 +21285,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group__0__Impl" + // $ANTLR end "rule__CastExpression__Group_1__0__Impl" - // $ANTLR start "rule__AdditiveExpression__Group__1" - // InternalSolverLanguageParser.g:5390:1: rule__AdditiveExpression__Group__1 : rule__AdditiveExpression__Group__1__Impl ; - public final void rule__AdditiveExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group_1__1" + // InternalSolverLanguageParser.g:6857:1: rule__CastExpression__Group_1__1 : rule__CastExpression__Group_1__1__Impl rule__CastExpression__Group_1__2 ; + public final void rule__CastExpression__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5394:1: ( rule__AdditiveExpression__Group__1__Impl ) - // InternalSolverLanguageParser.g:5395:2: rule__AdditiveExpression__Group__1__Impl + // InternalSolverLanguageParser.g:6861:1: ( rule__CastExpression__Group_1__1__Impl rule__CastExpression__Group_1__2 ) + // InternalSolverLanguageParser.g:6862:2: rule__CastExpression__Group_1__1__Impl rule__CastExpression__Group_1__2 { + pushFollow(FOLLOW_6); + rule__CastExpression__Group_1__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__AdditiveExpression__Group__1__Impl(); + rule__CastExpression__Group_1__2(); state._fsp--; @@ -16820,53 +21323,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group__1" + // $ANTLR end "rule__CastExpression__Group_1__1" - // $ANTLR start "rule__AdditiveExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:5401:1: rule__AdditiveExpression__Group__1__Impl : ( ( rule__AdditiveExpression__Group_1__0 )* ) ; - public final void rule__AdditiveExpression__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group_1__1__Impl" + // InternalSolverLanguageParser.g:6869:1: rule__CastExpression__Group_1__1__Impl : ( As ) ; + public final void rule__CastExpression__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5405:1: ( ( ( rule__AdditiveExpression__Group_1__0 )* ) ) - // InternalSolverLanguageParser.g:5406:1: ( ( rule__AdditiveExpression__Group_1__0 )* ) + // InternalSolverLanguageParser.g:6873:1: ( ( As ) ) + // InternalSolverLanguageParser.g:6874:1: ( As ) { - // InternalSolverLanguageParser.g:5406:1: ( ( rule__AdditiveExpression__Group_1__0 )* ) - // InternalSolverLanguageParser.g:5407:2: ( rule__AdditiveExpression__Group_1__0 )* + // InternalSolverLanguageParser.g:6874:1: ( As ) + // InternalSolverLanguageParser.g:6875:2: As { - before(grammarAccess.getAdditiveExpressionAccess().getGroup_1()); - // InternalSolverLanguageParser.g:5408:2: ( rule__AdditiveExpression__Group_1__0 )* - loop39: - do { - int alt39=2; - int LA39_0 = input.LA(1); - - if ( (LA39_0==PlusSign||LA39_0==HyphenMinus) ) { - alt39=1; - } - - - switch (alt39) { - case 1 : - // InternalSolverLanguageParser.g:5408:3: rule__AdditiveExpression__Group_1__0 - { - pushFollow(FOLLOW_32); - rule__AdditiveExpression__Group_1__0(); - - state._fsp--; - - - } - break; - - default : - break loop39; - } - } while (true); - - after(grammarAccess.getAdditiveExpressionAccess().getGroup_1()); + before(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); + match(input,As,FOLLOW_2); + after(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); } @@ -16885,26 +21360,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group__1__Impl" + // $ANTLR end "rule__CastExpression__Group_1__1__Impl" - // $ANTLR start "rule__AdditiveExpression__Group_1__0" - // InternalSolverLanguageParser.g:5417:1: rule__AdditiveExpression__Group_1__0 : rule__AdditiveExpression__Group_1__0__Impl rule__AdditiveExpression__Group_1__1 ; - public final void rule__AdditiveExpression__Group_1__0() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group_1__2" + // InternalSolverLanguageParser.g:6884:1: rule__CastExpression__Group_1__2 : rule__CastExpression__Group_1__2__Impl ; + public final void rule__CastExpression__Group_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5421:1: ( rule__AdditiveExpression__Group_1__0__Impl rule__AdditiveExpression__Group_1__1 ) - // InternalSolverLanguageParser.g:5422:2: rule__AdditiveExpression__Group_1__0__Impl rule__AdditiveExpression__Group_1__1 + // InternalSolverLanguageParser.g:6888:1: ( rule__CastExpression__Group_1__2__Impl ) + // InternalSolverLanguageParser.g:6889:2: rule__CastExpression__Group_1__2__Impl { - pushFollow(FOLLOW_31); - rule__AdditiveExpression__Group_1__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__AdditiveExpression__Group_1__1(); + rule__CastExpression__Group_1__2__Impl(); state._fsp--; @@ -16923,29 +21393,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group_1__0" + // $ANTLR end "rule__CastExpression__Group_1__2" - // $ANTLR start "rule__AdditiveExpression__Group_1__0__Impl" - // InternalSolverLanguageParser.g:5429:1: rule__AdditiveExpression__Group_1__0__Impl : ( () ) ; - public final void rule__AdditiveExpression__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__CastExpression__Group_1__2__Impl" + // InternalSolverLanguageParser.g:6895:1: rule__CastExpression__Group_1__2__Impl : ( ( rule__CastExpression__TargetTypeAssignment_1_2 ) ) ; + public final void rule__CastExpression__Group_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5433:1: ( ( () ) ) - // InternalSolverLanguageParser.g:5434:1: ( () ) + // InternalSolverLanguageParser.g:6899:1: ( ( ( rule__CastExpression__TargetTypeAssignment_1_2 ) ) ) + // InternalSolverLanguageParser.g:6900:1: ( ( rule__CastExpression__TargetTypeAssignment_1_2 ) ) { - // InternalSolverLanguageParser.g:5434:1: ( () ) - // InternalSolverLanguageParser.g:5435:2: () + // InternalSolverLanguageParser.g:6900:1: ( ( rule__CastExpression__TargetTypeAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6901:2: ( rule__CastExpression__TargetTypeAssignment_1_2 ) { - before(grammarAccess.getAdditiveExpressionAccess().getBinaryExpressionLeftAction_1_0()); - // InternalSolverLanguageParser.g:5436:2: () - // InternalSolverLanguageParser.g:5436:3: + before(grammarAccess.getCastExpressionAccess().getTargetTypeAssignment_1_2()); + // InternalSolverLanguageParser.g:6902:2: ( rule__CastExpression__TargetTypeAssignment_1_2 ) + // InternalSolverLanguageParser.g:6902:3: rule__CastExpression__TargetTypeAssignment_1_2 { + pushFollow(FOLLOW_2); + rule__CastExpression__TargetTypeAssignment_1_2(); + + state._fsp--; + + } - after(grammarAccess.getAdditiveExpressionAccess().getBinaryExpressionLeftAction_1_0()); + after(grammarAccess.getCastExpressionAccess().getTargetTypeAssignment_1_2()); } @@ -16953,6 +21429,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -16960,26 +21440,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group_1__0__Impl" + // $ANTLR end "rule__CastExpression__Group_1__2__Impl" - // $ANTLR start "rule__AdditiveExpression__Group_1__1" - // InternalSolverLanguageParser.g:5444:1: rule__AdditiveExpression__Group_1__1 : rule__AdditiveExpression__Group_1__1__Impl rule__AdditiveExpression__Group_1__2 ; - public final void rule__AdditiveExpression__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__UnaryExpression__Group_1__0" + // InternalSolverLanguageParser.g:6911:1: rule__UnaryExpression__Group_1__0 : rule__UnaryExpression__Group_1__0__Impl rule__UnaryExpression__Group_1__1 ; + public final void rule__UnaryExpression__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5448:1: ( rule__AdditiveExpression__Group_1__1__Impl rule__AdditiveExpression__Group_1__2 ) - // InternalSolverLanguageParser.g:5449:2: rule__AdditiveExpression__Group_1__1__Impl rule__AdditiveExpression__Group_1__2 + // InternalSolverLanguageParser.g:6915:1: ( rule__UnaryExpression__Group_1__0__Impl rule__UnaryExpression__Group_1__1 ) + // InternalSolverLanguageParser.g:6916:2: rule__UnaryExpression__Group_1__0__Impl rule__UnaryExpression__Group_1__1 { - pushFollow(FOLLOW_7); - rule__AdditiveExpression__Group_1__1__Impl(); + pushFollow(FOLLOW_12); + rule__UnaryExpression__Group_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AdditiveExpression__Group_1__2(); + rule__UnaryExpression__Group_1__1(); state._fsp--; @@ -16998,35 +21478,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group_1__1" + // $ANTLR end "rule__UnaryExpression__Group_1__0" - // $ANTLR start "rule__AdditiveExpression__Group_1__1__Impl" - // InternalSolverLanguageParser.g:5456:1: rule__AdditiveExpression__Group_1__1__Impl : ( ( rule__AdditiveExpression__OpAssignment_1_1 ) ) ; - public final void rule__AdditiveExpression__Group_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__UnaryExpression__Group_1__0__Impl" + // InternalSolverLanguageParser.g:6923:1: rule__UnaryExpression__Group_1__0__Impl : ( () ) ; + public final void rule__UnaryExpression__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5460:1: ( ( ( rule__AdditiveExpression__OpAssignment_1_1 ) ) ) - // InternalSolverLanguageParser.g:5461:1: ( ( rule__AdditiveExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:6927:1: ( ( () ) ) + // InternalSolverLanguageParser.g:6928:1: ( () ) { - // InternalSolverLanguageParser.g:5461:1: ( ( rule__AdditiveExpression__OpAssignment_1_1 ) ) - // InternalSolverLanguageParser.g:5462:2: ( rule__AdditiveExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:6928:1: ( () ) + // InternalSolverLanguageParser.g:6929:2: () { - before(grammarAccess.getAdditiveExpressionAccess().getOpAssignment_1_1()); - // InternalSolverLanguageParser.g:5463:2: ( rule__AdditiveExpression__OpAssignment_1_1 ) - // InternalSolverLanguageParser.g:5463:3: rule__AdditiveExpression__OpAssignment_1_1 + before(grammarAccess.getUnaryExpressionAccess().getUnaryExpressionAction_1_0()); + // InternalSolverLanguageParser.g:6930:2: () + // InternalSolverLanguageParser.g:6930:3: { - pushFollow(FOLLOW_2); - rule__AdditiveExpression__OpAssignment_1_1(); - - state._fsp--; - - } - after(grammarAccess.getAdditiveExpressionAccess().getOpAssignment_1_1()); + after(grammarAccess.getUnaryExpressionAccess().getUnaryExpressionAction_1_0()); } @@ -17034,10 +21508,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -17045,21 +21515,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group_1__1__Impl" + // $ANTLR end "rule__UnaryExpression__Group_1__0__Impl" - // $ANTLR start "rule__AdditiveExpression__Group_1__2" - // InternalSolverLanguageParser.g:5471:1: rule__AdditiveExpression__Group_1__2 : rule__AdditiveExpression__Group_1__2__Impl ; - public final void rule__AdditiveExpression__Group_1__2() throws RecognitionException { + // $ANTLR start "rule__UnaryExpression__Group_1__1" + // InternalSolverLanguageParser.g:6938:1: rule__UnaryExpression__Group_1__1 : rule__UnaryExpression__Group_1__1__Impl rule__UnaryExpression__Group_1__2 ; + public final void rule__UnaryExpression__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5475:1: ( rule__AdditiveExpression__Group_1__2__Impl ) - // InternalSolverLanguageParser.g:5476:2: rule__AdditiveExpression__Group_1__2__Impl + // InternalSolverLanguageParser.g:6942:1: ( rule__UnaryExpression__Group_1__1__Impl rule__UnaryExpression__Group_1__2 ) + // InternalSolverLanguageParser.g:6943:2: rule__UnaryExpression__Group_1__1__Impl rule__UnaryExpression__Group_1__2 { + pushFollow(FOLLOW_42); + rule__UnaryExpression__Group_1__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__AdditiveExpression__Group_1__2__Impl(); + rule__UnaryExpression__Group_1__2(); state._fsp--; @@ -17078,35 +21553,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group_1__2" + // $ANTLR end "rule__UnaryExpression__Group_1__1" - // $ANTLR start "rule__AdditiveExpression__Group_1__2__Impl" - // InternalSolverLanguageParser.g:5482:1: rule__AdditiveExpression__Group_1__2__Impl : ( ( rule__AdditiveExpression__RightAssignment_1_2 ) ) ; - public final void rule__AdditiveExpression__Group_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__UnaryExpression__Group_1__1__Impl" + // InternalSolverLanguageParser.g:6950:1: rule__UnaryExpression__Group_1__1__Impl : ( ( rule__UnaryExpression__OpAssignment_1_1 ) ) ; + public final void rule__UnaryExpression__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5486:1: ( ( ( rule__AdditiveExpression__RightAssignment_1_2 ) ) ) - // InternalSolverLanguageParser.g:5487:1: ( ( rule__AdditiveExpression__RightAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6954:1: ( ( ( rule__UnaryExpression__OpAssignment_1_1 ) ) ) + // InternalSolverLanguageParser.g:6955:1: ( ( rule__UnaryExpression__OpAssignment_1_1 ) ) { - // InternalSolverLanguageParser.g:5487:1: ( ( rule__AdditiveExpression__RightAssignment_1_2 ) ) - // InternalSolverLanguageParser.g:5488:2: ( rule__AdditiveExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:6955:1: ( ( rule__UnaryExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:6956:2: ( rule__UnaryExpression__OpAssignment_1_1 ) { - before(grammarAccess.getAdditiveExpressionAccess().getRightAssignment_1_2()); - // InternalSolverLanguageParser.g:5489:2: ( rule__AdditiveExpression__RightAssignment_1_2 ) - // InternalSolverLanguageParser.g:5489:3: rule__AdditiveExpression__RightAssignment_1_2 + before(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1()); + // InternalSolverLanguageParser.g:6957:2: ( rule__UnaryExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:6957:3: rule__UnaryExpression__OpAssignment_1_1 { pushFollow(FOLLOW_2); - rule__AdditiveExpression__RightAssignment_1_2(); + rule__UnaryExpression__OpAssignment_1_1(); state._fsp--; } - after(grammarAccess.getAdditiveExpressionAccess().getRightAssignment_1_2()); + after(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1()); } @@ -17125,26 +21600,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AdditiveExpression__Group_1__2__Impl" + // $ANTLR end "rule__UnaryExpression__Group_1__1__Impl" - // $ANTLR start "rule__MultiplicativeExpression__Group__0" - // InternalSolverLanguageParser.g:5498:1: rule__MultiplicativeExpression__Group__0 : rule__MultiplicativeExpression__Group__0__Impl rule__MultiplicativeExpression__Group__1 ; - public final void rule__MultiplicativeExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__UnaryExpression__Group_1__2" + // InternalSolverLanguageParser.g:6965:1: rule__UnaryExpression__Group_1__2 : rule__UnaryExpression__Group_1__2__Impl ; + public final void rule__UnaryExpression__Group_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5502:1: ( rule__MultiplicativeExpression__Group__0__Impl rule__MultiplicativeExpression__Group__1 ) - // InternalSolverLanguageParser.g:5503:2: rule__MultiplicativeExpression__Group__0__Impl rule__MultiplicativeExpression__Group__1 + // InternalSolverLanguageParser.g:6969:1: ( rule__UnaryExpression__Group_1__2__Impl ) + // InternalSolverLanguageParser.g:6970:2: rule__UnaryExpression__Group_1__2__Impl { - pushFollow(FOLLOW_33); - rule__MultiplicativeExpression__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__MultiplicativeExpression__Group__1(); + rule__UnaryExpression__Group_1__2__Impl(); state._fsp--; @@ -17163,29 +21633,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group__0" + // $ANTLR end "rule__UnaryExpression__Group_1__2" - // $ANTLR start "rule__MultiplicativeExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:5510:1: rule__MultiplicativeExpression__Group__0__Impl : ( ruleExponentialExpression ) ; - public final void rule__MultiplicativeExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__UnaryExpression__Group_1__2__Impl" + // InternalSolverLanguageParser.g:6976:1: rule__UnaryExpression__Group_1__2__Impl : ( ( rule__UnaryExpression__BodyAssignment_1_2 ) ) ; + public final void rule__UnaryExpression__Group_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5514:1: ( ( ruleExponentialExpression ) ) - // InternalSolverLanguageParser.g:5515:1: ( ruleExponentialExpression ) + // InternalSolverLanguageParser.g:6980:1: ( ( ( rule__UnaryExpression__BodyAssignment_1_2 ) ) ) + // InternalSolverLanguageParser.g:6981:1: ( ( rule__UnaryExpression__BodyAssignment_1_2 ) ) { - // InternalSolverLanguageParser.g:5515:1: ( ruleExponentialExpression ) - // InternalSolverLanguageParser.g:5516:2: ruleExponentialExpression + // InternalSolverLanguageParser.g:6981:1: ( ( rule__UnaryExpression__BodyAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:6982:2: ( rule__UnaryExpression__BodyAssignment_1_2 ) + { + before(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2()); + // InternalSolverLanguageParser.g:6983:2: ( rule__UnaryExpression__BodyAssignment_1_2 ) + // InternalSolverLanguageParser.g:6983:3: rule__UnaryExpression__BodyAssignment_1_2 { - before(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleExponentialExpression(); + rule__UnaryExpression__BodyAssignment_1_2(); state._fsp--; - after(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); + + } + + after(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2()); } @@ -17204,21 +21680,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group__0__Impl" + // $ANTLR end "rule__UnaryExpression__Group_1__2__Impl" - // $ANTLR start "rule__MultiplicativeExpression__Group__1" - // InternalSolverLanguageParser.g:5525:1: rule__MultiplicativeExpression__Group__1 : rule__MultiplicativeExpression__Group__1__Impl ; - public final void rule__MultiplicativeExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__0" + // InternalSolverLanguageParser.g:6992:1: rule__Aggregation__Group__0 : rule__Aggregation__Group__0__Impl rule__Aggregation__Group__1 ; + public final void rule__Aggregation__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5529:1: ( rule__MultiplicativeExpression__Group__1__Impl ) - // InternalSolverLanguageParser.g:5530:2: rule__MultiplicativeExpression__Group__1__Impl + // InternalSolverLanguageParser.g:6996:1: ( rule__Aggregation__Group__0__Impl rule__Aggregation__Group__1 ) + // InternalSolverLanguageParser.g:6997:2: rule__Aggregation__Group__0__Impl rule__Aggregation__Group__1 { + pushFollow(FOLLOW_21); + rule__Aggregation__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__MultiplicativeExpression__Group__1__Impl(); + rule__Aggregation__Group__1(); state._fsp--; @@ -17237,53 +21718,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group__1" + // $ANTLR end "rule__Aggregation__Group__0" - // $ANTLR start "rule__MultiplicativeExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:5536:1: rule__MultiplicativeExpression__Group__1__Impl : ( ( rule__MultiplicativeExpression__Group_1__0 )* ) ; - public final void rule__MultiplicativeExpression__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__0__Impl" + // InternalSolverLanguageParser.g:7004:1: rule__Aggregation__Group__0__Impl : ( ( rule__Aggregation__OpAssignment_0 ) ) ; + public final void rule__Aggregation__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5540:1: ( ( ( rule__MultiplicativeExpression__Group_1__0 )* ) ) - // InternalSolverLanguageParser.g:5541:1: ( ( rule__MultiplicativeExpression__Group_1__0 )* ) + // InternalSolverLanguageParser.g:7008:1: ( ( ( rule__Aggregation__OpAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:7009:1: ( ( rule__Aggregation__OpAssignment_0 ) ) { - // InternalSolverLanguageParser.g:5541:1: ( ( rule__MultiplicativeExpression__Group_1__0 )* ) - // InternalSolverLanguageParser.g:5542:2: ( rule__MultiplicativeExpression__Group_1__0 )* + // InternalSolverLanguageParser.g:7009:1: ( ( rule__Aggregation__OpAssignment_0 ) ) + // InternalSolverLanguageParser.g:7010:2: ( rule__Aggregation__OpAssignment_0 ) { - before(grammarAccess.getMultiplicativeExpressionAccess().getGroup_1()); - // InternalSolverLanguageParser.g:5543:2: ( rule__MultiplicativeExpression__Group_1__0 )* - loop40: - do { - int alt40=2; - int LA40_0 = input.LA(1); - - if ( (LA40_0==Asterisk||LA40_0==Solidus) ) { - alt40=1; - } - - - switch (alt40) { - case 1 : - // InternalSolverLanguageParser.g:5543:3: rule__MultiplicativeExpression__Group_1__0 - { - pushFollow(FOLLOW_34); - rule__MultiplicativeExpression__Group_1__0(); - - state._fsp--; + before(grammarAccess.getAggregationAccess().getOpAssignment_0()); + // InternalSolverLanguageParser.g:7011:2: ( rule__Aggregation__OpAssignment_0 ) + // InternalSolverLanguageParser.g:7011:3: rule__Aggregation__OpAssignment_0 + { + pushFollow(FOLLOW_2); + rule__Aggregation__OpAssignment_0(); + state._fsp--; - } - break; - default : - break loop40; - } - } while (true); + } - after(grammarAccess.getMultiplicativeExpressionAccess().getGroup_1()); + after(grammarAccess.getAggregationAccess().getOpAssignment_0()); } @@ -17302,26 +21765,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group__1__Impl" - + // $ANTLR end "rule__Aggregation__Group__0__Impl" - // $ANTLR start "rule__MultiplicativeExpression__Group_1__0" - // InternalSolverLanguageParser.g:5552:1: rule__MultiplicativeExpression__Group_1__0 : rule__MultiplicativeExpression__Group_1__0__Impl rule__MultiplicativeExpression__Group_1__1 ; - public final void rule__MultiplicativeExpression__Group_1__0() throws RecognitionException { + + // $ANTLR start "rule__Aggregation__Group__1" + // InternalSolverLanguageParser.g:7019:1: rule__Aggregation__Group__1 : rule__Aggregation__Group__1__Impl rule__Aggregation__Group__2 ; + public final void rule__Aggregation__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5556:1: ( rule__MultiplicativeExpression__Group_1__0__Impl rule__MultiplicativeExpression__Group_1__1 ) - // InternalSolverLanguageParser.g:5557:2: rule__MultiplicativeExpression__Group_1__0__Impl rule__MultiplicativeExpression__Group_1__1 + // InternalSolverLanguageParser.g:7023:1: ( rule__Aggregation__Group__1__Impl rule__Aggregation__Group__2 ) + // InternalSolverLanguageParser.g:7024:2: rule__Aggregation__Group__1__Impl rule__Aggregation__Group__2 { - pushFollow(FOLLOW_33); - rule__MultiplicativeExpression__Group_1__0__Impl(); + pushFollow(FOLLOW_12); + rule__Aggregation__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MultiplicativeExpression__Group_1__1(); + rule__Aggregation__Group__2(); state._fsp--; @@ -17340,29 +21803,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group_1__0" + // $ANTLR end "rule__Aggregation__Group__1" - // $ANTLR start "rule__MultiplicativeExpression__Group_1__0__Impl" - // InternalSolverLanguageParser.g:5564:1: rule__MultiplicativeExpression__Group_1__0__Impl : ( () ) ; - public final void rule__MultiplicativeExpression__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__1__Impl" + // InternalSolverLanguageParser.g:7031:1: rule__Aggregation__Group__1__Impl : ( LeftCurlyBracket ) ; + public final void rule__Aggregation__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5568:1: ( ( () ) ) - // InternalSolverLanguageParser.g:5569:1: ( () ) - { - // InternalSolverLanguageParser.g:5569:1: ( () ) - // InternalSolverLanguageParser.g:5570:2: () + // InternalSolverLanguageParser.g:7035:1: ( ( LeftCurlyBracket ) ) + // InternalSolverLanguageParser.g:7036:1: ( LeftCurlyBracket ) { - before(grammarAccess.getMultiplicativeExpressionAccess().getBinaryExpressionLeftAction_1_0()); - // InternalSolverLanguageParser.g:5571:2: () - // InternalSolverLanguageParser.g:5571:3: + // InternalSolverLanguageParser.g:7036:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:7037:2: LeftCurlyBracket { - } - - after(grammarAccess.getMultiplicativeExpressionAccess().getBinaryExpressionLeftAction_1_0()); + before(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); + match(input,LeftCurlyBracket,FOLLOW_2); + after(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); } @@ -17370,6 +21829,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -17377,26 +21840,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group_1__0__Impl" + // $ANTLR end "rule__Aggregation__Group__1__Impl" - // $ANTLR start "rule__MultiplicativeExpression__Group_1__1" - // InternalSolverLanguageParser.g:5579:1: rule__MultiplicativeExpression__Group_1__1 : rule__MultiplicativeExpression__Group_1__1__Impl rule__MultiplicativeExpression__Group_1__2 ; - public final void rule__MultiplicativeExpression__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__2" + // InternalSolverLanguageParser.g:7046:1: rule__Aggregation__Group__2 : rule__Aggregation__Group__2__Impl rule__Aggregation__Group__3 ; + public final void rule__Aggregation__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5583:1: ( rule__MultiplicativeExpression__Group_1__1__Impl rule__MultiplicativeExpression__Group_1__2 ) - // InternalSolverLanguageParser.g:5584:2: rule__MultiplicativeExpression__Group_1__1__Impl rule__MultiplicativeExpression__Group_1__2 + // InternalSolverLanguageParser.g:7050:1: ( rule__Aggregation__Group__2__Impl rule__Aggregation__Group__3 ) + // InternalSolverLanguageParser.g:7051:2: rule__Aggregation__Group__2__Impl rule__Aggregation__Group__3 { - pushFollow(FOLLOW_7); - rule__MultiplicativeExpression__Group_1__1__Impl(); + pushFollow(FOLLOW_43); + rule__Aggregation__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MultiplicativeExpression__Group_1__2(); + rule__Aggregation__Group__3(); state._fsp--; @@ -17415,35 +21878,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group_1__1" + // $ANTLR end "rule__Aggregation__Group__2" - // $ANTLR start "rule__MultiplicativeExpression__Group_1__1__Impl" - // InternalSolverLanguageParser.g:5591:1: rule__MultiplicativeExpression__Group_1__1__Impl : ( ( rule__MultiplicativeExpression__OpAssignment_1_1 ) ) ; - public final void rule__MultiplicativeExpression__Group_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__2__Impl" + // InternalSolverLanguageParser.g:7058:1: rule__Aggregation__Group__2__Impl : ( ( rule__Aggregation__ValueAssignment_2 ) ) ; + public final void rule__Aggregation__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5595:1: ( ( ( rule__MultiplicativeExpression__OpAssignment_1_1 ) ) ) - // InternalSolverLanguageParser.g:5596:1: ( ( rule__MultiplicativeExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:7062:1: ( ( ( rule__Aggregation__ValueAssignment_2 ) ) ) + // InternalSolverLanguageParser.g:7063:1: ( ( rule__Aggregation__ValueAssignment_2 ) ) { - // InternalSolverLanguageParser.g:5596:1: ( ( rule__MultiplicativeExpression__OpAssignment_1_1 ) ) - // InternalSolverLanguageParser.g:5597:2: ( rule__MultiplicativeExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:7063:1: ( ( rule__Aggregation__ValueAssignment_2 ) ) + // InternalSolverLanguageParser.g:7064:2: ( rule__Aggregation__ValueAssignment_2 ) { - before(grammarAccess.getMultiplicativeExpressionAccess().getOpAssignment_1_1()); - // InternalSolverLanguageParser.g:5598:2: ( rule__MultiplicativeExpression__OpAssignment_1_1 ) - // InternalSolverLanguageParser.g:5598:3: rule__MultiplicativeExpression__OpAssignment_1_1 + before(grammarAccess.getAggregationAccess().getValueAssignment_2()); + // InternalSolverLanguageParser.g:7065:2: ( rule__Aggregation__ValueAssignment_2 ) + // InternalSolverLanguageParser.g:7065:3: rule__Aggregation__ValueAssignment_2 { pushFollow(FOLLOW_2); - rule__MultiplicativeExpression__OpAssignment_1_1(); + rule__Aggregation__ValueAssignment_2(); state._fsp--; } - after(grammarAccess.getMultiplicativeExpressionAccess().getOpAssignment_1_1()); + after(grammarAccess.getAggregationAccess().getValueAssignment_2()); } @@ -17462,21 +21925,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group_1__1__Impl" + // $ANTLR end "rule__Aggregation__Group__2__Impl" - // $ANTLR start "rule__MultiplicativeExpression__Group_1__2" - // InternalSolverLanguageParser.g:5606:1: rule__MultiplicativeExpression__Group_1__2 : rule__MultiplicativeExpression__Group_1__2__Impl ; - public final void rule__MultiplicativeExpression__Group_1__2() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__3" + // InternalSolverLanguageParser.g:7073:1: rule__Aggregation__Group__3 : rule__Aggregation__Group__3__Impl rule__Aggregation__Group__4 ; + public final void rule__Aggregation__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5610:1: ( rule__MultiplicativeExpression__Group_1__2__Impl ) - // InternalSolverLanguageParser.g:5611:2: rule__MultiplicativeExpression__Group_1__2__Impl + // InternalSolverLanguageParser.g:7077:1: ( rule__Aggregation__Group__3__Impl rule__Aggregation__Group__4 ) + // InternalSolverLanguageParser.g:7078:2: rule__Aggregation__Group__3__Impl rule__Aggregation__Group__4 { + pushFollow(FOLLOW_12); + rule__Aggregation__Group__3__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__MultiplicativeExpression__Group_1__2__Impl(); + rule__Aggregation__Group__4(); state._fsp--; @@ -17495,35 +21963,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group_1__2" + // $ANTLR end "rule__Aggregation__Group__3" - // $ANTLR start "rule__MultiplicativeExpression__Group_1__2__Impl" - // InternalSolverLanguageParser.g:5617:1: rule__MultiplicativeExpression__Group_1__2__Impl : ( ( rule__MultiplicativeExpression__RightAssignment_1_2 ) ) ; - public final void rule__MultiplicativeExpression__Group_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__3__Impl" + // InternalSolverLanguageParser.g:7085:1: rule__Aggregation__Group__3__Impl : ( VerticalLine ) ; + public final void rule__Aggregation__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5621:1: ( ( ( rule__MultiplicativeExpression__RightAssignment_1_2 ) ) ) - // InternalSolverLanguageParser.g:5622:1: ( ( rule__MultiplicativeExpression__RightAssignment_1_2 ) ) - { - // InternalSolverLanguageParser.g:5622:1: ( ( rule__MultiplicativeExpression__RightAssignment_1_2 ) ) - // InternalSolverLanguageParser.g:5623:2: ( rule__MultiplicativeExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:7089:1: ( ( VerticalLine ) ) + // InternalSolverLanguageParser.g:7090:1: ( VerticalLine ) { - before(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2()); - // InternalSolverLanguageParser.g:5624:2: ( rule__MultiplicativeExpression__RightAssignment_1_2 ) - // InternalSolverLanguageParser.g:5624:3: rule__MultiplicativeExpression__RightAssignment_1_2 + // InternalSolverLanguageParser.g:7090:1: ( VerticalLine ) + // InternalSolverLanguageParser.g:7091:2: VerticalLine { - pushFollow(FOLLOW_2); - rule__MultiplicativeExpression__RightAssignment_1_2(); - - state._fsp--; - - - } - - after(grammarAccess.getMultiplicativeExpressionAccess().getRightAssignment_1_2()); + before(grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); + match(input,VerticalLine,FOLLOW_2); + after(grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); } @@ -17542,26 +22000,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MultiplicativeExpression__Group_1__2__Impl" + // $ANTLR end "rule__Aggregation__Group__3__Impl" - // $ANTLR start "rule__ExponentialExpression__Group__0" - // InternalSolverLanguageParser.g:5633:1: rule__ExponentialExpression__Group__0 : rule__ExponentialExpression__Group__0__Impl rule__ExponentialExpression__Group__1 ; - public final void rule__ExponentialExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__4" + // InternalSolverLanguageParser.g:7100:1: rule__Aggregation__Group__4 : rule__Aggregation__Group__4__Impl rule__Aggregation__Group__5 ; + public final void rule__Aggregation__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5637:1: ( rule__ExponentialExpression__Group__0__Impl rule__ExponentialExpression__Group__1 ) - // InternalSolverLanguageParser.g:5638:2: rule__ExponentialExpression__Group__0__Impl rule__ExponentialExpression__Group__1 + // InternalSolverLanguageParser.g:7104:1: ( rule__Aggregation__Group__4__Impl rule__Aggregation__Group__5 ) + // InternalSolverLanguageParser.g:7105:2: rule__Aggregation__Group__4__Impl rule__Aggregation__Group__5 { - pushFollow(FOLLOW_35); - rule__ExponentialExpression__Group__0__Impl(); + pushFollow(FOLLOW_23); + rule__Aggregation__Group__4__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExponentialExpression__Group__1(); + rule__Aggregation__Group__5(); state._fsp--; @@ -17580,29 +22038,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group__0" + // $ANTLR end "rule__Aggregation__Group__4" - // $ANTLR start "rule__ExponentialExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:5645:1: rule__ExponentialExpression__Group__0__Impl : ( ruleCastExpression ) ; - public final void rule__ExponentialExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__4__Impl" + // InternalSolverLanguageParser.g:7112:1: rule__Aggregation__Group__4__Impl : ( ( rule__Aggregation__ConditionAssignment_4 ) ) ; + public final void rule__Aggregation__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5649:1: ( ( ruleCastExpression ) ) - // InternalSolverLanguageParser.g:5650:1: ( ruleCastExpression ) + // InternalSolverLanguageParser.g:7116:1: ( ( ( rule__Aggregation__ConditionAssignment_4 ) ) ) + // InternalSolverLanguageParser.g:7117:1: ( ( rule__Aggregation__ConditionAssignment_4 ) ) { - // InternalSolverLanguageParser.g:5650:1: ( ruleCastExpression ) - // InternalSolverLanguageParser.g:5651:2: ruleCastExpression + // InternalSolverLanguageParser.g:7117:1: ( ( rule__Aggregation__ConditionAssignment_4 ) ) + // InternalSolverLanguageParser.g:7118:2: ( rule__Aggregation__ConditionAssignment_4 ) + { + before(grammarAccess.getAggregationAccess().getConditionAssignment_4()); + // InternalSolverLanguageParser.g:7119:2: ( rule__Aggregation__ConditionAssignment_4 ) + // InternalSolverLanguageParser.g:7119:3: rule__Aggregation__ConditionAssignment_4 { - before(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleCastExpression(); + rule__Aggregation__ConditionAssignment_4(); state._fsp--; - after(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); + + } + + after(grammarAccess.getAggregationAccess().getConditionAssignment_4()); } @@ -17621,21 +22085,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group__0__Impl" + // $ANTLR end "rule__Aggregation__Group__4__Impl" - // $ANTLR start "rule__ExponentialExpression__Group__1" - // InternalSolverLanguageParser.g:5660:1: rule__ExponentialExpression__Group__1 : rule__ExponentialExpression__Group__1__Impl ; - public final void rule__ExponentialExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__5" + // InternalSolverLanguageParser.g:7127:1: rule__Aggregation__Group__5 : rule__Aggregation__Group__5__Impl ; + public final void rule__Aggregation__Group__5() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5664:1: ( rule__ExponentialExpression__Group__1__Impl ) - // InternalSolverLanguageParser.g:5665:2: rule__ExponentialExpression__Group__1__Impl + // InternalSolverLanguageParser.g:7131:1: ( rule__Aggregation__Group__5__Impl ) + // InternalSolverLanguageParser.g:7132:2: rule__Aggregation__Group__5__Impl { pushFollow(FOLLOW_2); - rule__ExponentialExpression__Group__1__Impl(); + rule__Aggregation__Group__5__Impl(); state._fsp--; @@ -17654,46 +22118,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group__1" + // $ANTLR end "rule__Aggregation__Group__5" - // $ANTLR start "rule__ExponentialExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:5671:1: rule__ExponentialExpression__Group__1__Impl : ( ( rule__ExponentialExpression__Group_1__0 )? ) ; - public final void rule__ExponentialExpression__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Aggregation__Group__5__Impl" + // InternalSolverLanguageParser.g:7138:1: rule__Aggregation__Group__5__Impl : ( RightCurlyBracket ) ; + public final void rule__Aggregation__Group__5__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5675:1: ( ( ( rule__ExponentialExpression__Group_1__0 )? ) ) - // InternalSolverLanguageParser.g:5676:1: ( ( rule__ExponentialExpression__Group_1__0 )? ) + // InternalSolverLanguageParser.g:7142:1: ( ( RightCurlyBracket ) ) + // InternalSolverLanguageParser.g:7143:1: ( RightCurlyBracket ) { - // InternalSolverLanguageParser.g:5676:1: ( ( rule__ExponentialExpression__Group_1__0 )? ) - // InternalSolverLanguageParser.g:5677:2: ( rule__ExponentialExpression__Group_1__0 )? + // InternalSolverLanguageParser.g:7143:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:7144:2: RightCurlyBracket { - before(grammarAccess.getExponentialExpressionAccess().getGroup_1()); - // InternalSolverLanguageParser.g:5678:2: ( rule__ExponentialExpression__Group_1__0 )? - int alt41=2; - int LA41_0 = input.LA(1); - - if ( (LA41_0==CircumflexAccent) ) { - alt41=1; - } - switch (alt41) { - case 1 : - // InternalSolverLanguageParser.g:5678:3: rule__ExponentialExpression__Group_1__0 - { - pushFollow(FOLLOW_2); - rule__ExponentialExpression__Group_1__0(); - - state._fsp--; - - - } - break; - - } - - after(grammarAccess.getExponentialExpressionAccess().getGroup_1()); + before(grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); + match(input,RightCurlyBracket,FOLLOW_2); + after(grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); } @@ -17712,26 +22155,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group__1__Impl" + // $ANTLR end "rule__Aggregation__Group__5__Impl" - // $ANTLR start "rule__ExponentialExpression__Group_1__0" - // InternalSolverLanguageParser.g:5687:1: rule__ExponentialExpression__Group_1__0 : rule__ExponentialExpression__Group_1__0__Impl rule__ExponentialExpression__Group_1__1 ; - public final void rule__ExponentialExpression__Group_1__0() throws RecognitionException { + // $ANTLR start "rule__Count__Group__0" + // InternalSolverLanguageParser.g:7154:1: rule__Count__Group__0 : rule__Count__Group__0__Impl rule__Count__Group__1 ; + public final void rule__Count__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5691:1: ( rule__ExponentialExpression__Group_1__0__Impl rule__ExponentialExpression__Group_1__1 ) - // InternalSolverLanguageParser.g:5692:2: rule__ExponentialExpression__Group_1__0__Impl rule__ExponentialExpression__Group_1__1 + // InternalSolverLanguageParser.g:7158:1: ( rule__Count__Group__0__Impl rule__Count__Group__1 ) + // InternalSolverLanguageParser.g:7159:2: rule__Count__Group__0__Impl rule__Count__Group__1 { - pushFollow(FOLLOW_35); - rule__ExponentialExpression__Group_1__0__Impl(); + pushFollow(FOLLOW_21); + rule__Count__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExponentialExpression__Group_1__1(); + rule__Count__Group__1(); state._fsp--; @@ -17750,29 +22193,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group_1__0" + // $ANTLR end "rule__Count__Group__0" - // $ANTLR start "rule__ExponentialExpression__Group_1__0__Impl" - // InternalSolverLanguageParser.g:5699:1: rule__ExponentialExpression__Group_1__0__Impl : ( () ) ; - public final void rule__ExponentialExpression__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Count__Group__0__Impl" + // InternalSolverLanguageParser.g:7166:1: rule__Count__Group__0__Impl : ( Count ) ; + public final void rule__Count__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5703:1: ( ( () ) ) - // InternalSolverLanguageParser.g:5704:1: ( () ) - { - // InternalSolverLanguageParser.g:5704:1: ( () ) - // InternalSolverLanguageParser.g:5705:2: () + // InternalSolverLanguageParser.g:7170:1: ( ( Count ) ) + // InternalSolverLanguageParser.g:7171:1: ( Count ) { - before(grammarAccess.getExponentialExpressionAccess().getBinaryExpressionLeftAction_1_0()); - // InternalSolverLanguageParser.g:5706:2: () - // InternalSolverLanguageParser.g:5706:3: + // InternalSolverLanguageParser.g:7171:1: ( Count ) + // InternalSolverLanguageParser.g:7172:2: Count { - } - - after(grammarAccess.getExponentialExpressionAccess().getBinaryExpressionLeftAction_1_0()); + before(grammarAccess.getCountAccess().getCountKeyword_0()); + match(input,Count,FOLLOW_2); + after(grammarAccess.getCountAccess().getCountKeyword_0()); } @@ -17780,6 +22219,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -17787,26 +22230,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group_1__0__Impl" + // $ANTLR end "rule__Count__Group__0__Impl" - // $ANTLR start "rule__ExponentialExpression__Group_1__1" - // InternalSolverLanguageParser.g:5714:1: rule__ExponentialExpression__Group_1__1 : rule__ExponentialExpression__Group_1__1__Impl rule__ExponentialExpression__Group_1__2 ; - public final void rule__ExponentialExpression__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__Count__Group__1" + // InternalSolverLanguageParser.g:7181:1: rule__Count__Group__1 : rule__Count__Group__1__Impl rule__Count__Group__2 ; + public final void rule__Count__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5718:1: ( rule__ExponentialExpression__Group_1__1__Impl rule__ExponentialExpression__Group_1__2 ) - // InternalSolverLanguageParser.g:5719:2: rule__ExponentialExpression__Group_1__1__Impl rule__ExponentialExpression__Group_1__2 + // InternalSolverLanguageParser.g:7185:1: ( rule__Count__Group__1__Impl rule__Count__Group__2 ) + // InternalSolverLanguageParser.g:7186:2: rule__Count__Group__1__Impl rule__Count__Group__2 { - pushFollow(FOLLOW_7); - rule__ExponentialExpression__Group_1__1__Impl(); + pushFollow(FOLLOW_12); + rule__Count__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExponentialExpression__Group_1__2(); + rule__Count__Group__2(); state._fsp--; @@ -17825,35 +22268,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group_1__1" + // $ANTLR end "rule__Count__Group__1" - // $ANTLR start "rule__ExponentialExpression__Group_1__1__Impl" - // InternalSolverLanguageParser.g:5726:1: rule__ExponentialExpression__Group_1__1__Impl : ( ( rule__ExponentialExpression__OpAssignment_1_1 ) ) ; - public final void rule__ExponentialExpression__Group_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Count__Group__1__Impl" + // InternalSolverLanguageParser.g:7193:1: rule__Count__Group__1__Impl : ( LeftCurlyBracket ) ; + public final void rule__Count__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5730:1: ( ( ( rule__ExponentialExpression__OpAssignment_1_1 ) ) ) - // InternalSolverLanguageParser.g:5731:1: ( ( rule__ExponentialExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:7197:1: ( ( LeftCurlyBracket ) ) + // InternalSolverLanguageParser.g:7198:1: ( LeftCurlyBracket ) { - // InternalSolverLanguageParser.g:5731:1: ( ( rule__ExponentialExpression__OpAssignment_1_1 ) ) - // InternalSolverLanguageParser.g:5732:2: ( rule__ExponentialExpression__OpAssignment_1_1 ) - { - before(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1()); - // InternalSolverLanguageParser.g:5733:2: ( rule__ExponentialExpression__OpAssignment_1_1 ) - // InternalSolverLanguageParser.g:5733:3: rule__ExponentialExpression__OpAssignment_1_1 + // InternalSolverLanguageParser.g:7198:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:7199:2: LeftCurlyBracket { - pushFollow(FOLLOW_2); - rule__ExponentialExpression__OpAssignment_1_1(); - - state._fsp--; - - - } - - after(grammarAccess.getExponentialExpressionAccess().getOpAssignment_1_1()); + before(grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); + match(input,LeftCurlyBracket,FOLLOW_2); + after(grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); } @@ -17872,21 +22305,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group_1__1__Impl" + // $ANTLR end "rule__Count__Group__1__Impl" - // $ANTLR start "rule__ExponentialExpression__Group_1__2" - // InternalSolverLanguageParser.g:5741:1: rule__ExponentialExpression__Group_1__2 : rule__ExponentialExpression__Group_1__2__Impl ; - public final void rule__ExponentialExpression__Group_1__2() throws RecognitionException { + // $ANTLR start "rule__Count__Group__2" + // InternalSolverLanguageParser.g:7208:1: rule__Count__Group__2 : rule__Count__Group__2__Impl rule__Count__Group__3 ; + public final void rule__Count__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5745:1: ( rule__ExponentialExpression__Group_1__2__Impl ) - // InternalSolverLanguageParser.g:5746:2: rule__ExponentialExpression__Group_1__2__Impl + // InternalSolverLanguageParser.g:7212:1: ( rule__Count__Group__2__Impl rule__Count__Group__3 ) + // InternalSolverLanguageParser.g:7213:2: rule__Count__Group__2__Impl rule__Count__Group__3 { + pushFollow(FOLLOW_23); + rule__Count__Group__2__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ExponentialExpression__Group_1__2__Impl(); + rule__Count__Group__3(); state._fsp--; @@ -17905,35 +22343,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group_1__2" + // $ANTLR end "rule__Count__Group__2" - // $ANTLR start "rule__ExponentialExpression__Group_1__2__Impl" - // InternalSolverLanguageParser.g:5752:1: rule__ExponentialExpression__Group_1__2__Impl : ( ( rule__ExponentialExpression__RightAssignment_1_2 ) ) ; - public final void rule__ExponentialExpression__Group_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Count__Group__2__Impl" + // InternalSolverLanguageParser.g:7220:1: rule__Count__Group__2__Impl : ( ( rule__Count__ConditionAssignment_2 ) ) ; + public final void rule__Count__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5756:1: ( ( ( rule__ExponentialExpression__RightAssignment_1_2 ) ) ) - // InternalSolverLanguageParser.g:5757:1: ( ( rule__ExponentialExpression__RightAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:7224:1: ( ( ( rule__Count__ConditionAssignment_2 ) ) ) + // InternalSolverLanguageParser.g:7225:1: ( ( rule__Count__ConditionAssignment_2 ) ) { - // InternalSolverLanguageParser.g:5757:1: ( ( rule__ExponentialExpression__RightAssignment_1_2 ) ) - // InternalSolverLanguageParser.g:5758:2: ( rule__ExponentialExpression__RightAssignment_1_2 ) + // InternalSolverLanguageParser.g:7225:1: ( ( rule__Count__ConditionAssignment_2 ) ) + // InternalSolverLanguageParser.g:7226:2: ( rule__Count__ConditionAssignment_2 ) { - before(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2()); - // InternalSolverLanguageParser.g:5759:2: ( rule__ExponentialExpression__RightAssignment_1_2 ) - // InternalSolverLanguageParser.g:5759:3: rule__ExponentialExpression__RightAssignment_1_2 + before(grammarAccess.getCountAccess().getConditionAssignment_2()); + // InternalSolverLanguageParser.g:7227:2: ( rule__Count__ConditionAssignment_2 ) + // InternalSolverLanguageParser.g:7227:3: rule__Count__ConditionAssignment_2 { pushFollow(FOLLOW_2); - rule__ExponentialExpression__RightAssignment_1_2(); + rule__Count__ConditionAssignment_2(); state._fsp--; } - after(grammarAccess.getExponentialExpressionAccess().getRightAssignment_1_2()); + after(grammarAccess.getCountAccess().getConditionAssignment_2()); } @@ -17952,26 +22390,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExponentialExpression__Group_1__2__Impl" + // $ANTLR end "rule__Count__Group__2__Impl" - // $ANTLR start "rule__CastExpression__Group__0" - // InternalSolverLanguageParser.g:5768:1: rule__CastExpression__Group__0 : rule__CastExpression__Group__0__Impl rule__CastExpression__Group__1 ; - public final void rule__CastExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__Count__Group__3" + // InternalSolverLanguageParser.g:7235:1: rule__Count__Group__3 : rule__Count__Group__3__Impl ; + public final void rule__Count__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5772:1: ( rule__CastExpression__Group__0__Impl rule__CastExpression__Group__1 ) - // InternalSolverLanguageParser.g:5773:2: rule__CastExpression__Group__0__Impl rule__CastExpression__Group__1 + // InternalSolverLanguageParser.g:7239:1: ( rule__Count__Group__3__Impl ) + // InternalSolverLanguageParser.g:7240:2: rule__Count__Group__3__Impl { - pushFollow(FOLLOW_36); - rule__CastExpression__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__CastExpression__Group__1(); + rule__Count__Group__3__Impl(); state._fsp--; @@ -17990,29 +22423,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group__0" + // $ANTLR end "rule__Count__Group__3" - // $ANTLR start "rule__CastExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:5780:1: rule__CastExpression__Group__0__Impl : ( ruleUnaryExpression ) ; - public final void rule__CastExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Count__Group__3__Impl" + // InternalSolverLanguageParser.g:7246:1: rule__Count__Group__3__Impl : ( RightCurlyBracket ) ; + public final void rule__Count__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5784:1: ( ( ruleUnaryExpression ) ) - // InternalSolverLanguageParser.g:5785:1: ( ruleUnaryExpression ) + // InternalSolverLanguageParser.g:7250:1: ( ( RightCurlyBracket ) ) + // InternalSolverLanguageParser.g:7251:1: ( RightCurlyBracket ) { - // InternalSolverLanguageParser.g:5785:1: ( ruleUnaryExpression ) - // InternalSolverLanguageParser.g:5786:2: ruleUnaryExpression + // InternalSolverLanguageParser.g:7251:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:7252:2: RightCurlyBracket { - before(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); - pushFollow(FOLLOW_2); - ruleUnaryExpression(); - - state._fsp--; - - after(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); + before(grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); + match(input,RightCurlyBracket,FOLLOW_2); + after(grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); } @@ -18031,21 +22460,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group__0__Impl" + // $ANTLR end "rule__Count__Group__3__Impl" - // $ANTLR start "rule__CastExpression__Group__1" - // InternalSolverLanguageParser.g:5795:1: rule__CastExpression__Group__1 : rule__CastExpression__Group__1__Impl ; - public final void rule__CastExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__AtomicExpression__Group_4__0" + // InternalSolverLanguageParser.g:7262:1: rule__AtomicExpression__Group_4__0 : rule__AtomicExpression__Group_4__0__Impl rule__AtomicExpression__Group_4__1 ; + public final void rule__AtomicExpression__Group_4__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5799:1: ( rule__CastExpression__Group__1__Impl ) - // InternalSolverLanguageParser.g:5800:2: rule__CastExpression__Group__1__Impl + // InternalSolverLanguageParser.g:7266:1: ( rule__AtomicExpression__Group_4__0__Impl rule__AtomicExpression__Group_4__1 ) + // InternalSolverLanguageParser.g:7267:2: rule__AtomicExpression__Group_4__0__Impl rule__AtomicExpression__Group_4__1 { + pushFollow(FOLLOW_12); + rule__AtomicExpression__Group_4__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__CastExpression__Group__1__Impl(); + rule__AtomicExpression__Group_4__1(); state._fsp--; @@ -18064,46 +22498,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group__1" - - - // $ANTLR start "rule__CastExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:5806:1: rule__CastExpression__Group__1__Impl : ( ( rule__CastExpression__Group_1__0 )? ) ; - public final void rule__CastExpression__Group__1__Impl() throws RecognitionException { - - int stackSize = keepStackSize(); - - try { - // InternalSolverLanguageParser.g:5810:1: ( ( ( rule__CastExpression__Group_1__0 )? ) ) - // InternalSolverLanguageParser.g:5811:1: ( ( rule__CastExpression__Group_1__0 )? ) - { - // InternalSolverLanguageParser.g:5811:1: ( ( rule__CastExpression__Group_1__0 )? ) - // InternalSolverLanguageParser.g:5812:2: ( rule__CastExpression__Group_1__0 )? - { - before(grammarAccess.getCastExpressionAccess().getGroup_1()); - // InternalSolverLanguageParser.g:5813:2: ( rule__CastExpression__Group_1__0 )? - int alt42=2; - int LA42_0 = input.LA(1); - - if ( (LA42_0==As) ) { - alt42=1; - } - switch (alt42) { - case 1 : - // InternalSolverLanguageParser.g:5813:3: rule__CastExpression__Group_1__0 - { - pushFollow(FOLLOW_2); - rule__CastExpression__Group_1__0(); - - state._fsp--; - + // $ANTLR end "rule__AtomicExpression__Group_4__0" - } - break; - } + // $ANTLR start "rule__AtomicExpression__Group_4__0__Impl" + // InternalSolverLanguageParser.g:7274:1: rule__AtomicExpression__Group_4__0__Impl : ( LeftParenthesis ) ; + public final void rule__AtomicExpression__Group_4__0__Impl() throws RecognitionException { - after(grammarAccess.getCastExpressionAccess().getGroup_1()); + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:7278:1: ( ( LeftParenthesis ) ) + // InternalSolverLanguageParser.g:7279:1: ( LeftParenthesis ) + { + // InternalSolverLanguageParser.g:7279:1: ( LeftParenthesis ) + // InternalSolverLanguageParser.g:7280:2: LeftParenthesis + { + before(grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); + match(input,LeftParenthesis,FOLLOW_2); + after(grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); } @@ -18122,26 +22535,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group__1__Impl" + // $ANTLR end "rule__AtomicExpression__Group_4__0__Impl" - // $ANTLR start "rule__CastExpression__Group_1__0" - // InternalSolverLanguageParser.g:5822:1: rule__CastExpression__Group_1__0 : rule__CastExpression__Group_1__0__Impl rule__CastExpression__Group_1__1 ; - public final void rule__CastExpression__Group_1__0() throws RecognitionException { + // $ANTLR start "rule__AtomicExpression__Group_4__1" + // InternalSolverLanguageParser.g:7289:1: rule__AtomicExpression__Group_4__1 : rule__AtomicExpression__Group_4__1__Impl rule__AtomicExpression__Group_4__2 ; + public final void rule__AtomicExpression__Group_4__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5826:1: ( rule__CastExpression__Group_1__0__Impl rule__CastExpression__Group_1__1 ) - // InternalSolverLanguageParser.g:5827:2: rule__CastExpression__Group_1__0__Impl rule__CastExpression__Group_1__1 + // InternalSolverLanguageParser.g:7293:1: ( rule__AtomicExpression__Group_4__1__Impl rule__AtomicExpression__Group_4__2 ) + // InternalSolverLanguageParser.g:7294:2: rule__AtomicExpression__Group_4__1__Impl rule__AtomicExpression__Group_4__2 { - pushFollow(FOLLOW_36); - rule__CastExpression__Group_1__0__Impl(); + pushFollow(FOLLOW_44); + rule__AtomicExpression__Group_4__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__CastExpression__Group_1__1(); + rule__AtomicExpression__Group_4__2(); state._fsp--; @@ -18160,29 +22573,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group_1__0" + // $ANTLR end "rule__AtomicExpression__Group_4__1" - // $ANTLR start "rule__CastExpression__Group_1__0__Impl" - // InternalSolverLanguageParser.g:5834:1: rule__CastExpression__Group_1__0__Impl : ( () ) ; - public final void rule__CastExpression__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__AtomicExpression__Group_4__1__Impl" + // InternalSolverLanguageParser.g:7301:1: rule__AtomicExpression__Group_4__1__Impl : ( ruleExpression ) ; + public final void rule__AtomicExpression__Group_4__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5838:1: ( ( () ) ) - // InternalSolverLanguageParser.g:5839:1: ( () ) + // InternalSolverLanguageParser.g:7305:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:7306:1: ( ruleExpression ) { - // InternalSolverLanguageParser.g:5839:1: ( () ) - // InternalSolverLanguageParser.g:5840:2: () - { - before(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); - // InternalSolverLanguageParser.g:5841:2: () - // InternalSolverLanguageParser.g:5841:3: + // InternalSolverLanguageParser.g:7306:1: ( ruleExpression ) + // InternalSolverLanguageParser.g:7307:2: ruleExpression { - } + before(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); + pushFollow(FOLLOW_2); + ruleExpression(); - after(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0()); + state._fsp--; + + after(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); } @@ -18190,6 +22603,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -18197,26 +22614,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group_1__0__Impl" + // $ANTLR end "rule__AtomicExpression__Group_4__1__Impl" - // $ANTLR start "rule__CastExpression__Group_1__1" - // InternalSolverLanguageParser.g:5849:1: rule__CastExpression__Group_1__1 : rule__CastExpression__Group_1__1__Impl rule__CastExpression__Group_1__2 ; - public final void rule__CastExpression__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__AtomicExpression__Group_4__2" + // InternalSolverLanguageParser.g:7316:1: rule__AtomicExpression__Group_4__2 : rule__AtomicExpression__Group_4__2__Impl ; + public final void rule__AtomicExpression__Group_4__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5853:1: ( rule__CastExpression__Group_1__1__Impl rule__CastExpression__Group_1__2 ) - // InternalSolverLanguageParser.g:5854:2: rule__CastExpression__Group_1__1__Impl rule__CastExpression__Group_1__2 + // InternalSolverLanguageParser.g:7320:1: ( rule__AtomicExpression__Group_4__2__Impl ) + // InternalSolverLanguageParser.g:7321:2: rule__AtomicExpression__Group_4__2__Impl { - pushFollow(FOLLOW_9); - rule__CastExpression__Group_1__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__CastExpression__Group_1__2(); + rule__AtomicExpression__Group_4__2__Impl(); state._fsp--; @@ -18235,25 +22647,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group_1__1" + // $ANTLR end "rule__AtomicExpression__Group_4__2" - // $ANTLR start "rule__CastExpression__Group_1__1__Impl" - // InternalSolverLanguageParser.g:5861:1: rule__CastExpression__Group_1__1__Impl : ( As ) ; - public final void rule__CastExpression__Group_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__AtomicExpression__Group_4__2__Impl" + // InternalSolverLanguageParser.g:7327:1: rule__AtomicExpression__Group_4__2__Impl : ( RightParenthesis ) ; + public final void rule__AtomicExpression__Group_4__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5865:1: ( ( As ) ) - // InternalSolverLanguageParser.g:5866:1: ( As ) + // InternalSolverLanguageParser.g:7331:1: ( ( RightParenthesis ) ) + // InternalSolverLanguageParser.g:7332:1: ( RightParenthesis ) { - // InternalSolverLanguageParser.g:5866:1: ( As ) - // InternalSolverLanguageParser.g:5867:2: As + // InternalSolverLanguageParser.g:7332:1: ( RightParenthesis ) + // InternalSolverLanguageParser.g:7333:2: RightParenthesis { - before(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); - match(input,As,FOLLOW_2); - after(grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); + before(grammarAccess.getAtomicExpressionAccess().getRightParenthesisKeyword_4_2()); + match(input,RightParenthesis,FOLLOW_2); + after(grammarAccess.getAtomicExpressionAccess().getRightParenthesisKeyword_4_2()); } @@ -18272,21 +22684,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group_1__1__Impl" + // $ANTLR end "rule__AtomicExpression__Group_4__2__Impl" - // $ANTLR start "rule__CastExpression__Group_1__2" - // InternalSolverLanguageParser.g:5876:1: rule__CastExpression__Group_1__2 : rule__CastExpression__Group_1__2__Impl ; - public final void rule__CastExpression__Group_1__2() throws RecognitionException { + // $ANTLR start "rule__Call__Group__0" + // InternalSolverLanguageParser.g:7343:1: rule__Call__Group__0 : rule__Call__Group__0__Impl rule__Call__Group__1 ; + public final void rule__Call__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5880:1: ( rule__CastExpression__Group_1__2__Impl ) - // InternalSolverLanguageParser.g:5881:2: rule__CastExpression__Group_1__2__Impl + // InternalSolverLanguageParser.g:7347:1: ( rule__Call__Group__0__Impl rule__Call__Group__1 ) + // InternalSolverLanguageParser.g:7348:2: rule__Call__Group__0__Impl rule__Call__Group__1 { + pushFollow(FOLLOW_16); + rule__Call__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__CastExpression__Group_1__2__Impl(); + rule__Call__Group__1(); state._fsp--; @@ -18305,35 +22722,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group_1__2" + // $ANTLR end "rule__Call__Group__0" - // $ANTLR start "rule__CastExpression__Group_1__2__Impl" - // InternalSolverLanguageParser.g:5887:1: rule__CastExpression__Group_1__2__Impl : ( ( rule__CastExpression__TypeAssignment_1_2 ) ) ; - public final void rule__CastExpression__Group_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Call__Group__0__Impl" + // InternalSolverLanguageParser.g:7355:1: rule__Call__Group__0__Impl : ( ( rule__Call__FunctorAssignment_0 ) ) ; + public final void rule__Call__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5891:1: ( ( ( rule__CastExpression__TypeAssignment_1_2 ) ) ) - // InternalSolverLanguageParser.g:5892:1: ( ( rule__CastExpression__TypeAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:7359:1: ( ( ( rule__Call__FunctorAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:7360:1: ( ( rule__Call__FunctorAssignment_0 ) ) { - // InternalSolverLanguageParser.g:5892:1: ( ( rule__CastExpression__TypeAssignment_1_2 ) ) - // InternalSolverLanguageParser.g:5893:2: ( rule__CastExpression__TypeAssignment_1_2 ) + // InternalSolverLanguageParser.g:7360:1: ( ( rule__Call__FunctorAssignment_0 ) ) + // InternalSolverLanguageParser.g:7361:2: ( rule__Call__FunctorAssignment_0 ) { - before(grammarAccess.getCastExpressionAccess().getTypeAssignment_1_2()); - // InternalSolverLanguageParser.g:5894:2: ( rule__CastExpression__TypeAssignment_1_2 ) - // InternalSolverLanguageParser.g:5894:3: rule__CastExpression__TypeAssignment_1_2 + before(grammarAccess.getCallAccess().getFunctorAssignment_0()); + // InternalSolverLanguageParser.g:7362:2: ( rule__Call__FunctorAssignment_0 ) + // InternalSolverLanguageParser.g:7362:3: rule__Call__FunctorAssignment_0 { pushFollow(FOLLOW_2); - rule__CastExpression__TypeAssignment_1_2(); + rule__Call__FunctorAssignment_0(); state._fsp--; } - after(grammarAccess.getCastExpressionAccess().getTypeAssignment_1_2()); + after(grammarAccess.getCallAccess().getFunctorAssignment_0()); } @@ -18352,26 +22769,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__Group_1__2__Impl" + // $ANTLR end "rule__Call__Group__0__Impl" - // $ANTLR start "rule__UnaryExpression__Group_1__0" - // InternalSolverLanguageParser.g:5903:1: rule__UnaryExpression__Group_1__0 : rule__UnaryExpression__Group_1__0__Impl rule__UnaryExpression__Group_1__1 ; - public final void rule__UnaryExpression__Group_1__0() throws RecognitionException { + // $ANTLR start "rule__Call__Group__1" + // InternalSolverLanguageParser.g:7370:1: rule__Call__Group__1 : rule__Call__Group__1__Impl ; + public final void rule__Call__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5907:1: ( rule__UnaryExpression__Group_1__0__Impl rule__UnaryExpression__Group_1__1 ) - // InternalSolverLanguageParser.g:5908:2: rule__UnaryExpression__Group_1__0__Impl rule__UnaryExpression__Group_1__1 + // InternalSolverLanguageParser.g:7374:1: ( rule__Call__Group__1__Impl ) + // InternalSolverLanguageParser.g:7375:2: rule__Call__Group__1__Impl { - pushFollow(FOLLOW_7); - rule__UnaryExpression__Group_1__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__UnaryExpression__Group_1__1(); + rule__Call__Group__1__Impl(); state._fsp--; @@ -18390,29 +22802,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnaryExpression__Group_1__0" + // $ANTLR end "rule__Call__Group__1" - // $ANTLR start "rule__UnaryExpression__Group_1__0__Impl" - // InternalSolverLanguageParser.g:5915:1: rule__UnaryExpression__Group_1__0__Impl : ( () ) ; - public final void rule__UnaryExpression__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Call__Group__1__Impl" + // InternalSolverLanguageParser.g:7381:1: rule__Call__Group__1__Impl : ( ( rule__Call__ArgumentListAssignment_1 ) ) ; + public final void rule__Call__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5919:1: ( ( () ) ) - // InternalSolverLanguageParser.g:5920:1: ( () ) + // InternalSolverLanguageParser.g:7385:1: ( ( ( rule__Call__ArgumentListAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:7386:1: ( ( rule__Call__ArgumentListAssignment_1 ) ) { - // InternalSolverLanguageParser.g:5920:1: ( () ) - // InternalSolverLanguageParser.g:5921:2: () + // InternalSolverLanguageParser.g:7386:1: ( ( rule__Call__ArgumentListAssignment_1 ) ) + // InternalSolverLanguageParser.g:7387:2: ( rule__Call__ArgumentListAssignment_1 ) { - before(grammarAccess.getUnaryExpressionAccess().getUnaryExpressionAction_1_0()); - // InternalSolverLanguageParser.g:5922:2: () - // InternalSolverLanguageParser.g:5922:3: + before(grammarAccess.getCallAccess().getArgumentListAssignment_1()); + // InternalSolverLanguageParser.g:7388:2: ( rule__Call__ArgumentListAssignment_1 ) + // InternalSolverLanguageParser.g:7388:3: rule__Call__ArgumentListAssignment_1 { + pushFollow(FOLLOW_2); + rule__Call__ArgumentListAssignment_1(); + + state._fsp--; + + } - after(grammarAccess.getUnaryExpressionAccess().getUnaryExpressionAction_1_0()); + after(grammarAccess.getCallAccess().getArgumentListAssignment_1()); } @@ -18420,6 +22838,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -18427,26 +22849,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnaryExpression__Group_1__0__Impl" + // $ANTLR end "rule__Call__Group__1__Impl" - // $ANTLR start "rule__UnaryExpression__Group_1__1" - // InternalSolverLanguageParser.g:5930:1: rule__UnaryExpression__Group_1__1 : rule__UnaryExpression__Group_1__1__Impl rule__UnaryExpression__Group_1__2 ; - public final void rule__UnaryExpression__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group__0" + // InternalSolverLanguageParser.g:7397:1: rule__ArgumentList__Group__0 : rule__ArgumentList__Group__0__Impl rule__ArgumentList__Group__1 ; + public final void rule__ArgumentList__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5934:1: ( rule__UnaryExpression__Group_1__1__Impl rule__UnaryExpression__Group_1__2 ) - // InternalSolverLanguageParser.g:5935:2: rule__UnaryExpression__Group_1__1__Impl rule__UnaryExpression__Group_1__2 + // InternalSolverLanguageParser.g:7401:1: ( rule__ArgumentList__Group__0__Impl rule__ArgumentList__Group__1 ) + // InternalSolverLanguageParser.g:7402:2: rule__ArgumentList__Group__0__Impl rule__ArgumentList__Group__1 { - pushFollow(FOLLOW_37); - rule__UnaryExpression__Group_1__1__Impl(); + pushFollow(FOLLOW_16); + rule__ArgumentList__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__UnaryExpression__Group_1__2(); + rule__ArgumentList__Group__1(); state._fsp--; @@ -18465,35 +22887,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnaryExpression__Group_1__1" + // $ANTLR end "rule__ArgumentList__Group__0" - // $ANTLR start "rule__UnaryExpression__Group_1__1__Impl" - // InternalSolverLanguageParser.g:5942:1: rule__UnaryExpression__Group_1__1__Impl : ( ( rule__UnaryExpression__OpAssignment_1_1 ) ) ; - public final void rule__UnaryExpression__Group_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group__0__Impl" + // InternalSolverLanguageParser.g:7409:1: rule__ArgumentList__Group__0__Impl : ( () ) ; + public final void rule__ArgumentList__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5946:1: ( ( ( rule__UnaryExpression__OpAssignment_1_1 ) ) ) - // InternalSolverLanguageParser.g:5947:1: ( ( rule__UnaryExpression__OpAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:7413:1: ( ( () ) ) + // InternalSolverLanguageParser.g:7414:1: ( () ) { - // InternalSolverLanguageParser.g:5947:1: ( ( rule__UnaryExpression__OpAssignment_1_1 ) ) - // InternalSolverLanguageParser.g:5948:2: ( rule__UnaryExpression__OpAssignment_1_1 ) + // InternalSolverLanguageParser.g:7414:1: ( () ) + // InternalSolverLanguageParser.g:7415:2: () { - before(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1()); - // InternalSolverLanguageParser.g:5949:2: ( rule__UnaryExpression__OpAssignment_1_1 ) - // InternalSolverLanguageParser.g:5949:3: rule__UnaryExpression__OpAssignment_1_1 + before(grammarAccess.getArgumentListAccess().getArgumentListAction_0()); + // InternalSolverLanguageParser.g:7416:2: () + // InternalSolverLanguageParser.g:7416:3: { - pushFollow(FOLLOW_2); - rule__UnaryExpression__OpAssignment_1_1(); - - state._fsp--; - - } - after(grammarAccess.getUnaryExpressionAccess().getOpAssignment_1_1()); + after(grammarAccess.getArgumentListAccess().getArgumentListAction_0()); } @@ -18501,10 +22917,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -18512,21 +22924,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnaryExpression__Group_1__1__Impl" + // $ANTLR end "rule__ArgumentList__Group__0__Impl" - // $ANTLR start "rule__UnaryExpression__Group_1__2" - // InternalSolverLanguageParser.g:5957:1: rule__UnaryExpression__Group_1__2 : rule__UnaryExpression__Group_1__2__Impl ; - public final void rule__UnaryExpression__Group_1__2() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group__1" + // InternalSolverLanguageParser.g:7424:1: rule__ArgumentList__Group__1 : rule__ArgumentList__Group__1__Impl rule__ArgumentList__Group__2 ; + public final void rule__ArgumentList__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5961:1: ( rule__UnaryExpression__Group_1__2__Impl ) - // InternalSolverLanguageParser.g:5962:2: rule__UnaryExpression__Group_1__2__Impl + // InternalSolverLanguageParser.g:7428:1: ( rule__ArgumentList__Group__1__Impl rule__ArgumentList__Group__2 ) + // InternalSolverLanguageParser.g:7429:2: rule__ArgumentList__Group__1__Impl rule__ArgumentList__Group__2 { + pushFollow(FOLLOW_45); + rule__ArgumentList__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__UnaryExpression__Group_1__2__Impl(); + rule__ArgumentList__Group__2(); state._fsp--; @@ -18545,35 +22962,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnaryExpression__Group_1__2" + // $ANTLR end "rule__ArgumentList__Group__1" - // $ANTLR start "rule__UnaryExpression__Group_1__2__Impl" - // InternalSolverLanguageParser.g:5968:1: rule__UnaryExpression__Group_1__2__Impl : ( ( rule__UnaryExpression__BodyAssignment_1_2 ) ) ; - public final void rule__UnaryExpression__Group_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group__1__Impl" + // InternalSolverLanguageParser.g:7436:1: rule__ArgumentList__Group__1__Impl : ( LeftParenthesis ) ; + public final void rule__ArgumentList__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5972:1: ( ( ( rule__UnaryExpression__BodyAssignment_1_2 ) ) ) - // InternalSolverLanguageParser.g:5973:1: ( ( rule__UnaryExpression__BodyAssignment_1_2 ) ) + // InternalSolverLanguageParser.g:7440:1: ( ( LeftParenthesis ) ) + // InternalSolverLanguageParser.g:7441:1: ( LeftParenthesis ) { - // InternalSolverLanguageParser.g:5973:1: ( ( rule__UnaryExpression__BodyAssignment_1_2 ) ) - // InternalSolverLanguageParser.g:5974:2: ( rule__UnaryExpression__BodyAssignment_1_2 ) + // InternalSolverLanguageParser.g:7441:1: ( LeftParenthesis ) + // InternalSolverLanguageParser.g:7442:2: LeftParenthesis { - before(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2()); - // InternalSolverLanguageParser.g:5975:2: ( rule__UnaryExpression__BodyAssignment_1_2 ) - // InternalSolverLanguageParser.g:5975:3: rule__UnaryExpression__BodyAssignment_1_2 - { - pushFollow(FOLLOW_2); - rule__UnaryExpression__BodyAssignment_1_2(); - - state._fsp--; - - - } - - after(grammarAccess.getUnaryExpressionAccess().getBodyAssignment_1_2()); + before(grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); + match(input,LeftParenthesis,FOLLOW_2); + after(grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); } @@ -18592,26 +22999,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnaryExpression__Group_1__2__Impl" + // $ANTLR end "rule__ArgumentList__Group__1__Impl" - // $ANTLR start "rule__LocalVariables__Group__0" - // InternalSolverLanguageParser.g:5984:1: rule__LocalVariables__Group__0 : rule__LocalVariables__Group__0__Impl rule__LocalVariables__Group__1 ; - public final void rule__LocalVariables__Group__0() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group__2" + // InternalSolverLanguageParser.g:7451:1: rule__ArgumentList__Group__2 : rule__ArgumentList__Group__2__Impl rule__ArgumentList__Group__3 ; + public final void rule__ArgumentList__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:5988:1: ( rule__LocalVariables__Group__0__Impl rule__LocalVariables__Group__1 ) - // InternalSolverLanguageParser.g:5989:2: rule__LocalVariables__Group__0__Impl rule__LocalVariables__Group__1 + // InternalSolverLanguageParser.g:7455:1: ( rule__ArgumentList__Group__2__Impl rule__ArgumentList__Group__3 ) + // InternalSolverLanguageParser.g:7456:2: rule__ArgumentList__Group__2__Impl rule__ArgumentList__Group__3 { - pushFollow(FOLLOW_38); - rule__LocalVariables__Group__0__Impl(); + pushFollow(FOLLOW_45); + rule__ArgumentList__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LocalVariables__Group__1(); + rule__ArgumentList__Group__3(); state._fsp--; @@ -18630,29 +23037,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group__0" + // $ANTLR end "rule__ArgumentList__Group__2" - // $ANTLR start "rule__LocalVariables__Group__0__Impl" - // InternalSolverLanguageParser.g:5996:1: rule__LocalVariables__Group__0__Impl : ( () ) ; - public final void rule__LocalVariables__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group__2__Impl" + // InternalSolverLanguageParser.g:7463:1: rule__ArgumentList__Group__2__Impl : ( ( rule__ArgumentList__Group_2__0 )? ) ; + public final void rule__ArgumentList__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6000:1: ( ( () ) ) - // InternalSolverLanguageParser.g:6001:1: ( () ) + // InternalSolverLanguageParser.g:7467:1: ( ( ( rule__ArgumentList__Group_2__0 )? ) ) + // InternalSolverLanguageParser.g:7468:1: ( ( rule__ArgumentList__Group_2__0 )? ) { - // InternalSolverLanguageParser.g:6001:1: ( () ) - // InternalSolverLanguageParser.g:6002:2: () - { - before(grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0()); - // InternalSolverLanguageParser.g:6003:2: () - // InternalSolverLanguageParser.g:6003:3: + // InternalSolverLanguageParser.g:7468:1: ( ( rule__ArgumentList__Group_2__0 )? ) + // InternalSolverLanguageParser.g:7469:2: ( rule__ArgumentList__Group_2__0 )? { + before(grammarAccess.getArgumentListAccess().getGroup_2()); + // InternalSolverLanguageParser.g:7470:2: ( rule__ArgumentList__Group_2__0 )? + int alt51=2; + int LA51_0 = input.LA(1); + + if ( (LA51_0==Unknown||LA51_0==Object||(LA51_0>=Count && LA51_0<=False)||LA51_0==True||LA51_0==Inf||(LA51_0>=ExclamationMark && LA51_0<=LeftParenthesis)||(LA51_0>=Asterisk && LA51_0<=PlusSign)||LA51_0==HyphenMinus||(LA51_0>=QuestionMark && LA51_0<=LeftSquareBracket)||(LA51_0>=Tilde && LA51_0<=RULE_QUOTED_ID)||(LA51_0>=RULE_ID && LA51_0<=RULE_INT)) ) { + alt51=1; + } + switch (alt51) { + case 1 : + // InternalSolverLanguageParser.g:7470:3: rule__ArgumentList__Group_2__0 + { + pushFollow(FOLLOW_2); + rule__ArgumentList__Group_2__0(); + + state._fsp--; + + + } + break; + } - after(grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0()); + after(grammarAccess.getArgumentListAccess().getGroup_2()); } @@ -18660,6 +23084,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -18667,26 +23095,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group__0__Impl" + // $ANTLR end "rule__ArgumentList__Group__2__Impl" - // $ANTLR start "rule__LocalVariables__Group__1" - // InternalSolverLanguageParser.g:6011:1: rule__LocalVariables__Group__1 : rule__LocalVariables__Group__1__Impl rule__LocalVariables__Group__2 ; - public final void rule__LocalVariables__Group__1() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group__3" + // InternalSolverLanguageParser.g:7478:1: rule__ArgumentList__Group__3 : rule__ArgumentList__Group__3__Impl ; + public final void rule__ArgumentList__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6015:1: ( rule__LocalVariables__Group__1__Impl rule__LocalVariables__Group__2 ) - // InternalSolverLanguageParser.g:6016:2: rule__LocalVariables__Group__1__Impl rule__LocalVariables__Group__2 + // InternalSolverLanguageParser.g:7482:1: ( rule__ArgumentList__Group__3__Impl ) + // InternalSolverLanguageParser.g:7483:2: rule__ArgumentList__Group__3__Impl { - pushFollow(FOLLOW_39); - rule__LocalVariables__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__LocalVariables__Group__2(); + rule__ArgumentList__Group__3__Impl(); state._fsp--; @@ -18705,25 +23128,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group__1" + // $ANTLR end "rule__ArgumentList__Group__3" - // $ANTLR start "rule__LocalVariables__Group__1__Impl" - // InternalSolverLanguageParser.g:6023:1: rule__LocalVariables__Group__1__Impl : ( LeftSquareBracket ) ; - public final void rule__LocalVariables__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group__3__Impl" + // InternalSolverLanguageParser.g:7489:1: rule__ArgumentList__Group__3__Impl : ( RightParenthesis ) ; + public final void rule__ArgumentList__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6027:1: ( ( LeftSquareBracket ) ) - // InternalSolverLanguageParser.g:6028:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:7493:1: ( ( RightParenthesis ) ) + // InternalSolverLanguageParser.g:7494:1: ( RightParenthesis ) { - // InternalSolverLanguageParser.g:6028:1: ( LeftSquareBracket ) - // InternalSolverLanguageParser.g:6029:2: LeftSquareBracket + // InternalSolverLanguageParser.g:7494:1: ( RightParenthesis ) + // InternalSolverLanguageParser.g:7495:2: RightParenthesis { - before(grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1()); - match(input,LeftSquareBracket,FOLLOW_2); - after(grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1()); + before(grammarAccess.getArgumentListAccess().getRightParenthesisKeyword_3()); + match(input,RightParenthesis,FOLLOW_2); + after(grammarAccess.getArgumentListAccess().getRightParenthesisKeyword_3()); } @@ -18742,26 +23165,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group__1__Impl" + // $ANTLR end "rule__ArgumentList__Group__3__Impl" - // $ANTLR start "rule__LocalVariables__Group__2" - // InternalSolverLanguageParser.g:6038:1: rule__LocalVariables__Group__2 : rule__LocalVariables__Group__2__Impl rule__LocalVariables__Group__3 ; - public final void rule__LocalVariables__Group__2() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group_2__0" + // InternalSolverLanguageParser.g:7505:1: rule__ArgumentList__Group_2__0 : rule__ArgumentList__Group_2__0__Impl rule__ArgumentList__Group_2__1 ; + public final void rule__ArgumentList__Group_2__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6042:1: ( rule__LocalVariables__Group__2__Impl rule__LocalVariables__Group__3 ) - // InternalSolverLanguageParser.g:6043:2: rule__LocalVariables__Group__2__Impl rule__LocalVariables__Group__3 + // InternalSolverLanguageParser.g:7509:1: ( rule__ArgumentList__Group_2__0__Impl rule__ArgumentList__Group_2__1 ) + // InternalSolverLanguageParser.g:7510:2: rule__ArgumentList__Group_2__0__Impl rule__ArgumentList__Group_2__1 { - pushFollow(FOLLOW_39); - rule__LocalVariables__Group__2__Impl(); + pushFollow(FOLLOW_35); + rule__ArgumentList__Group_2__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LocalVariables__Group__3(); + rule__ArgumentList__Group_2__1(); state._fsp--; @@ -18780,46 +23203,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group__2" + // $ANTLR end "rule__ArgumentList__Group_2__0" - // $ANTLR start "rule__LocalVariables__Group__2__Impl" - // InternalSolverLanguageParser.g:6050:1: rule__LocalVariables__Group__2__Impl : ( ( rule__LocalVariables__Group_2__0 )? ) ; - public final void rule__LocalVariables__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group_2__0__Impl" + // InternalSolverLanguageParser.g:7517:1: rule__ArgumentList__Group_2__0__Impl : ( ( rule__ArgumentList__ArgumentsAssignment_2_0 ) ) ; + public final void rule__ArgumentList__Group_2__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6054:1: ( ( ( rule__LocalVariables__Group_2__0 )? ) ) - // InternalSolverLanguageParser.g:6055:1: ( ( rule__LocalVariables__Group_2__0 )? ) + // InternalSolverLanguageParser.g:7521:1: ( ( ( rule__ArgumentList__ArgumentsAssignment_2_0 ) ) ) + // InternalSolverLanguageParser.g:7522:1: ( ( rule__ArgumentList__ArgumentsAssignment_2_0 ) ) { - // InternalSolverLanguageParser.g:6055:1: ( ( rule__LocalVariables__Group_2__0 )? ) - // InternalSolverLanguageParser.g:6056:2: ( rule__LocalVariables__Group_2__0 )? + // InternalSolverLanguageParser.g:7522:1: ( ( rule__ArgumentList__ArgumentsAssignment_2_0 ) ) + // InternalSolverLanguageParser.g:7523:2: ( rule__ArgumentList__ArgumentsAssignment_2_0 ) { - before(grammarAccess.getLocalVariablesAccess().getGroup_2()); - // InternalSolverLanguageParser.g:6057:2: ( rule__LocalVariables__Group_2__0 )? - int alt43=2; - int LA43_0 = input.LA(1); - - if ( (LA43_0==RULE_QUOTED_ID||LA43_0==RULE_ID) ) { - alt43=1; - } - switch (alt43) { - case 1 : - // InternalSolverLanguageParser.g:6057:3: rule__LocalVariables__Group_2__0 - { - pushFollow(FOLLOW_2); - rule__LocalVariables__Group_2__0(); - - state._fsp--; + before(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0()); + // InternalSolverLanguageParser.g:7524:2: ( rule__ArgumentList__ArgumentsAssignment_2_0 ) + // InternalSolverLanguageParser.g:7524:3: rule__ArgumentList__ArgumentsAssignment_2_0 + { + pushFollow(FOLLOW_2); + rule__ArgumentList__ArgumentsAssignment_2_0(); + state._fsp--; - } - break; } - after(grammarAccess.getLocalVariablesAccess().getGroup_2()); + after(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0()); } @@ -18838,21 +23250,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group__2__Impl" + // $ANTLR end "rule__ArgumentList__Group_2__0__Impl" - // $ANTLR start "rule__LocalVariables__Group__3" - // InternalSolverLanguageParser.g:6065:1: rule__LocalVariables__Group__3 : rule__LocalVariables__Group__3__Impl ; - public final void rule__LocalVariables__Group__3() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group_2__1" + // InternalSolverLanguageParser.g:7532:1: rule__ArgumentList__Group_2__1 : rule__ArgumentList__Group_2__1__Impl ; + public final void rule__ArgumentList__Group_2__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6069:1: ( rule__LocalVariables__Group__3__Impl ) - // InternalSolverLanguageParser.g:6070:2: rule__LocalVariables__Group__3__Impl + // InternalSolverLanguageParser.g:7536:1: ( rule__ArgumentList__Group_2__1__Impl ) + // InternalSolverLanguageParser.g:7537:2: rule__ArgumentList__Group_2__1__Impl { pushFollow(FOLLOW_2); - rule__LocalVariables__Group__3__Impl(); + rule__ArgumentList__Group_2__1__Impl(); state._fsp--; @@ -18871,25 +23283,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group__3" + // $ANTLR end "rule__ArgumentList__Group_2__1" - // $ANTLR start "rule__LocalVariables__Group__3__Impl" - // InternalSolverLanguageParser.g:6076:1: rule__LocalVariables__Group__3__Impl : ( RightSquareBracket ) ; - public final void rule__LocalVariables__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group_2__1__Impl" + // InternalSolverLanguageParser.g:7543:1: rule__ArgumentList__Group_2__1__Impl : ( ( rule__ArgumentList__Group_2_1__0 )* ) ; + public final void rule__ArgumentList__Group_2__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6080:1: ( ( RightSquareBracket ) ) - // InternalSolverLanguageParser.g:6081:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:7547:1: ( ( ( rule__ArgumentList__Group_2_1__0 )* ) ) + // InternalSolverLanguageParser.g:7548:1: ( ( rule__ArgumentList__Group_2_1__0 )* ) { - // InternalSolverLanguageParser.g:6081:1: ( RightSquareBracket ) - // InternalSolverLanguageParser.g:6082:2: RightSquareBracket + // InternalSolverLanguageParser.g:7548:1: ( ( rule__ArgumentList__Group_2_1__0 )* ) + // InternalSolverLanguageParser.g:7549:2: ( rule__ArgumentList__Group_2_1__0 )* { - before(grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3()); - match(input,RightSquareBracket,FOLLOW_2); - after(grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3()); + before(grammarAccess.getArgumentListAccess().getGroup_2_1()); + // InternalSolverLanguageParser.g:7550:2: ( rule__ArgumentList__Group_2_1__0 )* + loop52: + do { + int alt52=2; + int LA52_0 = input.LA(1); + + if ( (LA52_0==Comma) ) { + alt52=1; + } + + + switch (alt52) { + case 1 : + // InternalSolverLanguageParser.g:7550:3: rule__ArgumentList__Group_2_1__0 + { + pushFollow(FOLLOW_29); + rule__ArgumentList__Group_2_1__0(); + + state._fsp--; + + + } + break; + + default : + break loop52; + } + } while (true); + + after(grammarAccess.getArgumentListAccess().getGroup_2_1()); } @@ -18908,26 +23348,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group__3__Impl" + // $ANTLR end "rule__ArgumentList__Group_2__1__Impl" - // $ANTLR start "rule__LocalVariables__Group_2__0" - // InternalSolverLanguageParser.g:6092:1: rule__LocalVariables__Group_2__0 : rule__LocalVariables__Group_2__0__Impl rule__LocalVariables__Group_2__1 ; - public final void rule__LocalVariables__Group_2__0() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group_2_1__0" + // InternalSolverLanguageParser.g:7559:1: rule__ArgumentList__Group_2_1__0 : rule__ArgumentList__Group_2_1__0__Impl rule__ArgumentList__Group_2_1__1 ; + public final void rule__ArgumentList__Group_2_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6096:1: ( rule__LocalVariables__Group_2__0__Impl rule__LocalVariables__Group_2__1 ) - // InternalSolverLanguageParser.g:6097:2: rule__LocalVariables__Group_2__0__Impl rule__LocalVariables__Group_2__1 + // InternalSolverLanguageParser.g:7563:1: ( rule__ArgumentList__Group_2_1__0__Impl rule__ArgumentList__Group_2_1__1 ) + // InternalSolverLanguageParser.g:7564:2: rule__ArgumentList__Group_2_1__0__Impl rule__ArgumentList__Group_2_1__1 { - pushFollow(FOLLOW_19); - rule__LocalVariables__Group_2__0__Impl(); + pushFollow(FOLLOW_46); + rule__ArgumentList__Group_2_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LocalVariables__Group_2__1(); + rule__ArgumentList__Group_2_1__1(); state._fsp--; @@ -18946,35 +23386,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group_2__0" + // $ANTLR end "rule__ArgumentList__Group_2_1__0" - // $ANTLR start "rule__LocalVariables__Group_2__0__Impl" - // InternalSolverLanguageParser.g:6104:1: rule__LocalVariables__Group_2__0__Impl : ( ( rule__LocalVariables__VariablesAssignment_2_0 ) ) ; - public final void rule__LocalVariables__Group_2__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group_2_1__0__Impl" + // InternalSolverLanguageParser.g:7571:1: rule__ArgumentList__Group_2_1__0__Impl : ( Comma ) ; + public final void rule__ArgumentList__Group_2_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6108:1: ( ( ( rule__LocalVariables__VariablesAssignment_2_0 ) ) ) - // InternalSolverLanguageParser.g:6109:1: ( ( rule__LocalVariables__VariablesAssignment_2_0 ) ) - { - // InternalSolverLanguageParser.g:6109:1: ( ( rule__LocalVariables__VariablesAssignment_2_0 ) ) - // InternalSolverLanguageParser.g:6110:2: ( rule__LocalVariables__VariablesAssignment_2_0 ) + // InternalSolverLanguageParser.g:7575:1: ( ( Comma ) ) + // InternalSolverLanguageParser.g:7576:1: ( Comma ) { - before(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_0()); - // InternalSolverLanguageParser.g:6111:2: ( rule__LocalVariables__VariablesAssignment_2_0 ) - // InternalSolverLanguageParser.g:6111:3: rule__LocalVariables__VariablesAssignment_2_0 + // InternalSolverLanguageParser.g:7576:1: ( Comma ) + // InternalSolverLanguageParser.g:7577:2: Comma { - pushFollow(FOLLOW_2); - rule__LocalVariables__VariablesAssignment_2_0(); - - state._fsp--; - - - } - - after(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_0()); + before(grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); + match(input,Comma,FOLLOW_2); + after(grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); } @@ -18993,21 +23423,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group_2__0__Impl" + // $ANTLR end "rule__ArgumentList__Group_2_1__0__Impl" - // $ANTLR start "rule__LocalVariables__Group_2__1" - // InternalSolverLanguageParser.g:6119:1: rule__LocalVariables__Group_2__1 : rule__LocalVariables__Group_2__1__Impl ; - public final void rule__LocalVariables__Group_2__1() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group_2_1__1" + // InternalSolverLanguageParser.g:7586:1: rule__ArgumentList__Group_2_1__1 : rule__ArgumentList__Group_2_1__1__Impl ; + public final void rule__ArgumentList__Group_2_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6123:1: ( rule__LocalVariables__Group_2__1__Impl ) - // InternalSolverLanguageParser.g:6124:2: rule__LocalVariables__Group_2__1__Impl + // InternalSolverLanguageParser.g:7590:1: ( rule__ArgumentList__Group_2_1__1__Impl ) + // InternalSolverLanguageParser.g:7591:2: rule__ArgumentList__Group_2_1__1__Impl { pushFollow(FOLLOW_2); - rule__LocalVariables__Group_2__1__Impl(); + rule__ArgumentList__Group_2_1__1__Impl(); state._fsp--; @@ -19026,53 +23456,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group_2__1" + // $ANTLR end "rule__ArgumentList__Group_2_1__1" - // $ANTLR start "rule__LocalVariables__Group_2__1__Impl" - // InternalSolverLanguageParser.g:6130:1: rule__LocalVariables__Group_2__1__Impl : ( ( rule__LocalVariables__Group_2_1__0 )* ) ; - public final void rule__LocalVariables__Group_2__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ArgumentList__Group_2_1__1__Impl" + // InternalSolverLanguageParser.g:7597:1: rule__ArgumentList__Group_2_1__1__Impl : ( ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) ) ; + public final void rule__ArgumentList__Group_2_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6134:1: ( ( ( rule__LocalVariables__Group_2_1__0 )* ) ) - // InternalSolverLanguageParser.g:6135:1: ( ( rule__LocalVariables__Group_2_1__0 )* ) + // InternalSolverLanguageParser.g:7601:1: ( ( ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) ) ) + // InternalSolverLanguageParser.g:7602:1: ( ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) ) { - // InternalSolverLanguageParser.g:6135:1: ( ( rule__LocalVariables__Group_2_1__0 )* ) - // InternalSolverLanguageParser.g:6136:2: ( rule__LocalVariables__Group_2_1__0 )* + // InternalSolverLanguageParser.g:7602:1: ( ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) ) + // InternalSolverLanguageParser.g:7603:2: ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) { - before(grammarAccess.getLocalVariablesAccess().getGroup_2_1()); - // InternalSolverLanguageParser.g:6137:2: ( rule__LocalVariables__Group_2_1__0 )* - loop44: - do { - int alt44=2; - int LA44_0 = input.LA(1); - - if ( (LA44_0==Comma) ) { - alt44=1; - } - - - switch (alt44) { - case 1 : - // InternalSolverLanguageParser.g:6137:3: rule__LocalVariables__Group_2_1__0 - { - pushFollow(FOLLOW_20); - rule__LocalVariables__Group_2_1__0(); - - state._fsp--; + before(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1()); + // InternalSolverLanguageParser.g:7604:2: ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) + // InternalSolverLanguageParser.g:7604:3: rule__ArgumentList__ArgumentsAssignment_2_1_1 + { + pushFollow(FOLLOW_2); + rule__ArgumentList__ArgumentsAssignment_2_1_1(); + state._fsp--; - } - break; - default : - break loop44; - } - } while (true); + } - after(grammarAccess.getLocalVariablesAccess().getGroup_2_1()); + after(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1()); } @@ -19091,26 +23503,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group_2__1__Impl" + // $ANTLR end "rule__ArgumentList__Group_2_1__1__Impl" - // $ANTLR start "rule__LocalVariables__Group_2_1__0" - // InternalSolverLanguageParser.g:6146:1: rule__LocalVariables__Group_2_1__0 : rule__LocalVariables__Group_2_1__0__Impl rule__LocalVariables__Group_2_1__1 ; - public final void rule__LocalVariables__Group_2_1__0() throws RecognitionException { + // $ANTLR start "rule__StarArgument__Group__0" + // InternalSolverLanguageParser.g:7613:1: rule__StarArgument__Group__0 : rule__StarArgument__Group__0__Impl rule__StarArgument__Group__1 ; + public final void rule__StarArgument__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6150:1: ( rule__LocalVariables__Group_2_1__0__Impl rule__LocalVariables__Group_2_1__1 ) - // InternalSolverLanguageParser.g:6151:2: rule__LocalVariables__Group_2_1__0__Impl rule__LocalVariables__Group_2_1__1 + // InternalSolverLanguageParser.g:7617:1: ( rule__StarArgument__Group__0__Impl rule__StarArgument__Group__1 ) + // InternalSolverLanguageParser.g:7618:2: rule__StarArgument__Group__0__Impl rule__StarArgument__Group__1 { - pushFollow(FOLLOW_9); - rule__LocalVariables__Group_2_1__0__Impl(); + pushFollow(FOLLOW_47); + rule__StarArgument__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LocalVariables__Group_2_1__1(); + rule__StarArgument__Group__1(); state._fsp--; @@ -19129,25 +23541,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group_2_1__0" + // $ANTLR end "rule__StarArgument__Group__0" - // $ANTLR start "rule__LocalVariables__Group_2_1__0__Impl" - // InternalSolverLanguageParser.g:6158:1: rule__LocalVariables__Group_2_1__0__Impl : ( Comma ) ; - public final void rule__LocalVariables__Group_2_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__StarArgument__Group__0__Impl" + // InternalSolverLanguageParser.g:7625:1: rule__StarArgument__Group__0__Impl : ( () ) ; + public final void rule__StarArgument__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6162:1: ( ( Comma ) ) - // InternalSolverLanguageParser.g:6163:1: ( Comma ) + // InternalSolverLanguageParser.g:7629:1: ( ( () ) ) + // InternalSolverLanguageParser.g:7630:1: ( () ) { - // InternalSolverLanguageParser.g:6163:1: ( Comma ) - // InternalSolverLanguageParser.g:6164:2: Comma + // InternalSolverLanguageParser.g:7630:1: ( () ) + // InternalSolverLanguageParser.g:7631:2: () { - before(grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0()); - match(input,Comma,FOLLOW_2); - after(grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0()); + before(grammarAccess.getStarArgumentAccess().getStarArgumentAction_0()); + // InternalSolverLanguageParser.g:7632:2: () + // InternalSolverLanguageParser.g:7632:3: + { + } + + after(grammarAccess.getStarArgumentAccess().getStarArgumentAction_0()); } @@ -19155,10 +23571,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -19166,21 +23578,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group_2_1__0__Impl" + // $ANTLR end "rule__StarArgument__Group__0__Impl" - // $ANTLR start "rule__LocalVariables__Group_2_1__1" - // InternalSolverLanguageParser.g:6173:1: rule__LocalVariables__Group_2_1__1 : rule__LocalVariables__Group_2_1__1__Impl ; - public final void rule__LocalVariables__Group_2_1__1() throws RecognitionException { + // $ANTLR start "rule__StarArgument__Group__1" + // InternalSolverLanguageParser.g:7640:1: rule__StarArgument__Group__1 : rule__StarArgument__Group__1__Impl ; + public final void rule__StarArgument__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6177:1: ( rule__LocalVariables__Group_2_1__1__Impl ) - // InternalSolverLanguageParser.g:6178:2: rule__LocalVariables__Group_2_1__1__Impl + // InternalSolverLanguageParser.g:7644:1: ( rule__StarArgument__Group__1__Impl ) + // InternalSolverLanguageParser.g:7645:2: rule__StarArgument__Group__1__Impl { pushFollow(FOLLOW_2); - rule__LocalVariables__Group_2_1__1__Impl(); + rule__StarArgument__Group__1__Impl(); state._fsp--; @@ -19199,35 +23611,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group_2_1__1" + // $ANTLR end "rule__StarArgument__Group__1" - // $ANTLR start "rule__LocalVariables__Group_2_1__1__Impl" - // InternalSolverLanguageParser.g:6184:1: rule__LocalVariables__Group_2_1__1__Impl : ( ( rule__LocalVariables__VariablesAssignment_2_1_1 ) ) ; - public final void rule__LocalVariables__Group_2_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__StarArgument__Group__1__Impl" + // InternalSolverLanguageParser.g:7651:1: rule__StarArgument__Group__1__Impl : ( Asterisk ) ; + public final void rule__StarArgument__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6188:1: ( ( ( rule__LocalVariables__VariablesAssignment_2_1_1 ) ) ) - // InternalSolverLanguageParser.g:6189:1: ( ( rule__LocalVariables__VariablesAssignment_2_1_1 ) ) - { - // InternalSolverLanguageParser.g:6189:1: ( ( rule__LocalVariables__VariablesAssignment_2_1_1 ) ) - // InternalSolverLanguageParser.g:6190:2: ( rule__LocalVariables__VariablesAssignment_2_1_1 ) + // InternalSolverLanguageParser.g:7655:1: ( ( Asterisk ) ) + // InternalSolverLanguageParser.g:7656:1: ( Asterisk ) { - before(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_1_1()); - // InternalSolverLanguageParser.g:6191:2: ( rule__LocalVariables__VariablesAssignment_2_1_1 ) - // InternalSolverLanguageParser.g:6191:3: rule__LocalVariables__VariablesAssignment_2_1_1 + // InternalSolverLanguageParser.g:7656:1: ( Asterisk ) + // InternalSolverLanguageParser.g:7657:2: Asterisk { - pushFollow(FOLLOW_2); - rule__LocalVariables__VariablesAssignment_2_1_1(); - - state._fsp--; - - - } - - after(grammarAccess.getLocalVariablesAccess().getVariablesAssignment_2_1_1()); + before(grammarAccess.getStarArgumentAccess().getAsteriskKeyword_1()); + match(input,Asterisk,FOLLOW_2); + after(grammarAccess.getStarArgumentAccess().getAsteriskKeyword_1()); } @@ -19246,26 +23648,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__Group_2_1__1__Impl" + // $ANTLR end "rule__StarArgument__Group__1__Impl" - // $ANTLR start "rule__QuantifiedExpression__Group__0" - // InternalSolverLanguageParser.g:6200:1: rule__QuantifiedExpression__Group__0 : rule__QuantifiedExpression__Group__0__Impl rule__QuantifiedExpression__Group__1 ; - public final void rule__QuantifiedExpression__Group__0() throws RecognitionException { + // $ANTLR start "rule__TypedVariableArgument__Group__0" + // InternalSolverLanguageParser.g:7667:1: rule__TypedVariableArgument__Group__0 : rule__TypedVariableArgument__Group__0__Impl rule__TypedVariableArgument__Group__1 ; + public final void rule__TypedVariableArgument__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6204:1: ( rule__QuantifiedExpression__Group__0__Impl rule__QuantifiedExpression__Group__1 ) - // InternalSolverLanguageParser.g:6205:2: rule__QuantifiedExpression__Group__0__Impl rule__QuantifiedExpression__Group__1 + // InternalSolverLanguageParser.g:7671:1: ( rule__TypedVariableArgument__Group__0__Impl rule__TypedVariableArgument__Group__1 ) + // InternalSolverLanguageParser.g:7672:2: rule__TypedVariableArgument__Group__0__Impl rule__TypedVariableArgument__Group__1 { - pushFollow(FOLLOW_40); - rule__QuantifiedExpression__Group__0__Impl(); + pushFollow(FOLLOW_48); + rule__TypedVariableArgument__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__QuantifiedExpression__Group__1(); + rule__TypedVariableArgument__Group__1(); state._fsp--; @@ -19284,35 +23686,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__0" + // $ANTLR end "rule__TypedVariableArgument__Group__0" - // $ANTLR start "rule__QuantifiedExpression__Group__0__Impl" - // InternalSolverLanguageParser.g:6212:1: rule__QuantifiedExpression__Group__0__Impl : ( ( rule__QuantifiedExpression__QuantifierAssignment_0 ) ) ; - public final void rule__QuantifiedExpression__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__TypedVariableArgument__Group__0__Impl" + // InternalSolverLanguageParser.g:7679:1: rule__TypedVariableArgument__Group__0__Impl : ( ( rule__TypedVariableArgument__TypeReferenceAssignment_0 ) ) ; + public final void rule__TypedVariableArgument__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6216:1: ( ( ( rule__QuantifiedExpression__QuantifierAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:6217:1: ( ( rule__QuantifiedExpression__QuantifierAssignment_0 ) ) + // InternalSolverLanguageParser.g:7683:1: ( ( ( rule__TypedVariableArgument__TypeReferenceAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:7684:1: ( ( rule__TypedVariableArgument__TypeReferenceAssignment_0 ) ) { - // InternalSolverLanguageParser.g:6217:1: ( ( rule__QuantifiedExpression__QuantifierAssignment_0 ) ) - // InternalSolverLanguageParser.g:6218:2: ( rule__QuantifiedExpression__QuantifierAssignment_0 ) + // InternalSolverLanguageParser.g:7684:1: ( ( rule__TypedVariableArgument__TypeReferenceAssignment_0 ) ) + // InternalSolverLanguageParser.g:7685:2: ( rule__TypedVariableArgument__TypeReferenceAssignment_0 ) { - before(grammarAccess.getQuantifiedExpressionAccess().getQuantifierAssignment_0()); - // InternalSolverLanguageParser.g:6219:2: ( rule__QuantifiedExpression__QuantifierAssignment_0 ) - // InternalSolverLanguageParser.g:6219:3: rule__QuantifiedExpression__QuantifierAssignment_0 + before(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceAssignment_0()); + // InternalSolverLanguageParser.g:7686:2: ( rule__TypedVariableArgument__TypeReferenceAssignment_0 ) + // InternalSolverLanguageParser.g:7686:3: rule__TypedVariableArgument__TypeReferenceAssignment_0 { pushFollow(FOLLOW_2); - rule__QuantifiedExpression__QuantifierAssignment_0(); + rule__TypedVariableArgument__TypeReferenceAssignment_0(); state._fsp--; } - after(grammarAccess.getQuantifiedExpressionAccess().getQuantifierAssignment_0()); + after(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceAssignment_0()); } @@ -19331,26 +23733,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__0__Impl" + // $ANTLR end "rule__TypedVariableArgument__Group__0__Impl" - // $ANTLR start "rule__QuantifiedExpression__Group__1" - // InternalSolverLanguageParser.g:6227:1: rule__QuantifiedExpression__Group__1 : rule__QuantifiedExpression__Group__1__Impl rule__QuantifiedExpression__Group__2 ; - public final void rule__QuantifiedExpression__Group__1() throws RecognitionException { + // $ANTLR start "rule__TypedVariableArgument__Group__1" + // InternalSolverLanguageParser.g:7694:1: rule__TypedVariableArgument__Group__1 : rule__TypedVariableArgument__Group__1__Impl ; + public final void rule__TypedVariableArgument__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6231:1: ( rule__QuantifiedExpression__Group__1__Impl rule__QuantifiedExpression__Group__2 ) - // InternalSolverLanguageParser.g:6232:2: rule__QuantifiedExpression__Group__1__Impl rule__QuantifiedExpression__Group__2 + // InternalSolverLanguageParser.g:7698:1: ( rule__TypedVariableArgument__Group__1__Impl ) + // InternalSolverLanguageParser.g:7699:2: rule__TypedVariableArgument__Group__1__Impl { - pushFollow(FOLLOW_40); - rule__QuantifiedExpression__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__QuantifiedExpression__Group__2(); + rule__TypedVariableArgument__Group__1__Impl(); state._fsp--; @@ -19369,46 +23766,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__1" + // $ANTLR end "rule__TypedVariableArgument__Group__1" - // $ANTLR start "rule__QuantifiedExpression__Group__1__Impl" - // InternalSolverLanguageParser.g:6239:1: rule__QuantifiedExpression__Group__1__Impl : ( ( rule__QuantifiedExpression__LocalVariablesAssignment_1 )? ) ; - public final void rule__QuantifiedExpression__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__TypedVariableArgument__Group__1__Impl" + // InternalSolverLanguageParser.g:7705:1: rule__TypedVariableArgument__Group__1__Impl : ( ( rule__TypedVariableArgument__NameAssignment_1 ) ) ; + public final void rule__TypedVariableArgument__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6243:1: ( ( ( rule__QuantifiedExpression__LocalVariablesAssignment_1 )? ) ) - // InternalSolverLanguageParser.g:6244:1: ( ( rule__QuantifiedExpression__LocalVariablesAssignment_1 )? ) + // InternalSolverLanguageParser.g:7709:1: ( ( ( rule__TypedVariableArgument__NameAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:7710:1: ( ( rule__TypedVariableArgument__NameAssignment_1 ) ) { - // InternalSolverLanguageParser.g:6244:1: ( ( rule__QuantifiedExpression__LocalVariablesAssignment_1 )? ) - // InternalSolverLanguageParser.g:6245:2: ( rule__QuantifiedExpression__LocalVariablesAssignment_1 )? + // InternalSolverLanguageParser.g:7710:1: ( ( rule__TypedVariableArgument__NameAssignment_1 ) ) + // InternalSolverLanguageParser.g:7711:2: ( rule__TypedVariableArgument__NameAssignment_1 ) { - before(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesAssignment_1()); - // InternalSolverLanguageParser.g:6246:2: ( rule__QuantifiedExpression__LocalVariablesAssignment_1 )? - int alt45=2; - int LA45_0 = input.LA(1); - - if ( (LA45_0==LeftSquareBracket) ) { - alt45=1; - } - switch (alt45) { - case 1 : - // InternalSolverLanguageParser.g:6246:3: rule__QuantifiedExpression__LocalVariablesAssignment_1 - { - pushFollow(FOLLOW_2); - rule__QuantifiedExpression__LocalVariablesAssignment_1(); - - state._fsp--; + before(grammarAccess.getTypedVariableArgumentAccess().getNameAssignment_1()); + // InternalSolverLanguageParser.g:7712:2: ( rule__TypedVariableArgument__NameAssignment_1 ) + // InternalSolverLanguageParser.g:7712:3: rule__TypedVariableArgument__NameAssignment_1 + { + pushFollow(FOLLOW_2); + rule__TypedVariableArgument__NameAssignment_1(); + state._fsp--; - } - break; } - after(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesAssignment_1()); + after(grammarAccess.getTypedVariableArgumentAccess().getNameAssignment_1()); } @@ -19427,26 +23813,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__1__Impl" + // $ANTLR end "rule__TypedVariableArgument__Group__1__Impl" - // $ANTLR start "rule__QuantifiedExpression__Group__2" - // InternalSolverLanguageParser.g:6254:1: rule__QuantifiedExpression__Group__2 : rule__QuantifiedExpression__Group__2__Impl rule__QuantifiedExpression__Group__3 ; - public final void rule__QuantifiedExpression__Group__2() throws RecognitionException { + // $ANTLR start "rule__TypedStarArgument__Group__0" + // InternalSolverLanguageParser.g:7721:1: rule__TypedStarArgument__Group__0 : rule__TypedStarArgument__Group__0__Impl rule__TypedStarArgument__Group__1 ; + public final void rule__TypedStarArgument__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6258:1: ( rule__QuantifiedExpression__Group__2__Impl rule__QuantifiedExpression__Group__3 ) - // InternalSolverLanguageParser.g:6259:2: rule__QuantifiedExpression__Group__2__Impl rule__QuantifiedExpression__Group__3 + // InternalSolverLanguageParser.g:7725:1: ( rule__TypedStarArgument__Group__0__Impl rule__TypedStarArgument__Group__1 ) + // InternalSolverLanguageParser.g:7726:2: rule__TypedStarArgument__Group__0__Impl rule__TypedStarArgument__Group__1 { - pushFollow(FOLLOW_7); - rule__QuantifiedExpression__Group__2__Impl(); + pushFollow(FOLLOW_47); + rule__TypedStarArgument__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__QuantifiedExpression__Group__3(); + rule__TypedStarArgument__Group__1(); state._fsp--; @@ -19465,25 +23851,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__2" + // $ANTLR end "rule__TypedStarArgument__Group__0" - // $ANTLR start "rule__QuantifiedExpression__Group__2__Impl" - // InternalSolverLanguageParser.g:6266:1: rule__QuantifiedExpression__Group__2__Impl : ( LeftCurlyBracket ) ; - public final void rule__QuantifiedExpression__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__TypedStarArgument__Group__0__Impl" + // InternalSolverLanguageParser.g:7733:1: rule__TypedStarArgument__Group__0__Impl : ( ( rule__TypedStarArgument__TypeReferenceAssignment_0 ) ) ; + public final void rule__TypedStarArgument__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6270:1: ( ( LeftCurlyBracket ) ) - // InternalSolverLanguageParser.g:6271:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:7737:1: ( ( ( rule__TypedStarArgument__TypeReferenceAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:7738:1: ( ( rule__TypedStarArgument__TypeReferenceAssignment_0 ) ) { - // InternalSolverLanguageParser.g:6271:1: ( LeftCurlyBracket ) - // InternalSolverLanguageParser.g:6272:2: LeftCurlyBracket + // InternalSolverLanguageParser.g:7738:1: ( ( rule__TypedStarArgument__TypeReferenceAssignment_0 ) ) + // InternalSolverLanguageParser.g:7739:2: ( rule__TypedStarArgument__TypeReferenceAssignment_0 ) { - before(grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2()); - match(input,LeftCurlyBracket,FOLLOW_2); - after(grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2()); + before(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceAssignment_0()); + // InternalSolverLanguageParser.g:7740:2: ( rule__TypedStarArgument__TypeReferenceAssignment_0 ) + // InternalSolverLanguageParser.g:7740:3: rule__TypedStarArgument__TypeReferenceAssignment_0 + { + pushFollow(FOLLOW_2); + rule__TypedStarArgument__TypeReferenceAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceAssignment_0()); } @@ -19502,26 +23898,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__2__Impl" + // $ANTLR end "rule__TypedStarArgument__Group__0__Impl" - // $ANTLR start "rule__QuantifiedExpression__Group__3" - // InternalSolverLanguageParser.g:6281:1: rule__QuantifiedExpression__Group__3 : rule__QuantifiedExpression__Group__3__Impl rule__QuantifiedExpression__Group__4 ; - public final void rule__QuantifiedExpression__Group__3() throws RecognitionException { + // $ANTLR start "rule__TypedStarArgument__Group__1" + // InternalSolverLanguageParser.g:7748:1: rule__TypedStarArgument__Group__1 : rule__TypedStarArgument__Group__1__Impl ; + public final void rule__TypedStarArgument__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6285:1: ( rule__QuantifiedExpression__Group__3__Impl rule__QuantifiedExpression__Group__4 ) - // InternalSolverLanguageParser.g:6286:2: rule__QuantifiedExpression__Group__3__Impl rule__QuantifiedExpression__Group__4 + // InternalSolverLanguageParser.g:7752:1: ( rule__TypedStarArgument__Group__1__Impl ) + // InternalSolverLanguageParser.g:7753:2: rule__TypedStarArgument__Group__1__Impl { - pushFollow(FOLLOW_16); - rule__QuantifiedExpression__Group__3__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__QuantifiedExpression__Group__4(); + rule__TypedStarArgument__Group__1__Impl(); state._fsp--; @@ -19540,35 +23931,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__3" + // $ANTLR end "rule__TypedStarArgument__Group__1" - // $ANTLR start "rule__QuantifiedExpression__Group__3__Impl" - // InternalSolverLanguageParser.g:6293:1: rule__QuantifiedExpression__Group__3__Impl : ( ( rule__QuantifiedExpression__BodyAssignment_3 ) ) ; - public final void rule__QuantifiedExpression__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__TypedStarArgument__Group__1__Impl" + // InternalSolverLanguageParser.g:7759:1: rule__TypedStarArgument__Group__1__Impl : ( Asterisk ) ; + public final void rule__TypedStarArgument__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6297:1: ( ( ( rule__QuantifiedExpression__BodyAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:6298:1: ( ( rule__QuantifiedExpression__BodyAssignment_3 ) ) + // InternalSolverLanguageParser.g:7763:1: ( ( Asterisk ) ) + // InternalSolverLanguageParser.g:7764:1: ( Asterisk ) { - // InternalSolverLanguageParser.g:6298:1: ( ( rule__QuantifiedExpression__BodyAssignment_3 ) ) - // InternalSolverLanguageParser.g:6299:2: ( rule__QuantifiedExpression__BodyAssignment_3 ) + // InternalSolverLanguageParser.g:7764:1: ( Asterisk ) + // InternalSolverLanguageParser.g:7765:2: Asterisk { - before(grammarAccess.getQuantifiedExpressionAccess().getBodyAssignment_3()); - // InternalSolverLanguageParser.g:6300:2: ( rule__QuantifiedExpression__BodyAssignment_3 ) - // InternalSolverLanguageParser.g:6300:3: rule__QuantifiedExpression__BodyAssignment_3 - { - pushFollow(FOLLOW_2); - rule__QuantifiedExpression__BodyAssignment_3(); - - state._fsp--; - - - } - - after(grammarAccess.getQuantifiedExpressionAccess().getBodyAssignment_3()); + before(grammarAccess.getTypedStarArgumentAccess().getAsteriskKeyword_1()); + match(input,Asterisk,FOLLOW_2); + after(grammarAccess.getTypedStarArgumentAccess().getAsteriskKeyword_1()); } @@ -19587,21 +23968,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__3__Impl" + // $ANTLR end "rule__TypedStarArgument__Group__1__Impl" - // $ANTLR start "rule__QuantifiedExpression__Group__4" - // InternalSolverLanguageParser.g:6308:1: rule__QuantifiedExpression__Group__4 : rule__QuantifiedExpression__Group__4__Impl ; - public final void rule__QuantifiedExpression__Group__4() throws RecognitionException { + // $ANTLR start "rule__Reference__Group__0" + // InternalSolverLanguageParser.g:7775:1: rule__Reference__Group__0 : rule__Reference__Group__0__Impl rule__Reference__Group__1 ; + public final void rule__Reference__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6312:1: ( rule__QuantifiedExpression__Group__4__Impl ) - // InternalSolverLanguageParser.g:6313:2: rule__QuantifiedExpression__Group__4__Impl + // InternalSolverLanguageParser.g:7779:1: ( rule__Reference__Group__0__Impl rule__Reference__Group__1 ) + // InternalSolverLanguageParser.g:7780:2: rule__Reference__Group__0__Impl rule__Reference__Group__1 { + pushFollow(FOLLOW_49); + rule__Reference__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__QuantifiedExpression__Group__4__Impl(); + rule__Reference__Group__1(); state._fsp--; @@ -19620,25 +24006,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__4" + // $ANTLR end "rule__Reference__Group__0" - // $ANTLR start "rule__QuantifiedExpression__Group__4__Impl" - // InternalSolverLanguageParser.g:6319:1: rule__QuantifiedExpression__Group__4__Impl : ( RightCurlyBracket ) ; - public final void rule__QuantifiedExpression__Group__4__Impl() throws RecognitionException { + // $ANTLR start "rule__Reference__Group__0__Impl" + // InternalSolverLanguageParser.g:7787:1: rule__Reference__Group__0__Impl : ( ( rule__Reference__ComponentsAssignment_0 ) ) ; + public final void rule__Reference__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6323:1: ( ( RightCurlyBracket ) ) - // InternalSolverLanguageParser.g:6324:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:7791:1: ( ( ( rule__Reference__ComponentsAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:7792:1: ( ( rule__Reference__ComponentsAssignment_0 ) ) { - // InternalSolverLanguageParser.g:6324:1: ( RightCurlyBracket ) - // InternalSolverLanguageParser.g:6325:2: RightCurlyBracket + // InternalSolverLanguageParser.g:7792:1: ( ( rule__Reference__ComponentsAssignment_0 ) ) + // InternalSolverLanguageParser.g:7793:2: ( rule__Reference__ComponentsAssignment_0 ) { - before(grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4()); - match(input,RightCurlyBracket,FOLLOW_2); - after(grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4()); + before(grammarAccess.getReferenceAccess().getComponentsAssignment_0()); + // InternalSolverLanguageParser.g:7794:2: ( rule__Reference__ComponentsAssignment_0 ) + // InternalSolverLanguageParser.g:7794:3: rule__Reference__ComponentsAssignment_0 + { + pushFollow(FOLLOW_2); + rule__Reference__ComponentsAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getReferenceAccess().getComponentsAssignment_0()); } @@ -19657,26 +24053,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__Group__4__Impl" + // $ANTLR end "rule__Reference__Group__0__Impl" - // $ANTLR start "rule__Aggregation__Group__0" - // InternalSolverLanguageParser.g:6335:1: rule__Aggregation__Group__0 : rule__Aggregation__Group__0__Impl rule__Aggregation__Group__1 ; - public final void rule__Aggregation__Group__0() throws RecognitionException { + // $ANTLR start "rule__Reference__Group__1" + // InternalSolverLanguageParser.g:7802:1: rule__Reference__Group__1 : rule__Reference__Group__1__Impl ; + public final void rule__Reference__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6339:1: ( rule__Aggregation__Group__0__Impl rule__Aggregation__Group__1 ) - // InternalSolverLanguageParser.g:6340:2: rule__Aggregation__Group__0__Impl rule__Aggregation__Group__1 + // InternalSolverLanguageParser.g:7806:1: ( rule__Reference__Group__1__Impl ) + // InternalSolverLanguageParser.g:7807:2: rule__Reference__Group__1__Impl { - pushFollow(FOLLOW_40); - rule__Aggregation__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__Aggregation__Group__1(); + rule__Reference__Group__1__Impl(); state._fsp--; @@ -19695,35 +24086,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__0" + // $ANTLR end "rule__Reference__Group__1" - // $ANTLR start "rule__Aggregation__Group__0__Impl" - // InternalSolverLanguageParser.g:6347:1: rule__Aggregation__Group__0__Impl : ( ( rule__Aggregation__OpAssignment_0 ) ) ; - public final void rule__Aggregation__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Reference__Group__1__Impl" + // InternalSolverLanguageParser.g:7813:1: rule__Reference__Group__1__Impl : ( ( rule__Reference__Group_1__0 )* ) ; + public final void rule__Reference__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6351:1: ( ( ( rule__Aggregation__OpAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:6352:1: ( ( rule__Aggregation__OpAssignment_0 ) ) - { - // InternalSolverLanguageParser.g:6352:1: ( ( rule__Aggregation__OpAssignment_0 ) ) - // InternalSolverLanguageParser.g:6353:2: ( rule__Aggregation__OpAssignment_0 ) + // InternalSolverLanguageParser.g:7817:1: ( ( ( rule__Reference__Group_1__0 )* ) ) + // InternalSolverLanguageParser.g:7818:1: ( ( rule__Reference__Group_1__0 )* ) { - before(grammarAccess.getAggregationAccess().getOpAssignment_0()); - // InternalSolverLanguageParser.g:6354:2: ( rule__Aggregation__OpAssignment_0 ) - // InternalSolverLanguageParser.g:6354:3: rule__Aggregation__OpAssignment_0 + // InternalSolverLanguageParser.g:7818:1: ( ( rule__Reference__Group_1__0 )* ) + // InternalSolverLanguageParser.g:7819:2: ( rule__Reference__Group_1__0 )* { - pushFollow(FOLLOW_2); - rule__Aggregation__OpAssignment_0(); + before(grammarAccess.getReferenceAccess().getGroup_1()); + // InternalSolverLanguageParser.g:7820:2: ( rule__Reference__Group_1__0 )* + loop53: + do { + int alt53=2; + int LA53_0 = input.LA(1); - state._fsp--; + if ( (LA53_0==FullStop) ) { + alt53=1; + } - } + switch (alt53) { + case 1 : + // InternalSolverLanguageParser.g:7820:3: rule__Reference__Group_1__0 + { + pushFollow(FOLLOW_50); + rule__Reference__Group_1__0(); - after(grammarAccess.getAggregationAccess().getOpAssignment_0()); + state._fsp--; + + + } + break; + + default : + break loop53; + } + } while (true); + + after(grammarAccess.getReferenceAccess().getGroup_1()); } @@ -19742,26 +24151,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__0__Impl" + // $ANTLR end "rule__Reference__Group__1__Impl" - // $ANTLR start "rule__Aggregation__Group__1" - // InternalSolverLanguageParser.g:6362:1: rule__Aggregation__Group__1 : rule__Aggregation__Group__1__Impl rule__Aggregation__Group__2 ; - public final void rule__Aggregation__Group__1() throws RecognitionException { + // $ANTLR start "rule__Reference__Group_1__0" + // InternalSolverLanguageParser.g:7829:1: rule__Reference__Group_1__0 : rule__Reference__Group_1__0__Impl rule__Reference__Group_1__1 ; + public final void rule__Reference__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6366:1: ( rule__Aggregation__Group__1__Impl rule__Aggregation__Group__2 ) - // InternalSolverLanguageParser.g:6367:2: rule__Aggregation__Group__1__Impl rule__Aggregation__Group__2 + // InternalSolverLanguageParser.g:7833:1: ( rule__Reference__Group_1__0__Impl rule__Reference__Group_1__1 ) + // InternalSolverLanguageParser.g:7834:2: rule__Reference__Group_1__0__Impl rule__Reference__Group_1__1 { - pushFollow(FOLLOW_40); - rule__Aggregation__Group__1__Impl(); + pushFollow(FOLLOW_6); + rule__Reference__Group_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Aggregation__Group__2(); + rule__Reference__Group_1__1(); state._fsp--; @@ -19780,46 +24189,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__1" + // $ANTLR end "rule__Reference__Group_1__0" - // $ANTLR start "rule__Aggregation__Group__1__Impl" - // InternalSolverLanguageParser.g:6374:1: rule__Aggregation__Group__1__Impl : ( ( rule__Aggregation__LocalVariablesAssignment_1 )? ) ; - public final void rule__Aggregation__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Reference__Group_1__0__Impl" + // InternalSolverLanguageParser.g:7841:1: rule__Reference__Group_1__0__Impl : ( FullStop ) ; + public final void rule__Reference__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6378:1: ( ( ( rule__Aggregation__LocalVariablesAssignment_1 )? ) ) - // InternalSolverLanguageParser.g:6379:1: ( ( rule__Aggregation__LocalVariablesAssignment_1 )? ) + // InternalSolverLanguageParser.g:7845:1: ( ( FullStop ) ) + // InternalSolverLanguageParser.g:7846:1: ( FullStop ) { - // InternalSolverLanguageParser.g:6379:1: ( ( rule__Aggregation__LocalVariablesAssignment_1 )? ) - // InternalSolverLanguageParser.g:6380:2: ( rule__Aggregation__LocalVariablesAssignment_1 )? + // InternalSolverLanguageParser.g:7846:1: ( FullStop ) + // InternalSolverLanguageParser.g:7847:2: FullStop { - before(grammarAccess.getAggregationAccess().getLocalVariablesAssignment_1()); - // InternalSolverLanguageParser.g:6381:2: ( rule__Aggregation__LocalVariablesAssignment_1 )? - int alt46=2; - int LA46_0 = input.LA(1); - - if ( (LA46_0==LeftSquareBracket) ) { - alt46=1; - } - switch (alt46) { - case 1 : - // InternalSolverLanguageParser.g:6381:3: rule__Aggregation__LocalVariablesAssignment_1 - { - pushFollow(FOLLOW_2); - rule__Aggregation__LocalVariablesAssignment_1(); - - state._fsp--; - - - } - break; - - } - - after(grammarAccess.getAggregationAccess().getLocalVariablesAssignment_1()); + before(grammarAccess.getReferenceAccess().getFullStopKeyword_1_0()); + match(input,FullStop,FOLLOW_2); + after(grammarAccess.getReferenceAccess().getFullStopKeyword_1_0()); } @@ -19838,26 +24226,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__1__Impl" - + // $ANTLR end "rule__Reference__Group_1__0__Impl" - // $ANTLR start "rule__Aggregation__Group__2" - // InternalSolverLanguageParser.g:6389:1: rule__Aggregation__Group__2 : rule__Aggregation__Group__2__Impl rule__Aggregation__Group__3 ; - public final void rule__Aggregation__Group__2() throws RecognitionException { + + // $ANTLR start "rule__Reference__Group_1__1" + // InternalSolverLanguageParser.g:7856:1: rule__Reference__Group_1__1 : rule__Reference__Group_1__1__Impl ; + public final void rule__Reference__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6393:1: ( rule__Aggregation__Group__2__Impl rule__Aggregation__Group__3 ) - // InternalSolverLanguageParser.g:6394:2: rule__Aggregation__Group__2__Impl rule__Aggregation__Group__3 + // InternalSolverLanguageParser.g:7860:1: ( rule__Reference__Group_1__1__Impl ) + // InternalSolverLanguageParser.g:7861:2: rule__Reference__Group_1__1__Impl { - pushFollow(FOLLOW_7); - rule__Aggregation__Group__2__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__Aggregation__Group__3(); + rule__Reference__Group_1__1__Impl(); state._fsp--; @@ -19876,25 +24259,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__2" + // $ANTLR end "rule__Reference__Group_1__1" - // $ANTLR start "rule__Aggregation__Group__2__Impl" - // InternalSolverLanguageParser.g:6401:1: rule__Aggregation__Group__2__Impl : ( LeftCurlyBracket ) ; - public final void rule__Aggregation__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Reference__Group_1__1__Impl" + // InternalSolverLanguageParser.g:7867:1: rule__Reference__Group_1__1__Impl : ( ( rule__Reference__ComponentsAssignment_1_1 ) ) ; + public final void rule__Reference__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6405:1: ( ( LeftCurlyBracket ) ) - // InternalSolverLanguageParser.g:6406:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:7871:1: ( ( ( rule__Reference__ComponentsAssignment_1_1 ) ) ) + // InternalSolverLanguageParser.g:7872:1: ( ( rule__Reference__ComponentsAssignment_1_1 ) ) { - // InternalSolverLanguageParser.g:6406:1: ( LeftCurlyBracket ) - // InternalSolverLanguageParser.g:6407:2: LeftCurlyBracket + // InternalSolverLanguageParser.g:7872:1: ( ( rule__Reference__ComponentsAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:7873:2: ( rule__Reference__ComponentsAssignment_1_1 ) { - before(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2()); - match(input,LeftCurlyBracket,FOLLOW_2); - after(grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2()); + before(grammarAccess.getReferenceAccess().getComponentsAssignment_1_1()); + // InternalSolverLanguageParser.g:7874:2: ( rule__Reference__ComponentsAssignment_1_1 ) + // InternalSolverLanguageParser.g:7874:3: rule__Reference__ComponentsAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__Reference__ComponentsAssignment_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getReferenceAccess().getComponentsAssignment_1_1()); } @@ -19913,26 +24306,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__2__Impl" + // $ANTLR end "rule__Reference__Group_1__1__Impl" - // $ANTLR start "rule__Aggregation__Group__3" - // InternalSolverLanguageParser.g:6416:1: rule__Aggregation__Group__3 : rule__Aggregation__Group__3__Impl rule__Aggregation__Group__4 ; - public final void rule__Aggregation__Group__3() throws RecognitionException { + // $ANTLR start "rule__PathComponent__Group__0" + // InternalSolverLanguageParser.g:7883:1: rule__PathComponent__Group__0 : rule__PathComponent__Group__0__Impl rule__PathComponent__Group__1 ; + public final void rule__PathComponent__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6420:1: ( rule__Aggregation__Group__3__Impl rule__Aggregation__Group__4 ) - // InternalSolverLanguageParser.g:6421:2: rule__Aggregation__Group__3__Impl rule__Aggregation__Group__4 + // InternalSolverLanguageParser.g:7887:1: ( rule__PathComponent__Group__0__Impl rule__PathComponent__Group__1 ) + // InternalSolverLanguageParser.g:7888:2: rule__PathComponent__Group__0__Impl rule__PathComponent__Group__1 { - pushFollow(FOLLOW_41); - rule__Aggregation__Group__3__Impl(); + pushFollow(FOLLOW_6); + rule__PathComponent__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Aggregation__Group__4(); + rule__PathComponent__Group__1(); state._fsp--; @@ -19951,35 +24344,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__3" + // $ANTLR end "rule__PathComponent__Group__0" - // $ANTLR start "rule__Aggregation__Group__3__Impl" - // InternalSolverLanguageParser.g:6428:1: rule__Aggregation__Group__3__Impl : ( ( rule__Aggregation__BodyAssignment_3 ) ) ; - public final void rule__Aggregation__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__PathComponent__Group__0__Impl" + // InternalSolverLanguageParser.g:7895:1: rule__PathComponent__Group__0__Impl : ( ( rule__PathComponent__InverseAssignment_0 )? ) ; + public final void rule__PathComponent__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6432:1: ( ( ( rule__Aggregation__BodyAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:6433:1: ( ( rule__Aggregation__BodyAssignment_3 ) ) - { - // InternalSolverLanguageParser.g:6433:1: ( ( rule__Aggregation__BodyAssignment_3 ) ) - // InternalSolverLanguageParser.g:6434:2: ( rule__Aggregation__BodyAssignment_3 ) + // InternalSolverLanguageParser.g:7899:1: ( ( ( rule__PathComponent__InverseAssignment_0 )? ) ) + // InternalSolverLanguageParser.g:7900:1: ( ( rule__PathComponent__InverseAssignment_0 )? ) { - before(grammarAccess.getAggregationAccess().getBodyAssignment_3()); - // InternalSolverLanguageParser.g:6435:2: ( rule__Aggregation__BodyAssignment_3 ) - // InternalSolverLanguageParser.g:6435:3: rule__Aggregation__BodyAssignment_3 + // InternalSolverLanguageParser.g:7900:1: ( ( rule__PathComponent__InverseAssignment_0 )? ) + // InternalSolverLanguageParser.g:7901:2: ( rule__PathComponent__InverseAssignment_0 )? { - pushFollow(FOLLOW_2); - rule__Aggregation__BodyAssignment_3(); + before(grammarAccess.getPathComponentAccess().getInverseAssignment_0()); + // InternalSolverLanguageParser.g:7902:2: ( rule__PathComponent__InverseAssignment_0 )? + int alt54=2; + int LA54_0 = input.LA(1); - state._fsp--; + if ( (LA54_0==Tilde) ) { + alt54=1; + } + switch (alt54) { + case 1 : + // InternalSolverLanguageParser.g:7902:3: rule__PathComponent__InverseAssignment_0 + { + pushFollow(FOLLOW_2); + rule__PathComponent__InverseAssignment_0(); + state._fsp--; + + + } + break; } - after(grammarAccess.getAggregationAccess().getBodyAssignment_3()); + after(grammarAccess.getPathComponentAccess().getInverseAssignment_0()); } @@ -19998,26 +24402,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__3__Impl" + // $ANTLR end "rule__PathComponent__Group__0__Impl" - // $ANTLR start "rule__Aggregation__Group__4" - // InternalSolverLanguageParser.g:6443:1: rule__Aggregation__Group__4 : rule__Aggregation__Group__4__Impl rule__Aggregation__Group__5 ; - public final void rule__Aggregation__Group__4() throws RecognitionException { + // $ANTLR start "rule__PathComponent__Group__1" + // InternalSolverLanguageParser.g:7910:1: rule__PathComponent__Group__1 : rule__PathComponent__Group__1__Impl rule__PathComponent__Group__2 ; + public final void rule__PathComponent__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6447:1: ( rule__Aggregation__Group__4__Impl rule__Aggregation__Group__5 ) - // InternalSolverLanguageParser.g:6448:2: rule__Aggregation__Group__4__Impl rule__Aggregation__Group__5 + // InternalSolverLanguageParser.g:7914:1: ( rule__PathComponent__Group__1__Impl rule__PathComponent__Group__2 ) + // InternalSolverLanguageParser.g:7915:2: rule__PathComponent__Group__1__Impl rule__PathComponent__Group__2 { - pushFollow(FOLLOW_41); - rule__Aggregation__Group__4__Impl(); + pushFollow(FOLLOW_51); + rule__PathComponent__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Aggregation__Group__5(); + rule__PathComponent__Group__2(); state._fsp--; @@ -20036,46 +24440,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__4" + // $ANTLR end "rule__PathComponent__Group__1" - // $ANTLR start "rule__Aggregation__Group__4__Impl" - // InternalSolverLanguageParser.g:6455:1: rule__Aggregation__Group__4__Impl : ( ( rule__Aggregation__Group_4__0 )? ) ; - public final void rule__Aggregation__Group__4__Impl() throws RecognitionException { + // $ANTLR start "rule__PathComponent__Group__1__Impl" + // InternalSolverLanguageParser.g:7922:1: rule__PathComponent__Group__1__Impl : ( ( rule__PathComponent__SymbolAssignment_1 ) ) ; + public final void rule__PathComponent__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6459:1: ( ( ( rule__Aggregation__Group_4__0 )? ) ) - // InternalSolverLanguageParser.g:6460:1: ( ( rule__Aggregation__Group_4__0 )? ) + // InternalSolverLanguageParser.g:7926:1: ( ( ( rule__PathComponent__SymbolAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:7927:1: ( ( rule__PathComponent__SymbolAssignment_1 ) ) { - // InternalSolverLanguageParser.g:6460:1: ( ( rule__Aggregation__Group_4__0 )? ) - // InternalSolverLanguageParser.g:6461:2: ( rule__Aggregation__Group_4__0 )? + // InternalSolverLanguageParser.g:7927:1: ( ( rule__PathComponent__SymbolAssignment_1 ) ) + // InternalSolverLanguageParser.g:7928:2: ( rule__PathComponent__SymbolAssignment_1 ) { - before(grammarAccess.getAggregationAccess().getGroup_4()); - // InternalSolverLanguageParser.g:6462:2: ( rule__Aggregation__Group_4__0 )? - int alt47=2; - int LA47_0 = input.LA(1); - - if ( (LA47_0==VerticalLine) ) { - alt47=1; - } - switch (alt47) { - case 1 : - // InternalSolverLanguageParser.g:6462:3: rule__Aggregation__Group_4__0 - { - pushFollow(FOLLOW_2); - rule__Aggregation__Group_4__0(); - - state._fsp--; + before(grammarAccess.getPathComponentAccess().getSymbolAssignment_1()); + // InternalSolverLanguageParser.g:7929:2: ( rule__PathComponent__SymbolAssignment_1 ) + // InternalSolverLanguageParser.g:7929:3: rule__PathComponent__SymbolAssignment_1 + { + pushFollow(FOLLOW_2); + rule__PathComponent__SymbolAssignment_1(); + state._fsp--; - } - break; } - after(grammarAccess.getAggregationAccess().getGroup_4()); + after(grammarAccess.getPathComponentAccess().getSymbolAssignment_1()); } @@ -20094,21 +24487,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__4__Impl" + // $ANTLR end "rule__PathComponent__Group__1__Impl" - // $ANTLR start "rule__Aggregation__Group__5" - // InternalSolverLanguageParser.g:6470:1: rule__Aggregation__Group__5 : rule__Aggregation__Group__5__Impl ; - public final void rule__Aggregation__Group__5() throws RecognitionException { + // $ANTLR start "rule__PathComponent__Group__2" + // InternalSolverLanguageParser.g:7937:1: rule__PathComponent__Group__2 : rule__PathComponent__Group__2__Impl ; + public final void rule__PathComponent__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6474:1: ( rule__Aggregation__Group__5__Impl ) - // InternalSolverLanguageParser.g:6475:2: rule__Aggregation__Group__5__Impl + // InternalSolverLanguageParser.g:7941:1: ( rule__PathComponent__Group__2__Impl ) + // InternalSolverLanguageParser.g:7942:2: rule__PathComponent__Group__2__Impl { pushFollow(FOLLOW_2); - rule__Aggregation__Group__5__Impl(); + rule__PathComponent__Group__2__Impl(); state._fsp--; @@ -20127,25 +24520,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__5" + // $ANTLR end "rule__PathComponent__Group__2" - // $ANTLR start "rule__Aggregation__Group__5__Impl" - // InternalSolverLanguageParser.g:6481:1: rule__Aggregation__Group__5__Impl : ( RightCurlyBracket ) ; - public final void rule__Aggregation__Group__5__Impl() throws RecognitionException { + // $ANTLR start "rule__PathComponent__Group__2__Impl" + // InternalSolverLanguageParser.g:7948:1: rule__PathComponent__Group__2__Impl : ( ( rule__PathComponent__Alternatives_2 )? ) ; + public final void rule__PathComponent__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6485:1: ( ( RightCurlyBracket ) ) - // InternalSolverLanguageParser.g:6486:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:7952:1: ( ( ( rule__PathComponent__Alternatives_2 )? ) ) + // InternalSolverLanguageParser.g:7953:1: ( ( rule__PathComponent__Alternatives_2 )? ) { - // InternalSolverLanguageParser.g:6486:1: ( RightCurlyBracket ) - // InternalSolverLanguageParser.g:6487:2: RightCurlyBracket + // InternalSolverLanguageParser.g:7953:1: ( ( rule__PathComponent__Alternatives_2 )? ) + // InternalSolverLanguageParser.g:7954:2: ( rule__PathComponent__Alternatives_2 )? { - before(grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); - match(input,RightCurlyBracket,FOLLOW_2); - after(grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); + before(grammarAccess.getPathComponentAccess().getAlternatives_2()); + // InternalSolverLanguageParser.g:7955:2: ( rule__PathComponent__Alternatives_2 )? + int alt55=2; + int LA55_0 = input.LA(1); + + if ( ((LA55_0>=RULE_TRANSITIVE_CLOSURE && LA55_0<=RULE_REFLEXIVE_TRANSITIVE_CLOSURE)) ) { + alt55=1; + } + switch (alt55) { + case 1 : + // InternalSolverLanguageParser.g:7955:3: rule__PathComponent__Alternatives_2 + { + pushFollow(FOLLOW_2); + rule__PathComponent__Alternatives_2(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getPathComponentAccess().getAlternatives_2()); } @@ -20164,26 +24578,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group__5__Impl" + // $ANTLR end "rule__PathComponent__Group__2__Impl" - // $ANTLR start "rule__Aggregation__Group_4__0" - // InternalSolverLanguageParser.g:6497:1: rule__Aggregation__Group_4__0 : rule__Aggregation__Group_4__0__Impl rule__Aggregation__Group_4__1 ; - public final void rule__Aggregation__Group_4__0() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__0" + // InternalSolverLanguageParser.g:7964:1: rule__Interval__Group__0 : rule__Interval__Group__0__Impl rule__Interval__Group__1 ; + public final void rule__Interval__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6501:1: ( rule__Aggregation__Group_4__0__Impl rule__Aggregation__Group_4__1 ) - // InternalSolverLanguageParser.g:6502:2: rule__Aggregation__Group_4__0__Impl rule__Aggregation__Group_4__1 + // InternalSolverLanguageParser.g:7968:1: ( rule__Interval__Group__0__Impl rule__Interval__Group__1 ) + // InternalSolverLanguageParser.g:7969:2: rule__Interval__Group__0__Impl rule__Interval__Group__1 { - pushFollow(FOLLOW_7); - rule__Aggregation__Group_4__0__Impl(); + pushFollow(FOLLOW_12); + rule__Interval__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Aggregation__Group_4__1(); + rule__Interval__Group__1(); state._fsp--; @@ -20202,25 +24616,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group_4__0" + // $ANTLR end "rule__Interval__Group__0" - // $ANTLR start "rule__Aggregation__Group_4__0__Impl" - // InternalSolverLanguageParser.g:6509:1: rule__Aggregation__Group_4__0__Impl : ( VerticalLine ) ; - public final void rule__Aggregation__Group_4__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__0__Impl" + // InternalSolverLanguageParser.g:7976:1: rule__Interval__Group__0__Impl : ( LeftSquareBracket ) ; + public final void rule__Interval__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6513:1: ( ( VerticalLine ) ) - // InternalSolverLanguageParser.g:6514:1: ( VerticalLine ) + // InternalSolverLanguageParser.g:7980:1: ( ( LeftSquareBracket ) ) + // InternalSolverLanguageParser.g:7981:1: ( LeftSquareBracket ) { - // InternalSolverLanguageParser.g:6514:1: ( VerticalLine ) - // InternalSolverLanguageParser.g:6515:2: VerticalLine + // InternalSolverLanguageParser.g:7981:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:7982:2: LeftSquareBracket { - before(grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0()); - match(input,VerticalLine,FOLLOW_2); - after(grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0()); + before(grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); + match(input,LeftSquareBracket,FOLLOW_2); + after(grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); } @@ -20239,21 +24653,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group_4__0__Impl" + // $ANTLR end "rule__Interval__Group__0__Impl" - // $ANTLR start "rule__Aggregation__Group_4__1" - // InternalSolverLanguageParser.g:6524:1: rule__Aggregation__Group_4__1 : rule__Aggregation__Group_4__1__Impl ; - public final void rule__Aggregation__Group_4__1() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__1" + // InternalSolverLanguageParser.g:7991:1: rule__Interval__Group__1 : rule__Interval__Group__1__Impl rule__Interval__Group__2 ; + public final void rule__Interval__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6528:1: ( rule__Aggregation__Group_4__1__Impl ) - // InternalSolverLanguageParser.g:6529:2: rule__Aggregation__Group_4__1__Impl + // InternalSolverLanguageParser.g:7995:1: ( rule__Interval__Group__1__Impl rule__Interval__Group__2 ) + // InternalSolverLanguageParser.g:7996:2: rule__Interval__Group__1__Impl rule__Interval__Group__2 { + pushFollow(FOLLOW_35); + rule__Interval__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__Aggregation__Group_4__1__Impl(); + rule__Interval__Group__2(); state._fsp--; @@ -20272,35 +24691,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group_4__1" + // $ANTLR end "rule__Interval__Group__1" - // $ANTLR start "rule__Aggregation__Group_4__1__Impl" - // InternalSolverLanguageParser.g:6535:1: rule__Aggregation__Group_4__1__Impl : ( ( rule__Aggregation__ConditionAssignment_4_1 ) ) ; - public final void rule__Aggregation__Group_4__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__1__Impl" + // InternalSolverLanguageParser.g:8003:1: rule__Interval__Group__1__Impl : ( ( rule__Interval__LowerBoundAssignment_1 ) ) ; + public final void rule__Interval__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6539:1: ( ( ( rule__Aggregation__ConditionAssignment_4_1 ) ) ) - // InternalSolverLanguageParser.g:6540:1: ( ( rule__Aggregation__ConditionAssignment_4_1 ) ) + // InternalSolverLanguageParser.g:8007:1: ( ( ( rule__Interval__LowerBoundAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:8008:1: ( ( rule__Interval__LowerBoundAssignment_1 ) ) { - // InternalSolverLanguageParser.g:6540:1: ( ( rule__Aggregation__ConditionAssignment_4_1 ) ) - // InternalSolverLanguageParser.g:6541:2: ( rule__Aggregation__ConditionAssignment_4_1 ) + // InternalSolverLanguageParser.g:8008:1: ( ( rule__Interval__LowerBoundAssignment_1 ) ) + // InternalSolverLanguageParser.g:8009:2: ( rule__Interval__LowerBoundAssignment_1 ) { - before(grammarAccess.getAggregationAccess().getConditionAssignment_4_1()); - // InternalSolverLanguageParser.g:6542:2: ( rule__Aggregation__ConditionAssignment_4_1 ) - // InternalSolverLanguageParser.g:6542:3: rule__Aggregation__ConditionAssignment_4_1 + before(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1()); + // InternalSolverLanguageParser.g:8010:2: ( rule__Interval__LowerBoundAssignment_1 ) + // InternalSolverLanguageParser.g:8010:3: rule__Interval__LowerBoundAssignment_1 { pushFollow(FOLLOW_2); - rule__Aggregation__ConditionAssignment_4_1(); + rule__Interval__LowerBoundAssignment_1(); state._fsp--; } - after(grammarAccess.getAggregationAccess().getConditionAssignment_4_1()); + after(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1()); } @@ -20319,26 +24738,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__Group_4__1__Impl" + // $ANTLR end "rule__Interval__Group__1__Impl" - // $ANTLR start "rule__AtomicExpression__Group_4__0" - // InternalSolverLanguageParser.g:6551:1: rule__AtomicExpression__Group_4__0 : rule__AtomicExpression__Group_4__0__Impl rule__AtomicExpression__Group_4__1 ; - public final void rule__AtomicExpression__Group_4__0() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__2" + // InternalSolverLanguageParser.g:8018:1: rule__Interval__Group__2 : rule__Interval__Group__2__Impl rule__Interval__Group__3 ; + public final void rule__Interval__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6555:1: ( rule__AtomicExpression__Group_4__0__Impl rule__AtomicExpression__Group_4__1 ) - // InternalSolverLanguageParser.g:6556:2: rule__AtomicExpression__Group_4__0__Impl rule__AtomicExpression__Group_4__1 + // InternalSolverLanguageParser.g:8022:1: ( rule__Interval__Group__2__Impl rule__Interval__Group__3 ) + // InternalSolverLanguageParser.g:8023:2: rule__Interval__Group__2__Impl rule__Interval__Group__3 { - pushFollow(FOLLOW_7); - rule__AtomicExpression__Group_4__0__Impl(); + pushFollow(FOLLOW_12); + rule__Interval__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AtomicExpression__Group_4__1(); + rule__Interval__Group__3(); state._fsp--; @@ -20357,25 +24776,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AtomicExpression__Group_4__0" + // $ANTLR end "rule__Interval__Group__2" - // $ANTLR start "rule__AtomicExpression__Group_4__0__Impl" - // InternalSolverLanguageParser.g:6563:1: rule__AtomicExpression__Group_4__0__Impl : ( LeftParenthesis ) ; - public final void rule__AtomicExpression__Group_4__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__2__Impl" + // InternalSolverLanguageParser.g:8030:1: rule__Interval__Group__2__Impl : ( Comma ) ; + public final void rule__Interval__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6567:1: ( ( LeftParenthesis ) ) - // InternalSolverLanguageParser.g:6568:1: ( LeftParenthesis ) + // InternalSolverLanguageParser.g:8034:1: ( ( Comma ) ) + // InternalSolverLanguageParser.g:8035:1: ( Comma ) { - // InternalSolverLanguageParser.g:6568:1: ( LeftParenthesis ) - // InternalSolverLanguageParser.g:6569:2: LeftParenthesis + // InternalSolverLanguageParser.g:8035:1: ( Comma ) + // InternalSolverLanguageParser.g:8036:2: Comma { - before(grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); - match(input,LeftParenthesis,FOLLOW_2); - after(grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); + before(grammarAccess.getIntervalAccess().getCommaKeyword_2()); + match(input,Comma,FOLLOW_2); + after(grammarAccess.getIntervalAccess().getCommaKeyword_2()); } @@ -20394,26 +24813,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AtomicExpression__Group_4__0__Impl" + // $ANTLR end "rule__Interval__Group__2__Impl" - // $ANTLR start "rule__AtomicExpression__Group_4__1" - // InternalSolverLanguageParser.g:6578:1: rule__AtomicExpression__Group_4__1 : rule__AtomicExpression__Group_4__1__Impl rule__AtomicExpression__Group_4__2 ; - public final void rule__AtomicExpression__Group_4__1() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__3" + // InternalSolverLanguageParser.g:8045:1: rule__Interval__Group__3 : rule__Interval__Group__3__Impl rule__Interval__Group__4 ; + public final void rule__Interval__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6582:1: ( rule__AtomicExpression__Group_4__1__Impl rule__AtomicExpression__Group_4__2 ) - // InternalSolverLanguageParser.g:6583:2: rule__AtomicExpression__Group_4__1__Impl rule__AtomicExpression__Group_4__2 + // InternalSolverLanguageParser.g:8049:1: ( rule__Interval__Group__3__Impl rule__Interval__Group__4 ) + // InternalSolverLanguageParser.g:8050:2: rule__Interval__Group__3__Impl rule__Interval__Group__4 { - pushFollow(FOLLOW_42); - rule__AtomicExpression__Group_4__1__Impl(); + pushFollow(FOLLOW_52); + rule__Interval__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__AtomicExpression__Group_4__2(); + rule__Interval__Group__4(); state._fsp--; @@ -20432,29 +24851,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AtomicExpression__Group_4__1" + // $ANTLR end "rule__Interval__Group__3" - // $ANTLR start "rule__AtomicExpression__Group_4__1__Impl" - // InternalSolverLanguageParser.g:6590:1: rule__AtomicExpression__Group_4__1__Impl : ( ruleExpression ) ; - public final void rule__AtomicExpression__Group_4__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__3__Impl" + // InternalSolverLanguageParser.g:8057:1: rule__Interval__Group__3__Impl : ( ( rule__Interval__UpperBoundAssignment_3 ) ) ; + public final void rule__Interval__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6594:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:6595:1: ( ruleExpression ) + // InternalSolverLanguageParser.g:8061:1: ( ( ( rule__Interval__UpperBoundAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:8062:1: ( ( rule__Interval__UpperBoundAssignment_3 ) ) { - // InternalSolverLanguageParser.g:6595:1: ( ruleExpression ) - // InternalSolverLanguageParser.g:6596:2: ruleExpression + // InternalSolverLanguageParser.g:8062:1: ( ( rule__Interval__UpperBoundAssignment_3 ) ) + // InternalSolverLanguageParser.g:8063:2: ( rule__Interval__UpperBoundAssignment_3 ) + { + before(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3()); + // InternalSolverLanguageParser.g:8064:2: ( rule__Interval__UpperBoundAssignment_3 ) + // InternalSolverLanguageParser.g:8064:3: rule__Interval__UpperBoundAssignment_3 { - before(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); pushFollow(FOLLOW_2); - ruleExpression(); + rule__Interval__UpperBoundAssignment_3(); state._fsp--; - after(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); + + } + + after(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3()); } @@ -20473,21 +24898,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AtomicExpression__Group_4__1__Impl" + // $ANTLR end "rule__Interval__Group__3__Impl" - // $ANTLR start "rule__AtomicExpression__Group_4__2" - // InternalSolverLanguageParser.g:6605:1: rule__AtomicExpression__Group_4__2 : rule__AtomicExpression__Group_4__2__Impl ; - public final void rule__AtomicExpression__Group_4__2() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__4" + // InternalSolverLanguageParser.g:8072:1: rule__Interval__Group__4 : rule__Interval__Group__4__Impl ; + public final void rule__Interval__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6609:1: ( rule__AtomicExpression__Group_4__2__Impl ) - // InternalSolverLanguageParser.g:6610:2: rule__AtomicExpression__Group_4__2__Impl + // InternalSolverLanguageParser.g:8076:1: ( rule__Interval__Group__4__Impl ) + // InternalSolverLanguageParser.g:8077:2: rule__Interval__Group__4__Impl { pushFollow(FOLLOW_2); - rule__AtomicExpression__Group_4__2__Impl(); + rule__Interval__Group__4__Impl(); state._fsp--; @@ -20506,25 +24931,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AtomicExpression__Group_4__2" + // $ANTLR end "rule__Interval__Group__4" - // $ANTLR start "rule__AtomicExpression__Group_4__2__Impl" - // InternalSolverLanguageParser.g:6616:1: rule__AtomicExpression__Group_4__2__Impl : ( RightParenthesis ) ; - public final void rule__AtomicExpression__Group_4__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Interval__Group__4__Impl" + // InternalSolverLanguageParser.g:8083:1: rule__Interval__Group__4__Impl : ( RightSquareBracket ) ; + public final void rule__Interval__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6620:1: ( ( RightParenthesis ) ) - // InternalSolverLanguageParser.g:6621:1: ( RightParenthesis ) + // InternalSolverLanguageParser.g:8087:1: ( ( RightSquareBracket ) ) + // InternalSolverLanguageParser.g:8088:1: ( RightSquareBracket ) { - // InternalSolverLanguageParser.g:6621:1: ( RightParenthesis ) - // InternalSolverLanguageParser.g:6622:2: RightParenthesis + // InternalSolverLanguageParser.g:8088:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:8089:2: RightSquareBracket { - before(grammarAccess.getAtomicExpressionAccess().getRightParenthesisKeyword_4_2()); - match(input,RightParenthesis,FOLLOW_2); - after(grammarAccess.getAtomicExpressionAccess().getRightParenthesisKeyword_4_2()); + before(grammarAccess.getIntervalAccess().getRightSquareBracketKeyword_4()); + match(input,RightSquareBracket,FOLLOW_2); + after(grammarAccess.getIntervalAccess().getRightSquareBracketKeyword_4()); } @@ -20543,26 +24968,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AtomicExpression__Group_4__2__Impl" + // $ANTLR end "rule__Interval__Group__4__Impl" - // $ANTLR start "rule__Call__Group__0" - // InternalSolverLanguageParser.g:6632:1: rule__Call__Group__0 : rule__Call__Group__0__Impl rule__Call__Group__1 ; - public final void rule__Call__Group__0() throws RecognitionException { + // $ANTLR start "rule__InfinityLiteral__Group__0" + // InternalSolverLanguageParser.g:8099:1: rule__InfinityLiteral__Group__0 : rule__InfinityLiteral__Group__0__Impl rule__InfinityLiteral__Group__1 ; + public final void rule__InfinityLiteral__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6636:1: ( rule__Call__Group__0__Impl rule__Call__Group__1 ) - // InternalSolverLanguageParser.g:6637:2: rule__Call__Group__0__Impl rule__Call__Group__1 + // InternalSolverLanguageParser.g:8103:1: ( rule__InfinityLiteral__Group__0__Impl rule__InfinityLiteral__Group__1 ) + // InternalSolverLanguageParser.g:8104:2: rule__InfinityLiteral__Group__0__Impl rule__InfinityLiteral__Group__1 { - pushFollow(FOLLOW_43); - rule__Call__Group__0__Impl(); + pushFollow(FOLLOW_53); + rule__InfinityLiteral__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Call__Group__1(); + rule__InfinityLiteral__Group__1(); state._fsp--; @@ -20581,35 +25006,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__Group__0" + // $ANTLR end "rule__InfinityLiteral__Group__0" - // $ANTLR start "rule__Call__Group__0__Impl" - // InternalSolverLanguageParser.g:6644:1: rule__Call__Group__0__Impl : ( ( rule__Call__FunctorAssignment_0 ) ) ; - public final void rule__Call__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__InfinityLiteral__Group__0__Impl" + // InternalSolverLanguageParser.g:8111:1: rule__InfinityLiteral__Group__0__Impl : ( () ) ; + public final void rule__InfinityLiteral__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6648:1: ( ( ( rule__Call__FunctorAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:6649:1: ( ( rule__Call__FunctorAssignment_0 ) ) + // InternalSolverLanguageParser.g:8115:1: ( ( () ) ) + // InternalSolverLanguageParser.g:8116:1: ( () ) { - // InternalSolverLanguageParser.g:6649:1: ( ( rule__Call__FunctorAssignment_0 ) ) - // InternalSolverLanguageParser.g:6650:2: ( rule__Call__FunctorAssignment_0 ) + // InternalSolverLanguageParser.g:8116:1: ( () ) + // InternalSolverLanguageParser.g:8117:2: () { - before(grammarAccess.getCallAccess().getFunctorAssignment_0()); - // InternalSolverLanguageParser.g:6651:2: ( rule__Call__FunctorAssignment_0 ) - // InternalSolverLanguageParser.g:6651:3: rule__Call__FunctorAssignment_0 + before(grammarAccess.getInfinityLiteralAccess().getInfinityLiteralAction_0()); + // InternalSolverLanguageParser.g:8118:2: () + // InternalSolverLanguageParser.g:8118:3: { - pushFollow(FOLLOW_2); - rule__Call__FunctorAssignment_0(); - - state._fsp--; - - } - after(grammarAccess.getCallAccess().getFunctorAssignment_0()); + after(grammarAccess.getInfinityLiteralAccess().getInfinityLiteralAction_0()); } @@ -20617,10 +25036,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -20628,26 +25043,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__Group__0__Impl" + // $ANTLR end "rule__InfinityLiteral__Group__0__Impl" - // $ANTLR start "rule__Call__Group__1" - // InternalSolverLanguageParser.g:6659:1: rule__Call__Group__1 : rule__Call__Group__1__Impl rule__Call__Group__2 ; - public final void rule__Call__Group__1() throws RecognitionException { + // $ANTLR start "rule__InfinityLiteral__Group__1" + // InternalSolverLanguageParser.g:8126:1: rule__InfinityLiteral__Group__1 : rule__InfinityLiteral__Group__1__Impl ; + public final void rule__InfinityLiteral__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6663:1: ( rule__Call__Group__1__Impl rule__Call__Group__2 ) - // InternalSolverLanguageParser.g:6664:2: rule__Call__Group__1__Impl rule__Call__Group__2 + // InternalSolverLanguageParser.g:8130:1: ( rule__InfinityLiteral__Group__1__Impl ) + // InternalSolverLanguageParser.g:8131:2: rule__InfinityLiteral__Group__1__Impl { - pushFollow(FOLLOW_43); - rule__Call__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__Call__Group__2(); + rule__InfinityLiteral__Group__1__Impl(); state._fsp--; @@ -20666,46 +25076,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__Group__1" + // $ANTLR end "rule__InfinityLiteral__Group__1" - // $ANTLR start "rule__Call__Group__1__Impl" - // InternalSolverLanguageParser.g:6671:1: rule__Call__Group__1__Impl : ( ( rule__Call__Alternatives_1 )? ) ; - public final void rule__Call__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__InfinityLiteral__Group__1__Impl" + // InternalSolverLanguageParser.g:8137:1: rule__InfinityLiteral__Group__1__Impl : ( Inf ) ; + public final void rule__InfinityLiteral__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6675:1: ( ( ( rule__Call__Alternatives_1 )? ) ) - // InternalSolverLanguageParser.g:6676:1: ( ( rule__Call__Alternatives_1 )? ) + // InternalSolverLanguageParser.g:8141:1: ( ( Inf ) ) + // InternalSolverLanguageParser.g:8142:1: ( Inf ) { - // InternalSolverLanguageParser.g:6676:1: ( ( rule__Call__Alternatives_1 )? ) - // InternalSolverLanguageParser.g:6677:2: ( rule__Call__Alternatives_1 )? + // InternalSolverLanguageParser.g:8142:1: ( Inf ) + // InternalSolverLanguageParser.g:8143:2: Inf { - before(grammarAccess.getCallAccess().getAlternatives_1()); - // InternalSolverLanguageParser.g:6678:2: ( rule__Call__Alternatives_1 )? - int alt48=2; - int LA48_0 = input.LA(1); - - if ( ((LA48_0>=RULE_TRANSITIVE_CLOSURE && LA48_0<=RULE_REFLEXIVE_TRANSITIVE_CLOSURE)) ) { - alt48=1; - } - switch (alt48) { - case 1 : - // InternalSolverLanguageParser.g:6678:3: rule__Call__Alternatives_1 - { - pushFollow(FOLLOW_2); - rule__Call__Alternatives_1(); - - state._fsp--; - - - } - break; - - } - - after(grammarAccess.getCallAccess().getAlternatives_1()); + before(grammarAccess.getInfinityLiteralAccess().getInfKeyword_1()); + match(input,Inf,FOLLOW_2); + after(grammarAccess.getInfinityLiteralAccess().getInfKeyword_1()); } @@ -20724,21 +25113,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__Group__1__Impl" + // $ANTLR end "rule__InfinityLiteral__Group__1__Impl" - // $ANTLR start "rule__Call__Group__2" - // InternalSolverLanguageParser.g:6686:1: rule__Call__Group__2 : rule__Call__Group__2__Impl ; - public final void rule__Call__Group__2() throws RecognitionException { + // $ANTLR start "rule__EmptyLiteral__Group__0" + // InternalSolverLanguageParser.g:8153:1: rule__EmptyLiteral__Group__0 : rule__EmptyLiteral__Group__0__Impl rule__EmptyLiteral__Group__1 ; + public final void rule__EmptyLiteral__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6690:1: ( rule__Call__Group__2__Impl ) - // InternalSolverLanguageParser.g:6691:2: rule__Call__Group__2__Impl + // InternalSolverLanguageParser.g:8157:1: ( rule__EmptyLiteral__Group__0__Impl rule__EmptyLiteral__Group__1 ) + // InternalSolverLanguageParser.g:8158:2: rule__EmptyLiteral__Group__0__Impl rule__EmptyLiteral__Group__1 { + pushFollow(FOLLOW_54); + rule__EmptyLiteral__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__Call__Group__2__Impl(); + rule__EmptyLiteral__Group__1(); state._fsp--; @@ -20757,35 +25151,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__Group__2" + // $ANTLR end "rule__EmptyLiteral__Group__0" - // $ANTLR start "rule__Call__Group__2__Impl" - // InternalSolverLanguageParser.g:6697:1: rule__Call__Group__2__Impl : ( ( rule__Call__ArgumentListAssignment_2 ) ) ; - public final void rule__Call__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__EmptyLiteral__Group__0__Impl" + // InternalSolverLanguageParser.g:8165:1: rule__EmptyLiteral__Group__0__Impl : ( () ) ; + public final void rule__EmptyLiteral__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6701:1: ( ( ( rule__Call__ArgumentListAssignment_2 ) ) ) - // InternalSolverLanguageParser.g:6702:1: ( ( rule__Call__ArgumentListAssignment_2 ) ) + // InternalSolverLanguageParser.g:8169:1: ( ( () ) ) + // InternalSolverLanguageParser.g:8170:1: ( () ) { - // InternalSolverLanguageParser.g:6702:1: ( ( rule__Call__ArgumentListAssignment_2 ) ) - // InternalSolverLanguageParser.g:6703:2: ( rule__Call__ArgumentListAssignment_2 ) + // InternalSolverLanguageParser.g:8170:1: ( () ) + // InternalSolverLanguageParser.g:8171:2: () { - before(grammarAccess.getCallAccess().getArgumentListAssignment_2()); - // InternalSolverLanguageParser.g:6704:2: ( rule__Call__ArgumentListAssignment_2 ) - // InternalSolverLanguageParser.g:6704:3: rule__Call__ArgumentListAssignment_2 + before(grammarAccess.getEmptyLiteralAccess().getEmptyLiteralAction_0()); + // InternalSolverLanguageParser.g:8172:2: () + // InternalSolverLanguageParser.g:8172:3: { - pushFollow(FOLLOW_2); - rule__Call__ArgumentListAssignment_2(); - - state._fsp--; - - } - after(grammarAccess.getCallAccess().getArgumentListAssignment_2()); + after(grammarAccess.getEmptyLiteralAccess().getEmptyLiteralAction_0()); } @@ -20793,10 +25181,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -20804,26 +25188,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__Group__2__Impl" + // $ANTLR end "rule__EmptyLiteral__Group__0__Impl" - // $ANTLR start "rule__ArgumentList__Group__0" - // InternalSolverLanguageParser.g:6713:1: rule__ArgumentList__Group__0 : rule__ArgumentList__Group__0__Impl rule__ArgumentList__Group__1 ; - public final void rule__ArgumentList__Group__0() throws RecognitionException { + // $ANTLR start "rule__EmptyLiteral__Group__1" + // InternalSolverLanguageParser.g:8180:1: rule__EmptyLiteral__Group__1 : rule__EmptyLiteral__Group__1__Impl ; + public final void rule__EmptyLiteral__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6717:1: ( rule__ArgumentList__Group__0__Impl rule__ArgumentList__Group__1 ) - // InternalSolverLanguageParser.g:6718:2: rule__ArgumentList__Group__0__Impl rule__ArgumentList__Group__1 + // InternalSolverLanguageParser.g:8184:1: ( rule__EmptyLiteral__Group__1__Impl ) + // InternalSolverLanguageParser.g:8185:2: rule__EmptyLiteral__Group__1__Impl { - pushFollow(FOLLOW_12); - rule__ArgumentList__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ArgumentList__Group__1(); + rule__EmptyLiteral__Group__1__Impl(); state._fsp--; @@ -20842,29 +25221,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group__0" + // $ANTLR end "rule__EmptyLiteral__Group__1" - // $ANTLR start "rule__ArgumentList__Group__0__Impl" - // InternalSolverLanguageParser.g:6725:1: rule__ArgumentList__Group__0__Impl : ( () ) ; - public final void rule__ArgumentList__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__EmptyLiteral__Group__1__Impl" + // InternalSolverLanguageParser.g:8191:1: rule__EmptyLiteral__Group__1__Impl : ( Empty ) ; + public final void rule__EmptyLiteral__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6729:1: ( ( () ) ) - // InternalSolverLanguageParser.g:6730:1: ( () ) - { - // InternalSolverLanguageParser.g:6730:1: ( () ) - // InternalSolverLanguageParser.g:6731:2: () + // InternalSolverLanguageParser.g:8195:1: ( ( Empty ) ) + // InternalSolverLanguageParser.g:8196:1: ( Empty ) { - before(grammarAccess.getArgumentListAccess().getArgumentListAction_0()); - // InternalSolverLanguageParser.g:6732:2: () - // InternalSolverLanguageParser.g:6732:3: + // InternalSolverLanguageParser.g:8196:1: ( Empty ) + // InternalSolverLanguageParser.g:8197:2: Empty { - } - - after(grammarAccess.getArgumentListAccess().getArgumentListAction_0()); + before(grammarAccess.getEmptyLiteralAccess().getEmptyKeyword_1()); + match(input,Empty,FOLLOW_2); + after(grammarAccess.getEmptyLiteralAccess().getEmptyKeyword_1()); } @@ -20872,6 +25247,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -20879,26 +25258,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group__0__Impl" + // $ANTLR end "rule__EmptyLiteral__Group__1__Impl" - // $ANTLR start "rule__ArgumentList__Group__1" - // InternalSolverLanguageParser.g:6740:1: rule__ArgumentList__Group__1 : rule__ArgumentList__Group__1__Impl rule__ArgumentList__Group__2 ; - public final void rule__ArgumentList__Group__1() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__0" + // InternalSolverLanguageParser.g:8207:1: rule__ClassDeclaration__Group__0 : rule__ClassDeclaration__Group__0__Impl rule__ClassDeclaration__Group__1 ; + public final void rule__ClassDeclaration__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6744:1: ( rule__ArgumentList__Group__1__Impl rule__ArgumentList__Group__2 ) - // InternalSolverLanguageParser.g:6745:2: rule__ArgumentList__Group__1__Impl rule__ArgumentList__Group__2 + // InternalSolverLanguageParser.g:8211:1: ( rule__ClassDeclaration__Group__0__Impl rule__ClassDeclaration__Group__1 ) + // InternalSolverLanguageParser.g:8212:2: rule__ClassDeclaration__Group__0__Impl rule__ClassDeclaration__Group__1 { - pushFollow(FOLLOW_44); - rule__ArgumentList__Group__1__Impl(); + pushFollow(FOLLOW_55); + rule__ClassDeclaration__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ArgumentList__Group__2(); + rule__ClassDeclaration__Group__1(); state._fsp--; @@ -20917,25 +25296,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group__1" + // $ANTLR end "rule__ClassDeclaration__Group__0" - // $ANTLR start "rule__ArgumentList__Group__1__Impl" - // InternalSolverLanguageParser.g:6752:1: rule__ArgumentList__Group__1__Impl : ( LeftParenthesis ) ; - public final void rule__ArgumentList__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__0__Impl" + // InternalSolverLanguageParser.g:8219:1: rule__ClassDeclaration__Group__0__Impl : ( ( rule__ClassDeclaration__UnorderedGroup_0 ) ) ; + public final void rule__ClassDeclaration__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6756:1: ( ( LeftParenthesis ) ) - // InternalSolverLanguageParser.g:6757:1: ( LeftParenthesis ) + // InternalSolverLanguageParser.g:8223:1: ( ( ( rule__ClassDeclaration__UnorderedGroup_0 ) ) ) + // InternalSolverLanguageParser.g:8224:1: ( ( rule__ClassDeclaration__UnorderedGroup_0 ) ) { - // InternalSolverLanguageParser.g:6757:1: ( LeftParenthesis ) - // InternalSolverLanguageParser.g:6758:2: LeftParenthesis + // InternalSolverLanguageParser.g:8224:1: ( ( rule__ClassDeclaration__UnorderedGroup_0 ) ) + // InternalSolverLanguageParser.g:8225:2: ( rule__ClassDeclaration__UnorderedGroup_0 ) { - before(grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); - match(input,LeftParenthesis,FOLLOW_2); - after(grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); + before(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); + // InternalSolverLanguageParser.g:8226:2: ( rule__ClassDeclaration__UnorderedGroup_0 ) + // InternalSolverLanguageParser.g:8226:3: rule__ClassDeclaration__UnorderedGroup_0 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__UnorderedGroup_0(); + + state._fsp--; + + + } + + after(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); } @@ -20954,26 +25343,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group__1__Impl" + // $ANTLR end "rule__ClassDeclaration__Group__0__Impl" - // $ANTLR start "rule__ArgumentList__Group__2" - // InternalSolverLanguageParser.g:6767:1: rule__ArgumentList__Group__2 : rule__ArgumentList__Group__2__Impl rule__ArgumentList__Group__3 ; - public final void rule__ArgumentList__Group__2() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__1" + // InternalSolverLanguageParser.g:8234:1: rule__ClassDeclaration__Group__1 : rule__ClassDeclaration__Group__1__Impl rule__ClassDeclaration__Group__2 ; + public final void rule__ClassDeclaration__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6771:1: ( rule__ArgumentList__Group__2__Impl rule__ArgumentList__Group__3 ) - // InternalSolverLanguageParser.g:6772:2: rule__ArgumentList__Group__2__Impl rule__ArgumentList__Group__3 + // InternalSolverLanguageParser.g:8238:1: ( rule__ClassDeclaration__Group__1__Impl rule__ClassDeclaration__Group__2 ) + // InternalSolverLanguageParser.g:8239:2: rule__ClassDeclaration__Group__1__Impl rule__ClassDeclaration__Group__2 { - pushFollow(FOLLOW_44); - rule__ArgumentList__Group__2__Impl(); + pushFollow(FOLLOW_48); + rule__ClassDeclaration__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ArgumentList__Group__3(); + rule__ClassDeclaration__Group__2(); state._fsp--; @@ -20992,46 +25381,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group__2" + // $ANTLR end "rule__ClassDeclaration__Group__1" - // $ANTLR start "rule__ArgumentList__Group__2__Impl" - // InternalSolverLanguageParser.g:6779:1: rule__ArgumentList__Group__2__Impl : ( ( rule__ArgumentList__Group_2__0 )? ) ; - public final void rule__ArgumentList__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__1__Impl" + // InternalSolverLanguageParser.g:8246:1: rule__ClassDeclaration__Group__1__Impl : ( Class ) ; + public final void rule__ClassDeclaration__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6783:1: ( ( ( rule__ArgumentList__Group_2__0 )? ) ) - // InternalSolverLanguageParser.g:6784:1: ( ( rule__ArgumentList__Group_2__0 )? ) + // InternalSolverLanguageParser.g:8250:1: ( ( Class ) ) + // InternalSolverLanguageParser.g:8251:1: ( Class ) { - // InternalSolverLanguageParser.g:6784:1: ( ( rule__ArgumentList__Group_2__0 )? ) - // InternalSolverLanguageParser.g:6785:2: ( rule__ArgumentList__Group_2__0 )? + // InternalSolverLanguageParser.g:8251:1: ( Class ) + // InternalSolverLanguageParser.g:8252:2: Class { - before(grammarAccess.getArgumentListAccess().getGroup_2()); - // InternalSolverLanguageParser.g:6786:2: ( rule__ArgumentList__Group_2__0 )? - int alt49=2; - int LA49_0 = input.LA(1); - - if ( (LA49_0==Current||(LA49_0>=Unknown && LA49_0<=Exists)||LA49_0==Forall||(LA49_0>=Count && LA49_0<=False)||LA49_0==Must||LA49_0==True||LA49_0==Inf||LA49_0==May||(LA49_0>=ExclamationMark && LA49_0<=LeftParenthesis)||(LA49_0>=Asterisk && LA49_0<=PlusSign)||LA49_0==HyphenMinus||LA49_0==LeftSquareBracket||(LA49_0>=RULE_STRING && LA49_0<=RULE_QUOTED_ID)||(LA49_0>=RULE_ID && LA49_0<=RULE_INT)) ) { - alt49=1; - } - switch (alt49) { - case 1 : - // InternalSolverLanguageParser.g:6786:3: rule__ArgumentList__Group_2__0 - { - pushFollow(FOLLOW_2); - rule__ArgumentList__Group_2__0(); - - state._fsp--; - - - } - break; - - } - - after(grammarAccess.getArgumentListAccess().getGroup_2()); + before(grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); + match(input,Class,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); } @@ -21050,21 +25418,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group__2__Impl" + // $ANTLR end "rule__ClassDeclaration__Group__1__Impl" - // $ANTLR start "rule__ArgumentList__Group__3" - // InternalSolverLanguageParser.g:6794:1: rule__ArgumentList__Group__3 : rule__ArgumentList__Group__3__Impl ; - public final void rule__ArgumentList__Group__3() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__2" + // InternalSolverLanguageParser.g:8261:1: rule__ClassDeclaration__Group__2 : rule__ClassDeclaration__Group__2__Impl rule__ClassDeclaration__Group__3 ; + public final void rule__ClassDeclaration__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6798:1: ( rule__ArgumentList__Group__3__Impl ) - // InternalSolverLanguageParser.g:6799:2: rule__ArgumentList__Group__3__Impl + // InternalSolverLanguageParser.g:8265:1: ( rule__ClassDeclaration__Group__2__Impl rule__ClassDeclaration__Group__3 ) + // InternalSolverLanguageParser.g:8266:2: rule__ClassDeclaration__Group__2__Impl rule__ClassDeclaration__Group__3 { + pushFollow(FOLLOW_56); + rule__ClassDeclaration__Group__2__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ArgumentList__Group__3__Impl(); + rule__ClassDeclaration__Group__3(); state._fsp--; @@ -21083,25 +25456,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group__3" + // $ANTLR end "rule__ClassDeclaration__Group__2" - // $ANTLR start "rule__ArgumentList__Group__3__Impl" - // InternalSolverLanguageParser.g:6805:1: rule__ArgumentList__Group__3__Impl : ( RightParenthesis ) ; - public final void rule__ArgumentList__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__2__Impl" + // InternalSolverLanguageParser.g:8273:1: rule__ClassDeclaration__Group__2__Impl : ( ( rule__ClassDeclaration__NameAssignment_2 ) ) ; + public final void rule__ClassDeclaration__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6809:1: ( ( RightParenthesis ) ) - // InternalSolverLanguageParser.g:6810:1: ( RightParenthesis ) + // InternalSolverLanguageParser.g:8277:1: ( ( ( rule__ClassDeclaration__NameAssignment_2 ) ) ) + // InternalSolverLanguageParser.g:8278:1: ( ( rule__ClassDeclaration__NameAssignment_2 ) ) { - // InternalSolverLanguageParser.g:6810:1: ( RightParenthesis ) - // InternalSolverLanguageParser.g:6811:2: RightParenthesis + // InternalSolverLanguageParser.g:8278:1: ( ( rule__ClassDeclaration__NameAssignment_2 ) ) + // InternalSolverLanguageParser.g:8279:2: ( rule__ClassDeclaration__NameAssignment_2 ) { - before(grammarAccess.getArgumentListAccess().getRightParenthesisKeyword_3()); - match(input,RightParenthesis,FOLLOW_2); - after(grammarAccess.getArgumentListAccess().getRightParenthesisKeyword_3()); + before(grammarAccess.getClassDeclarationAccess().getNameAssignment_2()); + // InternalSolverLanguageParser.g:8280:2: ( rule__ClassDeclaration__NameAssignment_2 ) + // InternalSolverLanguageParser.g:8280:3: rule__ClassDeclaration__NameAssignment_2 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__NameAssignment_2(); + + state._fsp--; + + + } + + after(grammarAccess.getClassDeclarationAccess().getNameAssignment_2()); } @@ -21120,26 +25503,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group__3__Impl" + // $ANTLR end "rule__ClassDeclaration__Group__2__Impl" - // $ANTLR start "rule__ArgumentList__Group_2__0" - // InternalSolverLanguageParser.g:6821:1: rule__ArgumentList__Group_2__0 : rule__ArgumentList__Group_2__0__Impl rule__ArgumentList__Group_2__1 ; - public final void rule__ArgumentList__Group_2__0() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__3" + // InternalSolverLanguageParser.g:8288:1: rule__ClassDeclaration__Group__3 : rule__ClassDeclaration__Group__3__Impl rule__ClassDeclaration__Group__4 ; + public final void rule__ClassDeclaration__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6825:1: ( rule__ArgumentList__Group_2__0__Impl rule__ArgumentList__Group_2__1 ) - // InternalSolverLanguageParser.g:6826:2: rule__ArgumentList__Group_2__0__Impl rule__ArgumentList__Group_2__1 + // InternalSolverLanguageParser.g:8292:1: ( rule__ClassDeclaration__Group__3__Impl rule__ClassDeclaration__Group__4 ) + // InternalSolverLanguageParser.g:8293:2: rule__ClassDeclaration__Group__3__Impl rule__ClassDeclaration__Group__4 { - pushFollow(FOLLOW_19); - rule__ArgumentList__Group_2__0__Impl(); + pushFollow(FOLLOW_56); + rule__ClassDeclaration__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ArgumentList__Group_2__1(); + rule__ClassDeclaration__Group__4(); state._fsp--; @@ -21158,35 +25541,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group_2__0" + // $ANTLR end "rule__ClassDeclaration__Group__3" - // $ANTLR start "rule__ArgumentList__Group_2__0__Impl" - // InternalSolverLanguageParser.g:6833:1: rule__ArgumentList__Group_2__0__Impl : ( ( rule__ArgumentList__ArgumentsAssignment_2_0 ) ) ; - public final void rule__ArgumentList__Group_2__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__3__Impl" + // InternalSolverLanguageParser.g:8300:1: rule__ClassDeclaration__Group__3__Impl : ( ( rule__ClassDeclaration__Group_3__0 )? ) ; + public final void rule__ClassDeclaration__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6837:1: ( ( ( rule__ArgumentList__ArgumentsAssignment_2_0 ) ) ) - // InternalSolverLanguageParser.g:6838:1: ( ( rule__ArgumentList__ArgumentsAssignment_2_0 ) ) + // InternalSolverLanguageParser.g:8304:1: ( ( ( rule__ClassDeclaration__Group_3__0 )? ) ) + // InternalSolverLanguageParser.g:8305:1: ( ( rule__ClassDeclaration__Group_3__0 )? ) { - // InternalSolverLanguageParser.g:6838:1: ( ( rule__ArgumentList__ArgumentsAssignment_2_0 ) ) - // InternalSolverLanguageParser.g:6839:2: ( rule__ArgumentList__ArgumentsAssignment_2_0 ) + // InternalSolverLanguageParser.g:8305:1: ( ( rule__ClassDeclaration__Group_3__0 )? ) + // InternalSolverLanguageParser.g:8306:2: ( rule__ClassDeclaration__Group_3__0 )? { - before(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0()); - // InternalSolverLanguageParser.g:6840:2: ( rule__ArgumentList__ArgumentsAssignment_2_0 ) - // InternalSolverLanguageParser.g:6840:3: rule__ArgumentList__ArgumentsAssignment_2_0 - { - pushFollow(FOLLOW_2); - rule__ArgumentList__ArgumentsAssignment_2_0(); + before(grammarAccess.getClassDeclarationAccess().getGroup_3()); + // InternalSolverLanguageParser.g:8307:2: ( rule__ClassDeclaration__Group_3__0 )? + int alt56=2; + int LA56_0 = input.LA(1); + + if ( (LA56_0==Extends) ) { + alt56=1; + } + switch (alt56) { + case 1 : + // InternalSolverLanguageParser.g:8307:3: rule__ClassDeclaration__Group_3__0 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__Group_3__0(); + + state._fsp--; - state._fsp--; + } + break; } - after(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_0()); + after(grammarAccess.getClassDeclarationAccess().getGroup_3()); } @@ -21205,21 +25599,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group_2__0__Impl" + // $ANTLR end "rule__ClassDeclaration__Group__3__Impl" - // $ANTLR start "rule__ArgumentList__Group_2__1" - // InternalSolverLanguageParser.g:6848:1: rule__ArgumentList__Group_2__1 : rule__ArgumentList__Group_2__1__Impl ; - public final void rule__ArgumentList__Group_2__1() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__4" + // InternalSolverLanguageParser.g:8315:1: rule__ClassDeclaration__Group__4 : rule__ClassDeclaration__Group__4__Impl ; + public final void rule__ClassDeclaration__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6852:1: ( rule__ArgumentList__Group_2__1__Impl ) - // InternalSolverLanguageParser.g:6853:2: rule__ArgumentList__Group_2__1__Impl + // InternalSolverLanguageParser.g:8319:1: ( rule__ClassDeclaration__Group__4__Impl ) + // InternalSolverLanguageParser.g:8320:2: rule__ClassDeclaration__Group__4__Impl { pushFollow(FOLLOW_2); - rule__ArgumentList__Group_2__1__Impl(); + rule__ClassDeclaration__Group__4__Impl(); state._fsp--; @@ -21238,53 +25632,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group_2__1" + // $ANTLR end "rule__ClassDeclaration__Group__4" - // $ANTLR start "rule__ArgumentList__Group_2__1__Impl" - // InternalSolverLanguageParser.g:6859:1: rule__ArgumentList__Group_2__1__Impl : ( ( rule__ArgumentList__Group_2_1__0 )* ) ; - public final void rule__ArgumentList__Group_2__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group__4__Impl" + // InternalSolverLanguageParser.g:8326:1: rule__ClassDeclaration__Group__4__Impl : ( ( rule__ClassDeclaration__Alternatives_4 ) ) ; + public final void rule__ClassDeclaration__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6863:1: ( ( ( rule__ArgumentList__Group_2_1__0 )* ) ) - // InternalSolverLanguageParser.g:6864:1: ( ( rule__ArgumentList__Group_2_1__0 )* ) + // InternalSolverLanguageParser.g:8330:1: ( ( ( rule__ClassDeclaration__Alternatives_4 ) ) ) + // InternalSolverLanguageParser.g:8331:1: ( ( rule__ClassDeclaration__Alternatives_4 ) ) { - // InternalSolverLanguageParser.g:6864:1: ( ( rule__ArgumentList__Group_2_1__0 )* ) - // InternalSolverLanguageParser.g:6865:2: ( rule__ArgumentList__Group_2_1__0 )* + // InternalSolverLanguageParser.g:8331:1: ( ( rule__ClassDeclaration__Alternatives_4 ) ) + // InternalSolverLanguageParser.g:8332:2: ( rule__ClassDeclaration__Alternatives_4 ) { - before(grammarAccess.getArgumentListAccess().getGroup_2_1()); - // InternalSolverLanguageParser.g:6866:2: ( rule__ArgumentList__Group_2_1__0 )* - loop50: - do { - int alt50=2; - int LA50_0 = input.LA(1); - - if ( (LA50_0==Comma) ) { - alt50=1; - } - - - switch (alt50) { - case 1 : - // InternalSolverLanguageParser.g:6866:3: rule__ArgumentList__Group_2_1__0 - { - pushFollow(FOLLOW_20); - rule__ArgumentList__Group_2_1__0(); - - state._fsp--; + before(grammarAccess.getClassDeclarationAccess().getAlternatives_4()); + // InternalSolverLanguageParser.g:8333:2: ( rule__ClassDeclaration__Alternatives_4 ) + // InternalSolverLanguageParser.g:8333:3: rule__ClassDeclaration__Alternatives_4 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__Alternatives_4(); + state._fsp--; - } - break; - default : - break loop50; - } - } while (true); + } - after(grammarAccess.getArgumentListAccess().getGroup_2_1()); + after(grammarAccess.getClassDeclarationAccess().getAlternatives_4()); } @@ -21303,26 +25679,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group_2__1__Impl" + // $ANTLR end "rule__ClassDeclaration__Group__4__Impl" - // $ANTLR start "rule__ArgumentList__Group_2_1__0" - // InternalSolverLanguageParser.g:6875:1: rule__ArgumentList__Group_2_1__0 : rule__ArgumentList__Group_2_1__0__Impl rule__ArgumentList__Group_2_1__1 ; - public final void rule__ArgumentList__Group_2_1__0() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3__0" + // InternalSolverLanguageParser.g:8342:1: rule__ClassDeclaration__Group_3__0 : rule__ClassDeclaration__Group_3__0__Impl rule__ClassDeclaration__Group_3__1 ; + public final void rule__ClassDeclaration__Group_3__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6879:1: ( rule__ArgumentList__Group_2_1__0__Impl rule__ArgumentList__Group_2_1__1 ) - // InternalSolverLanguageParser.g:6880:2: rule__ArgumentList__Group_2_1__0__Impl rule__ArgumentList__Group_2_1__1 + // InternalSolverLanguageParser.g:8346:1: ( rule__ClassDeclaration__Group_3__0__Impl rule__ClassDeclaration__Group_3__1 ) + // InternalSolverLanguageParser.g:8347:2: rule__ClassDeclaration__Group_3__0__Impl rule__ClassDeclaration__Group_3__1 { - pushFollow(FOLLOW_45); - rule__ArgumentList__Group_2_1__0__Impl(); + pushFollow(FOLLOW_6); + rule__ClassDeclaration__Group_3__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ArgumentList__Group_2_1__1(); + rule__ClassDeclaration__Group_3__1(); state._fsp--; @@ -21341,25 +25717,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group_2_1__0" + // $ANTLR end "rule__ClassDeclaration__Group_3__0" - // $ANTLR start "rule__ArgumentList__Group_2_1__0__Impl" - // InternalSolverLanguageParser.g:6887:1: rule__ArgumentList__Group_2_1__0__Impl : ( Comma ) ; - public final void rule__ArgumentList__Group_2_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3__0__Impl" + // InternalSolverLanguageParser.g:8354:1: rule__ClassDeclaration__Group_3__0__Impl : ( Extends ) ; + public final void rule__ClassDeclaration__Group_3__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6891:1: ( ( Comma ) ) - // InternalSolverLanguageParser.g:6892:1: ( Comma ) + // InternalSolverLanguageParser.g:8358:1: ( ( Extends ) ) + // InternalSolverLanguageParser.g:8359:1: ( Extends ) { - // InternalSolverLanguageParser.g:6892:1: ( Comma ) - // InternalSolverLanguageParser.g:6893:2: Comma + // InternalSolverLanguageParser.g:8359:1: ( Extends ) + // InternalSolverLanguageParser.g:8360:2: Extends { - before(grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); - match(input,Comma,FOLLOW_2); - after(grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); + before(grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); + match(input,Extends,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); } @@ -21378,21 +25754,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group_2_1__0__Impl" + // $ANTLR end "rule__ClassDeclaration__Group_3__0__Impl" - // $ANTLR start "rule__ArgumentList__Group_2_1__1" - // InternalSolverLanguageParser.g:6902:1: rule__ArgumentList__Group_2_1__1 : rule__ArgumentList__Group_2_1__1__Impl ; - public final void rule__ArgumentList__Group_2_1__1() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3__1" + // InternalSolverLanguageParser.g:8369:1: rule__ClassDeclaration__Group_3__1 : rule__ClassDeclaration__Group_3__1__Impl rule__ClassDeclaration__Group_3__2 ; + public final void rule__ClassDeclaration__Group_3__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6906:1: ( rule__ArgumentList__Group_2_1__1__Impl ) - // InternalSolverLanguageParser.g:6907:2: rule__ArgumentList__Group_2_1__1__Impl + // InternalSolverLanguageParser.g:8373:1: ( rule__ClassDeclaration__Group_3__1__Impl rule__ClassDeclaration__Group_3__2 ) + // InternalSolverLanguageParser.g:8374:2: rule__ClassDeclaration__Group_3__1__Impl rule__ClassDeclaration__Group_3__2 { + pushFollow(FOLLOW_35); + rule__ClassDeclaration__Group_3__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ArgumentList__Group_2_1__1__Impl(); + rule__ClassDeclaration__Group_3__2(); state._fsp--; @@ -21411,35 +25792,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group_2_1__1" + // $ANTLR end "rule__ClassDeclaration__Group_3__1" - // $ANTLR start "rule__ArgumentList__Group_2_1__1__Impl" - // InternalSolverLanguageParser.g:6913:1: rule__ArgumentList__Group_2_1__1__Impl : ( ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) ) ; - public final void rule__ArgumentList__Group_2_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3__1__Impl" + // InternalSolverLanguageParser.g:8381:1: rule__ClassDeclaration__Group_3__1__Impl : ( ( rule__ClassDeclaration__SupertypesAssignment_3_1 ) ) ; + public final void rule__ClassDeclaration__Group_3__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6917:1: ( ( ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) ) ) - // InternalSolverLanguageParser.g:6918:1: ( ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) ) + // InternalSolverLanguageParser.g:8385:1: ( ( ( rule__ClassDeclaration__SupertypesAssignment_3_1 ) ) ) + // InternalSolverLanguageParser.g:8386:1: ( ( rule__ClassDeclaration__SupertypesAssignment_3_1 ) ) { - // InternalSolverLanguageParser.g:6918:1: ( ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) ) - // InternalSolverLanguageParser.g:6919:2: ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) + // InternalSolverLanguageParser.g:8386:1: ( ( rule__ClassDeclaration__SupertypesAssignment_3_1 ) ) + // InternalSolverLanguageParser.g:8387:2: ( rule__ClassDeclaration__SupertypesAssignment_3_1 ) { - before(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1()); - // InternalSolverLanguageParser.g:6920:2: ( rule__ArgumentList__ArgumentsAssignment_2_1_1 ) - // InternalSolverLanguageParser.g:6920:3: rule__ArgumentList__ArgumentsAssignment_2_1_1 + before(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_1()); + // InternalSolverLanguageParser.g:8388:2: ( rule__ClassDeclaration__SupertypesAssignment_3_1 ) + // InternalSolverLanguageParser.g:8388:3: rule__ClassDeclaration__SupertypesAssignment_3_1 { pushFollow(FOLLOW_2); - rule__ArgumentList__ArgumentsAssignment_2_1_1(); + rule__ClassDeclaration__SupertypesAssignment_3_1(); state._fsp--; } - after(grammarAccess.getArgumentListAccess().getArgumentsAssignment_2_1_1()); + after(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_1()); } @@ -21458,26 +25839,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__Group_2_1__1__Impl" + // $ANTLR end "rule__ClassDeclaration__Group_3__1__Impl" - // $ANTLR start "rule__StarArgument__Group__0" - // InternalSolverLanguageParser.g:6929:1: rule__StarArgument__Group__0 : rule__StarArgument__Group__0__Impl rule__StarArgument__Group__1 ; - public final void rule__StarArgument__Group__0() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3__2" + // InternalSolverLanguageParser.g:8396:1: rule__ClassDeclaration__Group_3__2 : rule__ClassDeclaration__Group_3__2__Impl ; + public final void rule__ClassDeclaration__Group_3__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6933:1: ( rule__StarArgument__Group__0__Impl rule__StarArgument__Group__1 ) - // InternalSolverLanguageParser.g:6934:2: rule__StarArgument__Group__0__Impl rule__StarArgument__Group__1 + // InternalSolverLanguageParser.g:8400:1: ( rule__ClassDeclaration__Group_3__2__Impl ) + // InternalSolverLanguageParser.g:8401:2: rule__ClassDeclaration__Group_3__2__Impl { - pushFollow(FOLLOW_46); - rule__StarArgument__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__StarArgument__Group__1(); + rule__ClassDeclaration__Group_3__2__Impl(); state._fsp--; @@ -21496,29 +25872,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__StarArgument__Group__0" + // $ANTLR end "rule__ClassDeclaration__Group_3__2" - // $ANTLR start "rule__StarArgument__Group__0__Impl" - // InternalSolverLanguageParser.g:6941:1: rule__StarArgument__Group__0__Impl : ( () ) ; - public final void rule__StarArgument__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3__2__Impl" + // InternalSolverLanguageParser.g:8407:1: rule__ClassDeclaration__Group_3__2__Impl : ( ( rule__ClassDeclaration__Group_3_2__0 )* ) ; + public final void rule__ClassDeclaration__Group_3__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6945:1: ( ( () ) ) - // InternalSolverLanguageParser.g:6946:1: ( () ) - { - // InternalSolverLanguageParser.g:6946:1: ( () ) - // InternalSolverLanguageParser.g:6947:2: () + // InternalSolverLanguageParser.g:8411:1: ( ( ( rule__ClassDeclaration__Group_3_2__0 )* ) ) + // InternalSolverLanguageParser.g:8412:1: ( ( rule__ClassDeclaration__Group_3_2__0 )* ) { - before(grammarAccess.getStarArgumentAccess().getStarArgumentAction_0()); - // InternalSolverLanguageParser.g:6948:2: () - // InternalSolverLanguageParser.g:6948:3: + // InternalSolverLanguageParser.g:8412:1: ( ( rule__ClassDeclaration__Group_3_2__0 )* ) + // InternalSolverLanguageParser.g:8413:2: ( rule__ClassDeclaration__Group_3_2__0 )* { - } + before(grammarAccess.getClassDeclarationAccess().getGroup_3_2()); + // InternalSolverLanguageParser.g:8414:2: ( rule__ClassDeclaration__Group_3_2__0 )* + loop57: + do { + int alt57=2; + int LA57_0 = input.LA(1); - after(grammarAccess.getStarArgumentAccess().getStarArgumentAction_0()); + if ( (LA57_0==Comma) ) { + alt57=1; + } + + + switch (alt57) { + case 1 : + // InternalSolverLanguageParser.g:8414:3: rule__ClassDeclaration__Group_3_2__0 + { + pushFollow(FOLLOW_29); + rule__ClassDeclaration__Group_3_2__0(); + + state._fsp--; + + + } + break; + + default : + break loop57; + } + } while (true); + + after(grammarAccess.getClassDeclarationAccess().getGroup_3_2()); } @@ -21526,6 +25926,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -21533,21 +25937,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__StarArgument__Group__0__Impl" + // $ANTLR end "rule__ClassDeclaration__Group_3__2__Impl" - // $ANTLR start "rule__StarArgument__Group__1" - // InternalSolverLanguageParser.g:6956:1: rule__StarArgument__Group__1 : rule__StarArgument__Group__1__Impl ; - public final void rule__StarArgument__Group__1() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3_2__0" + // InternalSolverLanguageParser.g:8423:1: rule__ClassDeclaration__Group_3_2__0 : rule__ClassDeclaration__Group_3_2__0__Impl rule__ClassDeclaration__Group_3_2__1 ; + public final void rule__ClassDeclaration__Group_3_2__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6960:1: ( rule__StarArgument__Group__1__Impl ) - // InternalSolverLanguageParser.g:6961:2: rule__StarArgument__Group__1__Impl + // InternalSolverLanguageParser.g:8427:1: ( rule__ClassDeclaration__Group_3_2__0__Impl rule__ClassDeclaration__Group_3_2__1 ) + // InternalSolverLanguageParser.g:8428:2: rule__ClassDeclaration__Group_3_2__0__Impl rule__ClassDeclaration__Group_3_2__1 { + pushFollow(FOLLOW_6); + rule__ClassDeclaration__Group_3_2__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__StarArgument__Group__1__Impl(); + rule__ClassDeclaration__Group_3_2__1(); state._fsp--; @@ -21566,25 +25975,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__StarArgument__Group__1" + // $ANTLR end "rule__ClassDeclaration__Group_3_2__0" - // $ANTLR start "rule__StarArgument__Group__1__Impl" - // InternalSolverLanguageParser.g:6967:1: rule__StarArgument__Group__1__Impl : ( Asterisk ) ; - public final void rule__StarArgument__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3_2__0__Impl" + // InternalSolverLanguageParser.g:8435:1: rule__ClassDeclaration__Group_3_2__0__Impl : ( Comma ) ; + public final void rule__ClassDeclaration__Group_3_2__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6971:1: ( ( Asterisk ) ) - // InternalSolverLanguageParser.g:6972:1: ( Asterisk ) + // InternalSolverLanguageParser.g:8439:1: ( ( Comma ) ) + // InternalSolverLanguageParser.g:8440:1: ( Comma ) { - // InternalSolverLanguageParser.g:6972:1: ( Asterisk ) - // InternalSolverLanguageParser.g:6973:2: Asterisk + // InternalSolverLanguageParser.g:8440:1: ( Comma ) + // InternalSolverLanguageParser.g:8441:2: Comma { - before(grammarAccess.getStarArgumentAccess().getAsteriskKeyword_1()); - match(input,Asterisk,FOLLOW_2); - after(grammarAccess.getStarArgumentAccess().getAsteriskKeyword_1()); + before(grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); + match(input,Comma,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); } @@ -21603,26 +26012,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__StarArgument__Group__1__Impl" + // $ANTLR end "rule__ClassDeclaration__Group_3_2__0__Impl" - // $ANTLR start "rule__TypedArgument__Group__0" - // InternalSolverLanguageParser.g:6983:1: rule__TypedArgument__Group__0 : rule__TypedArgument__Group__0__Impl rule__TypedArgument__Group__1 ; - public final void rule__TypedArgument__Group__0() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3_2__1" + // InternalSolverLanguageParser.g:8450:1: rule__ClassDeclaration__Group_3_2__1 : rule__ClassDeclaration__Group_3_2__1__Impl ; + public final void rule__ClassDeclaration__Group_3_2__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6987:1: ( rule__TypedArgument__Group__0__Impl rule__TypedArgument__Group__1 ) - // InternalSolverLanguageParser.g:6988:2: rule__TypedArgument__Group__0__Impl rule__TypedArgument__Group__1 + // InternalSolverLanguageParser.g:8454:1: ( rule__ClassDeclaration__Group_3_2__1__Impl ) + // InternalSolverLanguageParser.g:8455:2: rule__ClassDeclaration__Group_3_2__1__Impl { - pushFollow(FOLLOW_9); - rule__TypedArgument__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__TypedArgument__Group__1(); + rule__ClassDeclaration__Group_3_2__1__Impl(); state._fsp--; @@ -21641,35 +26045,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedArgument__Group__0" + // $ANTLR end "rule__ClassDeclaration__Group_3_2__1" - // $ANTLR start "rule__TypedArgument__Group__0__Impl" - // InternalSolverLanguageParser.g:6995:1: rule__TypedArgument__Group__0__Impl : ( ( rule__TypedArgument__TypeAssignment_0 ) ) ; - public final void rule__TypedArgument__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_3_2__1__Impl" + // InternalSolverLanguageParser.g:8461:1: rule__ClassDeclaration__Group_3_2__1__Impl : ( ( rule__ClassDeclaration__SupertypesAssignment_3_2_1 ) ) ; + public final void rule__ClassDeclaration__Group_3_2__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:6999:1: ( ( ( rule__TypedArgument__TypeAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:7000:1: ( ( rule__TypedArgument__TypeAssignment_0 ) ) + // InternalSolverLanguageParser.g:8465:1: ( ( ( rule__ClassDeclaration__SupertypesAssignment_3_2_1 ) ) ) + // InternalSolverLanguageParser.g:8466:1: ( ( rule__ClassDeclaration__SupertypesAssignment_3_2_1 ) ) { - // InternalSolverLanguageParser.g:7000:1: ( ( rule__TypedArgument__TypeAssignment_0 ) ) - // InternalSolverLanguageParser.g:7001:2: ( rule__TypedArgument__TypeAssignment_0 ) + // InternalSolverLanguageParser.g:8466:1: ( ( rule__ClassDeclaration__SupertypesAssignment_3_2_1 ) ) + // InternalSolverLanguageParser.g:8467:2: ( rule__ClassDeclaration__SupertypesAssignment_3_2_1 ) { - before(grammarAccess.getTypedArgumentAccess().getTypeAssignment_0()); - // InternalSolverLanguageParser.g:7002:2: ( rule__TypedArgument__TypeAssignment_0 ) - // InternalSolverLanguageParser.g:7002:3: rule__TypedArgument__TypeAssignment_0 + before(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_2_1()); + // InternalSolverLanguageParser.g:8468:2: ( rule__ClassDeclaration__SupertypesAssignment_3_2_1 ) + // InternalSolverLanguageParser.g:8468:3: rule__ClassDeclaration__SupertypesAssignment_3_2_1 { pushFollow(FOLLOW_2); - rule__TypedArgument__TypeAssignment_0(); + rule__ClassDeclaration__SupertypesAssignment_3_2_1(); state._fsp--; } - after(grammarAccess.getTypedArgumentAccess().getTypeAssignment_0()); + after(grammarAccess.getClassDeclarationAccess().getSupertypesAssignment_3_2_1()); } @@ -21688,21 +26092,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedArgument__Group__0__Impl" + // $ANTLR end "rule__ClassDeclaration__Group_3_2__1__Impl" - // $ANTLR start "rule__TypedArgument__Group__1" - // InternalSolverLanguageParser.g:7010:1: rule__TypedArgument__Group__1 : rule__TypedArgument__Group__1__Impl ; - public final void rule__TypedArgument__Group__1() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_4_0__0" + // InternalSolverLanguageParser.g:8477:1: rule__ClassDeclaration__Group_4_0__0 : rule__ClassDeclaration__Group_4_0__0__Impl rule__ClassDeclaration__Group_4_0__1 ; + public final void rule__ClassDeclaration__Group_4_0__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7014:1: ( rule__TypedArgument__Group__1__Impl ) - // InternalSolverLanguageParser.g:7015:2: rule__TypedArgument__Group__1__Impl + // InternalSolverLanguageParser.g:8481:1: ( rule__ClassDeclaration__Group_4_0__0__Impl rule__ClassDeclaration__Group_4_0__1 ) + // InternalSolverLanguageParser.g:8482:2: rule__ClassDeclaration__Group_4_0__0__Impl rule__ClassDeclaration__Group_4_0__1 { + pushFollow(FOLLOW_57); + rule__ClassDeclaration__Group_4_0__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__TypedArgument__Group__1__Impl(); + rule__ClassDeclaration__Group_4_0__1(); state._fsp--; @@ -21721,35 +26130,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedArgument__Group__1" + // $ANTLR end "rule__ClassDeclaration__Group_4_0__0" - // $ANTLR start "rule__TypedArgument__Group__1__Impl" - // InternalSolverLanguageParser.g:7021:1: rule__TypedArgument__Group__1__Impl : ( ( rule__TypedArgument__VariableAssignment_1 ) ) ; - public final void rule__TypedArgument__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_4_0__0__Impl" + // InternalSolverLanguageParser.g:8489:1: rule__ClassDeclaration__Group_4_0__0__Impl : ( LeftCurlyBracket ) ; + public final void rule__ClassDeclaration__Group_4_0__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7025:1: ( ( ( rule__TypedArgument__VariableAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:7026:1: ( ( rule__TypedArgument__VariableAssignment_1 ) ) + // InternalSolverLanguageParser.g:8493:1: ( ( LeftCurlyBracket ) ) + // InternalSolverLanguageParser.g:8494:1: ( LeftCurlyBracket ) { - // InternalSolverLanguageParser.g:7026:1: ( ( rule__TypedArgument__VariableAssignment_1 ) ) - // InternalSolverLanguageParser.g:7027:2: ( rule__TypedArgument__VariableAssignment_1 ) + // InternalSolverLanguageParser.g:8494:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:8495:2: LeftCurlyBracket { - before(grammarAccess.getTypedArgumentAccess().getVariableAssignment_1()); - // InternalSolverLanguageParser.g:7028:2: ( rule__TypedArgument__VariableAssignment_1 ) - // InternalSolverLanguageParser.g:7028:3: rule__TypedArgument__VariableAssignment_1 - { - pushFollow(FOLLOW_2); - rule__TypedArgument__VariableAssignment_1(); - - state._fsp--; - - - } - - after(grammarAccess.getTypedArgumentAccess().getVariableAssignment_1()); + before(grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); + match(input,LeftCurlyBracket,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); } @@ -21768,26 +26167,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedArgument__Group__1__Impl" + // $ANTLR end "rule__ClassDeclaration__Group_4_0__0__Impl" - // $ANTLR start "rule__TypedStarArgument__Group__0" - // InternalSolverLanguageParser.g:7037:1: rule__TypedStarArgument__Group__0 : rule__TypedStarArgument__Group__0__Impl rule__TypedStarArgument__Group__1 ; - public final void rule__TypedStarArgument__Group__0() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_4_0__1" + // InternalSolverLanguageParser.g:8504:1: rule__ClassDeclaration__Group_4_0__1 : rule__ClassDeclaration__Group_4_0__1__Impl rule__ClassDeclaration__Group_4_0__2 ; + public final void rule__ClassDeclaration__Group_4_0__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7041:1: ( rule__TypedStarArgument__Group__0__Impl rule__TypedStarArgument__Group__1 ) - // InternalSolverLanguageParser.g:7042:2: rule__TypedStarArgument__Group__0__Impl rule__TypedStarArgument__Group__1 + // InternalSolverLanguageParser.g:8508:1: ( rule__ClassDeclaration__Group_4_0__1__Impl rule__ClassDeclaration__Group_4_0__2 ) + // InternalSolverLanguageParser.g:8509:2: rule__ClassDeclaration__Group_4_0__1__Impl rule__ClassDeclaration__Group_4_0__2 { - pushFollow(FOLLOW_46); - rule__TypedStarArgument__Group__0__Impl(); + pushFollow(FOLLOW_57); + rule__ClassDeclaration__Group_4_0__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__TypedStarArgument__Group__1(); + rule__ClassDeclaration__Group_4_0__2(); state._fsp--; @@ -21806,35 +26205,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedStarArgument__Group__0" + // $ANTLR end "rule__ClassDeclaration__Group_4_0__1" - // $ANTLR start "rule__TypedStarArgument__Group__0__Impl" - // InternalSolverLanguageParser.g:7049:1: rule__TypedStarArgument__Group__0__Impl : ( ( rule__TypedStarArgument__TypeAssignment_0 ) ) ; - public final void rule__TypedStarArgument__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_4_0__1__Impl" + // InternalSolverLanguageParser.g:8516:1: rule__ClassDeclaration__Group_4_0__1__Impl : ( ( rule__ClassDeclaration__FieldsAssignment_4_0_1 )* ) ; + public final void rule__ClassDeclaration__Group_4_0__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7053:1: ( ( ( rule__TypedStarArgument__TypeAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:7054:1: ( ( rule__TypedStarArgument__TypeAssignment_0 ) ) + // InternalSolverLanguageParser.g:8520:1: ( ( ( rule__ClassDeclaration__FieldsAssignment_4_0_1 )* ) ) + // InternalSolverLanguageParser.g:8521:1: ( ( rule__ClassDeclaration__FieldsAssignment_4_0_1 )* ) { - // InternalSolverLanguageParser.g:7054:1: ( ( rule__TypedStarArgument__TypeAssignment_0 ) ) - // InternalSolverLanguageParser.g:7055:2: ( rule__TypedStarArgument__TypeAssignment_0 ) + // InternalSolverLanguageParser.g:8521:1: ( ( rule__ClassDeclaration__FieldsAssignment_4_0_1 )* ) + // InternalSolverLanguageParser.g:8522:2: ( rule__ClassDeclaration__FieldsAssignment_4_0_1 )* { - before(grammarAccess.getTypedStarArgumentAccess().getTypeAssignment_0()); - // InternalSolverLanguageParser.g:7056:2: ( rule__TypedStarArgument__TypeAssignment_0 ) - // InternalSolverLanguageParser.g:7056:3: rule__TypedStarArgument__TypeAssignment_0 - { - pushFollow(FOLLOW_2); - rule__TypedStarArgument__TypeAssignment_0(); + before(grammarAccess.getClassDeclarationAccess().getFieldsAssignment_4_0_1()); + // InternalSolverLanguageParser.g:8523:2: ( rule__ClassDeclaration__FieldsAssignment_4_0_1 )* + loop58: + do { + int alt58=2; + int LA58_0 = input.LA(1); - state._fsp--; + if ( (LA58_0==Contains||(LA58_0>=Object && LA58_0<=Refers)||LA58_0==RULE_QUOTED_ID||LA58_0==RULE_ID) ) { + alt58=1; + } - } + switch (alt58) { + case 1 : + // InternalSolverLanguageParser.g:8523:3: rule__ClassDeclaration__FieldsAssignment_4_0_1 + { + pushFollow(FOLLOW_58); + rule__ClassDeclaration__FieldsAssignment_4_0_1(); + + state._fsp--; + + + } + break; - after(grammarAccess.getTypedStarArgumentAccess().getTypeAssignment_0()); + default : + break loop58; + } + } while (true); + + after(grammarAccess.getClassDeclarationAccess().getFieldsAssignment_4_0_1()); } @@ -21853,21 +26270,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedStarArgument__Group__0__Impl" + // $ANTLR end "rule__ClassDeclaration__Group_4_0__1__Impl" - // $ANTLR start "rule__TypedStarArgument__Group__1" - // InternalSolverLanguageParser.g:7064:1: rule__TypedStarArgument__Group__1 : rule__TypedStarArgument__Group__1__Impl ; - public final void rule__TypedStarArgument__Group__1() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_4_0__2" + // InternalSolverLanguageParser.g:8531:1: rule__ClassDeclaration__Group_4_0__2 : rule__ClassDeclaration__Group_4_0__2__Impl ; + public final void rule__ClassDeclaration__Group_4_0__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7068:1: ( rule__TypedStarArgument__Group__1__Impl ) - // InternalSolverLanguageParser.g:7069:2: rule__TypedStarArgument__Group__1__Impl + // InternalSolverLanguageParser.g:8535:1: ( rule__ClassDeclaration__Group_4_0__2__Impl ) + // InternalSolverLanguageParser.g:8536:2: rule__ClassDeclaration__Group_4_0__2__Impl { pushFollow(FOLLOW_2); - rule__TypedStarArgument__Group__1__Impl(); + rule__ClassDeclaration__Group_4_0__2__Impl(); state._fsp--; @@ -21886,25 +26303,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedStarArgument__Group__1" + // $ANTLR end "rule__ClassDeclaration__Group_4_0__2" - // $ANTLR start "rule__TypedStarArgument__Group__1__Impl" - // InternalSolverLanguageParser.g:7075:1: rule__TypedStarArgument__Group__1__Impl : ( Asterisk ) ; - public final void rule__TypedStarArgument__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__Group_4_0__2__Impl" + // InternalSolverLanguageParser.g:8542:1: rule__ClassDeclaration__Group_4_0__2__Impl : ( RightCurlyBracket ) ; + public final void rule__ClassDeclaration__Group_4_0__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7079:1: ( ( Asterisk ) ) - // InternalSolverLanguageParser.g:7080:1: ( Asterisk ) + // InternalSolverLanguageParser.g:8546:1: ( ( RightCurlyBracket ) ) + // InternalSolverLanguageParser.g:8547:1: ( RightCurlyBracket ) { - // InternalSolverLanguageParser.g:7080:1: ( Asterisk ) - // InternalSolverLanguageParser.g:7081:2: Asterisk + // InternalSolverLanguageParser.g:8547:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:8548:2: RightCurlyBracket { - before(grammarAccess.getTypedStarArgumentAccess().getAsteriskKeyword_1()); - match(input,Asterisk,FOLLOW_2); - after(grammarAccess.getTypedStarArgumentAccess().getAsteriskKeyword_1()); + before(grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); + match(input,RightCurlyBracket,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); } @@ -21923,26 +26340,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedStarArgument__Group__1__Impl" + // $ANTLR end "rule__ClassDeclaration__Group_4_0__2__Impl" - // $ANTLR start "rule__Interval__Group__0" - // InternalSolverLanguageParser.g:7091:1: rule__Interval__Group__0 : rule__Interval__Group__0__Impl rule__Interval__Group__1 ; - public final void rule__Interval__Group__0() throws RecognitionException { + // $ANTLR start "rule__Field__Group__0" + // InternalSolverLanguageParser.g:8558:1: rule__Field__Group__0 : rule__Field__Group__0__Impl rule__Field__Group__1 ; + public final void rule__Field__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7095:1: ( rule__Interval__Group__0__Impl rule__Interval__Group__1 ) - // InternalSolverLanguageParser.g:7096:2: rule__Interval__Group__0__Impl rule__Interval__Group__1 + // InternalSolverLanguageParser.g:8562:1: ( rule__Field__Group__0__Impl rule__Field__Group__1 ) + // InternalSolverLanguageParser.g:8563:2: rule__Field__Group__0__Impl rule__Field__Group__1 { - pushFollow(FOLLOW_7); - rule__Interval__Group__0__Impl(); + pushFollow(FOLLOW_59); + rule__Field__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Interval__Group__1(); + rule__Field__Group__1(); state._fsp--; @@ -21961,25 +26378,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__0" + // $ANTLR end "rule__Field__Group__0" - // $ANTLR start "rule__Interval__Group__0__Impl" - // InternalSolverLanguageParser.g:7103:1: rule__Interval__Group__0__Impl : ( LeftSquareBracket ) ; - public final void rule__Interval__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Field__Group__0__Impl" + // InternalSolverLanguageParser.g:8570:1: rule__Field__Group__0__Impl : ( ( rule__Field__Alternatives_0 )? ) ; + public final void rule__Field__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7107:1: ( ( LeftSquareBracket ) ) - // InternalSolverLanguageParser.g:7108:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:8574:1: ( ( ( rule__Field__Alternatives_0 )? ) ) + // InternalSolverLanguageParser.g:8575:1: ( ( rule__Field__Alternatives_0 )? ) { - // InternalSolverLanguageParser.g:7108:1: ( LeftSquareBracket ) - // InternalSolverLanguageParser.g:7109:2: LeftSquareBracket + // InternalSolverLanguageParser.g:8575:1: ( ( rule__Field__Alternatives_0 )? ) + // InternalSolverLanguageParser.g:8576:2: ( rule__Field__Alternatives_0 )? { - before(grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); - match(input,LeftSquareBracket,FOLLOW_2); - after(grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); + before(grammarAccess.getFieldAccess().getAlternatives_0()); + // InternalSolverLanguageParser.g:8577:2: ( rule__Field__Alternatives_0 )? + int alt59=2; + int LA59_0 = input.LA(1); + + if ( (LA59_0==Contains||LA59_0==Refers) ) { + alt59=1; + } + switch (alt59) { + case 1 : + // InternalSolverLanguageParser.g:8577:3: rule__Field__Alternatives_0 + { + pushFollow(FOLLOW_2); + rule__Field__Alternatives_0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getFieldAccess().getAlternatives_0()); } @@ -21998,26 +26436,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__0__Impl" + // $ANTLR end "rule__Field__Group__0__Impl" - // $ANTLR start "rule__Interval__Group__1" - // InternalSolverLanguageParser.g:7118:1: rule__Interval__Group__1 : rule__Interval__Group__1__Impl rule__Interval__Group__2 ; - public final void rule__Interval__Group__1() throws RecognitionException { + // $ANTLR start "rule__Field__Group__1" + // InternalSolverLanguageParser.g:8585:1: rule__Field__Group__1 : rule__Field__Group__1__Impl rule__Field__Group__2 ; + public final void rule__Field__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7122:1: ( rule__Interval__Group__1__Impl rule__Interval__Group__2 ) - // InternalSolverLanguageParser.g:7123:2: rule__Interval__Group__1__Impl rule__Interval__Group__2 + // InternalSolverLanguageParser.g:8589:1: ( rule__Field__Group__1__Impl rule__Field__Group__2 ) + // InternalSolverLanguageParser.g:8590:2: rule__Field__Group__1__Impl rule__Field__Group__2 { - pushFollow(FOLLOW_47); - rule__Interval__Group__1__Impl(); + pushFollow(FOLLOW_60); + rule__Field__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Interval__Group__2(); + rule__Field__Group__2(); state._fsp--; @@ -22036,35 +26474,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__1" + // $ANTLR end "rule__Field__Group__1" - // $ANTLR start "rule__Interval__Group__1__Impl" - // InternalSolverLanguageParser.g:7130:1: rule__Interval__Group__1__Impl : ( ( rule__Interval__LowerBoundAssignment_1 ) ) ; - public final void rule__Interval__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Field__Group__1__Impl" + // InternalSolverLanguageParser.g:8597:1: rule__Field__Group__1__Impl : ( ( rule__Field__TypeAssignment_1 ) ) ; + public final void rule__Field__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7134:1: ( ( ( rule__Interval__LowerBoundAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:7135:1: ( ( rule__Interval__LowerBoundAssignment_1 ) ) + // InternalSolverLanguageParser.g:8601:1: ( ( ( rule__Field__TypeAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:8602:1: ( ( rule__Field__TypeAssignment_1 ) ) { - // InternalSolverLanguageParser.g:7135:1: ( ( rule__Interval__LowerBoundAssignment_1 ) ) - // InternalSolverLanguageParser.g:7136:2: ( rule__Interval__LowerBoundAssignment_1 ) + // InternalSolverLanguageParser.g:8602:1: ( ( rule__Field__TypeAssignment_1 ) ) + // InternalSolverLanguageParser.g:8603:2: ( rule__Field__TypeAssignment_1 ) { - before(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1()); - // InternalSolverLanguageParser.g:7137:2: ( rule__Interval__LowerBoundAssignment_1 ) - // InternalSolverLanguageParser.g:7137:3: rule__Interval__LowerBoundAssignment_1 + before(grammarAccess.getFieldAccess().getTypeAssignment_1()); + // InternalSolverLanguageParser.g:8604:2: ( rule__Field__TypeAssignment_1 ) + // InternalSolverLanguageParser.g:8604:3: rule__Field__TypeAssignment_1 { pushFollow(FOLLOW_2); - rule__Interval__LowerBoundAssignment_1(); + rule__Field__TypeAssignment_1(); state._fsp--; } - after(grammarAccess.getIntervalAccess().getLowerBoundAssignment_1()); + after(grammarAccess.getFieldAccess().getTypeAssignment_1()); } @@ -22083,26 +26521,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__1__Impl" + // $ANTLR end "rule__Field__Group__1__Impl" - // $ANTLR start "rule__Interval__Group__2" - // InternalSolverLanguageParser.g:7145:1: rule__Interval__Group__2 : rule__Interval__Group__2__Impl rule__Interval__Group__3 ; - public final void rule__Interval__Group__2() throws RecognitionException { + // $ANTLR start "rule__Field__Group__2" + // InternalSolverLanguageParser.g:8612:1: rule__Field__Group__2 : rule__Field__Group__2__Impl rule__Field__Group__3 ; + public final void rule__Field__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7149:1: ( rule__Interval__Group__2__Impl rule__Interval__Group__3 ) - // InternalSolverLanguageParser.g:7150:2: rule__Interval__Group__2__Impl rule__Interval__Group__3 + // InternalSolverLanguageParser.g:8616:1: ( rule__Field__Group__2__Impl rule__Field__Group__3 ) + // InternalSolverLanguageParser.g:8617:2: rule__Field__Group__2__Impl rule__Field__Group__3 { - pushFollow(FOLLOW_7); - rule__Interval__Group__2__Impl(); + pushFollow(FOLLOW_60); + rule__Field__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Interval__Group__3(); + rule__Field__Group__3(); state._fsp--; @@ -22121,25 +26559,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__2" + // $ANTLR end "rule__Field__Group__2" - // $ANTLR start "rule__Interval__Group__2__Impl" - // InternalSolverLanguageParser.g:7157:1: rule__Interval__Group__2__Impl : ( FullStopFullStop ) ; - public final void rule__Interval__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Field__Group__2__Impl" + // InternalSolverLanguageParser.g:8624:1: rule__Field__Group__2__Impl : ( ( rule__Field__MultiplicityAssignment_2 )? ) ; + public final void rule__Field__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7161:1: ( ( FullStopFullStop ) ) - // InternalSolverLanguageParser.g:7162:1: ( FullStopFullStop ) + // InternalSolverLanguageParser.g:8628:1: ( ( ( rule__Field__MultiplicityAssignment_2 )? ) ) + // InternalSolverLanguageParser.g:8629:1: ( ( rule__Field__MultiplicityAssignment_2 )? ) { - // InternalSolverLanguageParser.g:7162:1: ( FullStopFullStop ) - // InternalSolverLanguageParser.g:7163:2: FullStopFullStop + // InternalSolverLanguageParser.g:8629:1: ( ( rule__Field__MultiplicityAssignment_2 )? ) + // InternalSolverLanguageParser.g:8630:2: ( rule__Field__MultiplicityAssignment_2 )? { - before(grammarAccess.getIntervalAccess().getFullStopFullStopKeyword_2()); - match(input,FullStopFullStop,FOLLOW_2); - after(grammarAccess.getIntervalAccess().getFullStopFullStopKeyword_2()); + before(grammarAccess.getFieldAccess().getMultiplicityAssignment_2()); + // InternalSolverLanguageParser.g:8631:2: ( rule__Field__MultiplicityAssignment_2 )? + int alt60=2; + int LA60_0 = input.LA(1); + + if ( (LA60_0==LeftSquareBracket) ) { + alt60=1; + } + switch (alt60) { + case 1 : + // InternalSolverLanguageParser.g:8631:3: rule__Field__MultiplicityAssignment_2 + { + pushFollow(FOLLOW_2); + rule__Field__MultiplicityAssignment_2(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getFieldAccess().getMultiplicityAssignment_2()); } @@ -22158,26 +26617,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__2__Impl" + // $ANTLR end "rule__Field__Group__2__Impl" - // $ANTLR start "rule__Interval__Group__3" - // InternalSolverLanguageParser.g:7172:1: rule__Interval__Group__3 : rule__Interval__Group__3__Impl rule__Interval__Group__4 ; - public final void rule__Interval__Group__3() throws RecognitionException { + // $ANTLR start "rule__Field__Group__3" + // InternalSolverLanguageParser.g:8639:1: rule__Field__Group__3 : rule__Field__Group__3__Impl rule__Field__Group__4 ; + public final void rule__Field__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7176:1: ( rule__Interval__Group__3__Impl rule__Interval__Group__4 ) - // InternalSolverLanguageParser.g:7177:2: rule__Interval__Group__3__Impl rule__Interval__Group__4 + // InternalSolverLanguageParser.g:8643:1: ( rule__Field__Group__3__Impl rule__Field__Group__4 ) + // InternalSolverLanguageParser.g:8644:2: rule__Field__Group__3__Impl rule__Field__Group__4 { - pushFollow(FOLLOW_48); - rule__Interval__Group__3__Impl(); + pushFollow(FOLLOW_61); + rule__Field__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__Interval__Group__4(); + rule__Field__Group__4(); state._fsp--; @@ -22196,35 +26655,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__3" + // $ANTLR end "rule__Field__Group__3" - // $ANTLR start "rule__Interval__Group__3__Impl" - // InternalSolverLanguageParser.g:7184:1: rule__Interval__Group__3__Impl : ( ( rule__Interval__UpperBoundAssignment_3 ) ) ; - public final void rule__Interval__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__Field__Group__3__Impl" + // InternalSolverLanguageParser.g:8651:1: rule__Field__Group__3__Impl : ( ( rule__Field__NameAssignment_3 ) ) ; + public final void rule__Field__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7188:1: ( ( ( rule__Interval__UpperBoundAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:7189:1: ( ( rule__Interval__UpperBoundAssignment_3 ) ) + // InternalSolverLanguageParser.g:8655:1: ( ( ( rule__Field__NameAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:8656:1: ( ( rule__Field__NameAssignment_3 ) ) { - // InternalSolverLanguageParser.g:7189:1: ( ( rule__Interval__UpperBoundAssignment_3 ) ) - // InternalSolverLanguageParser.g:7190:2: ( rule__Interval__UpperBoundAssignment_3 ) + // InternalSolverLanguageParser.g:8656:1: ( ( rule__Field__NameAssignment_3 ) ) + // InternalSolverLanguageParser.g:8657:2: ( rule__Field__NameAssignment_3 ) { - before(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3()); - // InternalSolverLanguageParser.g:7191:2: ( rule__Interval__UpperBoundAssignment_3 ) - // InternalSolverLanguageParser.g:7191:3: rule__Interval__UpperBoundAssignment_3 + before(grammarAccess.getFieldAccess().getNameAssignment_3()); + // InternalSolverLanguageParser.g:8658:2: ( rule__Field__NameAssignment_3 ) + // InternalSolverLanguageParser.g:8658:3: rule__Field__NameAssignment_3 { pushFollow(FOLLOW_2); - rule__Interval__UpperBoundAssignment_3(); + rule__Field__NameAssignment_3(); state._fsp--; } - after(grammarAccess.getIntervalAccess().getUpperBoundAssignment_3()); + after(grammarAccess.getFieldAccess().getNameAssignment_3()); } @@ -22243,21 +26702,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__3__Impl" + // $ANTLR end "rule__Field__Group__3__Impl" - // $ANTLR start "rule__Interval__Group__4" - // InternalSolverLanguageParser.g:7199:1: rule__Interval__Group__4 : rule__Interval__Group__4__Impl ; - public final void rule__Interval__Group__4() throws RecognitionException { + // $ANTLR start "rule__Field__Group__4" + // InternalSolverLanguageParser.g:8666:1: rule__Field__Group__4 : rule__Field__Group__4__Impl rule__Field__Group__5 ; + public final void rule__Field__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7203:1: ( rule__Interval__Group__4__Impl ) - // InternalSolverLanguageParser.g:7204:2: rule__Interval__Group__4__Impl + // InternalSolverLanguageParser.g:8670:1: ( rule__Field__Group__4__Impl rule__Field__Group__5 ) + // InternalSolverLanguageParser.g:8671:2: rule__Field__Group__4__Impl rule__Field__Group__5 { + pushFollow(FOLLOW_61); + rule__Field__Group__4__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__Interval__Group__4__Impl(); + rule__Field__Group__5(); state._fsp--; @@ -22276,25 +26740,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__4" + // $ANTLR end "rule__Field__Group__4" - // $ANTLR start "rule__Interval__Group__4__Impl" - // InternalSolverLanguageParser.g:7210:1: rule__Interval__Group__4__Impl : ( RightSquareBracket ) ; - public final void rule__Interval__Group__4__Impl() throws RecognitionException { + // $ANTLR start "rule__Field__Group__4__Impl" + // InternalSolverLanguageParser.g:8678:1: rule__Field__Group__4__Impl : ( ( rule__Field__Group_4__0 )? ) ; + public final void rule__Field__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7214:1: ( ( RightSquareBracket ) ) - // InternalSolverLanguageParser.g:7215:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:8682:1: ( ( ( rule__Field__Group_4__0 )? ) ) + // InternalSolverLanguageParser.g:8683:1: ( ( rule__Field__Group_4__0 )? ) { - // InternalSolverLanguageParser.g:7215:1: ( RightSquareBracket ) - // InternalSolverLanguageParser.g:7216:2: RightSquareBracket + // InternalSolverLanguageParser.g:8683:1: ( ( rule__Field__Group_4__0 )? ) + // InternalSolverLanguageParser.g:8684:2: ( rule__Field__Group_4__0 )? { - before(grammarAccess.getIntervalAccess().getRightSquareBracketKeyword_4()); - match(input,RightSquareBracket,FOLLOW_2); - after(grammarAccess.getIntervalAccess().getRightSquareBracketKeyword_4()); + before(grammarAccess.getFieldAccess().getGroup_4()); + // InternalSolverLanguageParser.g:8685:2: ( rule__Field__Group_4__0 )? + int alt61=2; + int LA61_0 = input.LA(1); + + if ( (LA61_0==Opposite) ) { + alt61=1; + } + switch (alt61) { + case 1 : + // InternalSolverLanguageParser.g:8685:3: rule__Field__Group_4__0 + { + pushFollow(FOLLOW_2); + rule__Field__Group_4__0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getFieldAccess().getGroup_4()); } @@ -22313,26 +26798,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__Group__4__Impl" + // $ANTLR end "rule__Field__Group__4__Impl" - // $ANTLR start "rule__InfinityLiteral__Group__0" - // InternalSolverLanguageParser.g:7226:1: rule__InfinityLiteral__Group__0 : rule__InfinityLiteral__Group__0__Impl rule__InfinityLiteral__Group__1 ; - public final void rule__InfinityLiteral__Group__0() throws RecognitionException { + // $ANTLR start "rule__Field__Group__5" + // InternalSolverLanguageParser.g:8693:1: rule__Field__Group__5 : rule__Field__Group__5__Impl ; + public final void rule__Field__Group__5() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7230:1: ( rule__InfinityLiteral__Group__0__Impl rule__InfinityLiteral__Group__1 ) - // InternalSolverLanguageParser.g:7231:2: rule__InfinityLiteral__Group__0__Impl rule__InfinityLiteral__Group__1 + // InternalSolverLanguageParser.g:8697:1: ( rule__Field__Group__5__Impl ) + // InternalSolverLanguageParser.g:8698:2: rule__Field__Group__5__Impl { - pushFollow(FOLLOW_49); - rule__InfinityLiteral__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__InfinityLiteral__Group__1(); + rule__Field__Group__5__Impl(); state._fsp--; @@ -22351,29 +26831,42 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__InfinityLiteral__Group__0" + // $ANTLR end "rule__Field__Group__5" - // $ANTLR start "rule__InfinityLiteral__Group__0__Impl" - // InternalSolverLanguageParser.g:7238:1: rule__InfinityLiteral__Group__0__Impl : ( () ) ; - public final void rule__InfinityLiteral__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Field__Group__5__Impl" + // InternalSolverLanguageParser.g:8704:1: rule__Field__Group__5__Impl : ( ( Semicolon )? ) ; + public final void rule__Field__Group__5__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7242:1: ( ( () ) ) - // InternalSolverLanguageParser.g:7243:1: ( () ) + // InternalSolverLanguageParser.g:8708:1: ( ( ( Semicolon )? ) ) + // InternalSolverLanguageParser.g:8709:1: ( ( Semicolon )? ) { - // InternalSolverLanguageParser.g:7243:1: ( () ) - // InternalSolverLanguageParser.g:7244:2: () - { - before(grammarAccess.getInfinityLiteralAccess().getInfinityLiteralAction_0()); - // InternalSolverLanguageParser.g:7245:2: () - // InternalSolverLanguageParser.g:7245:3: + // InternalSolverLanguageParser.g:8709:1: ( ( Semicolon )? ) + // InternalSolverLanguageParser.g:8710:2: ( Semicolon )? { + before(grammarAccess.getFieldAccess().getSemicolonKeyword_5()); + // InternalSolverLanguageParser.g:8711:2: ( Semicolon )? + int alt62=2; + int LA62_0 = input.LA(1); + + if ( (LA62_0==Semicolon) ) { + alt62=1; } + switch (alt62) { + case 1 : + // InternalSolverLanguageParser.g:8711:3: Semicolon + { + match(input,Semicolon,FOLLOW_2); - after(grammarAccess.getInfinityLiteralAccess().getInfinityLiteralAction_0()); + } + break; + + } + + after(grammarAccess.getFieldAccess().getSemicolonKeyword_5()); } @@ -22381,6 +26874,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -22388,21 +26885,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__InfinityLiteral__Group__0__Impl" + // $ANTLR end "rule__Field__Group__5__Impl" - // $ANTLR start "rule__InfinityLiteral__Group__1" - // InternalSolverLanguageParser.g:7253:1: rule__InfinityLiteral__Group__1 : rule__InfinityLiteral__Group__1__Impl ; - public final void rule__InfinityLiteral__Group__1() throws RecognitionException { + // $ANTLR start "rule__Field__Group_4__0" + // InternalSolverLanguageParser.g:8720:1: rule__Field__Group_4__0 : rule__Field__Group_4__0__Impl rule__Field__Group_4__1 ; + public final void rule__Field__Group_4__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7257:1: ( rule__InfinityLiteral__Group__1__Impl ) - // InternalSolverLanguageParser.g:7258:2: rule__InfinityLiteral__Group__1__Impl + // InternalSolverLanguageParser.g:8724:1: ( rule__Field__Group_4__0__Impl rule__Field__Group_4__1 ) + // InternalSolverLanguageParser.g:8725:2: rule__Field__Group_4__0__Impl rule__Field__Group_4__1 { + pushFollow(FOLLOW_6); + rule__Field__Group_4__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__InfinityLiteral__Group__1__Impl(); + rule__Field__Group_4__1(); state._fsp--; @@ -22421,25 +26923,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__InfinityLiteral__Group__1" + // $ANTLR end "rule__Field__Group_4__0" - // $ANTLR start "rule__InfinityLiteral__Group__1__Impl" - // InternalSolverLanguageParser.g:7264:1: rule__InfinityLiteral__Group__1__Impl : ( Inf ) ; - public final void rule__InfinityLiteral__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Field__Group_4__0__Impl" + // InternalSolverLanguageParser.g:8732:1: rule__Field__Group_4__0__Impl : ( Opposite ) ; + public final void rule__Field__Group_4__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7268:1: ( ( Inf ) ) - // InternalSolverLanguageParser.g:7269:1: ( Inf ) + // InternalSolverLanguageParser.g:8736:1: ( ( Opposite ) ) + // InternalSolverLanguageParser.g:8737:1: ( Opposite ) { - // InternalSolverLanguageParser.g:7269:1: ( Inf ) - // InternalSolverLanguageParser.g:7270:2: Inf + // InternalSolverLanguageParser.g:8737:1: ( Opposite ) + // InternalSolverLanguageParser.g:8738:2: Opposite { - before(grammarAccess.getInfinityLiteralAccess().getInfKeyword_1()); - match(input,Inf,FOLLOW_2); - after(grammarAccess.getInfinityLiteralAccess().getInfKeyword_1()); + before(grammarAccess.getFieldAccess().getOppositeKeyword_4_0()); + match(input,Opposite,FOLLOW_2); + after(grammarAccess.getFieldAccess().getOppositeKeyword_4_0()); } @@ -22458,26 +26960,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__InfinityLiteral__Group__1__Impl" + // $ANTLR end "rule__Field__Group_4__0__Impl" - // $ANTLR start "rule__EmptyIntervalLiteral__Group__0" - // InternalSolverLanguageParser.g:7280:1: rule__EmptyIntervalLiteral__Group__0 : rule__EmptyIntervalLiteral__Group__0__Impl rule__EmptyIntervalLiteral__Group__1 ; - public final void rule__EmptyIntervalLiteral__Group__0() throws RecognitionException { + // $ANTLR start "rule__Field__Group_4__1" + // InternalSolverLanguageParser.g:8747:1: rule__Field__Group_4__1 : rule__Field__Group_4__1__Impl ; + public final void rule__Field__Group_4__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7284:1: ( rule__EmptyIntervalLiteral__Group__0__Impl rule__EmptyIntervalLiteral__Group__1 ) - // InternalSolverLanguageParser.g:7285:2: rule__EmptyIntervalLiteral__Group__0__Impl rule__EmptyIntervalLiteral__Group__1 + // InternalSolverLanguageParser.g:8751:1: ( rule__Field__Group_4__1__Impl ) + // InternalSolverLanguageParser.g:8752:2: rule__Field__Group_4__1__Impl { - pushFollow(FOLLOW_50); - rule__EmptyIntervalLiteral__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__EmptyIntervalLiteral__Group__1(); + rule__Field__Group_4__1__Impl(); state._fsp--; @@ -22496,29 +26993,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__EmptyIntervalLiteral__Group__0" + // $ANTLR end "rule__Field__Group_4__1" - // $ANTLR start "rule__EmptyIntervalLiteral__Group__0__Impl" - // InternalSolverLanguageParser.g:7292:1: rule__EmptyIntervalLiteral__Group__0__Impl : ( () ) ; - public final void rule__EmptyIntervalLiteral__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Field__Group_4__1__Impl" + // InternalSolverLanguageParser.g:8758:1: rule__Field__Group_4__1__Impl : ( ( rule__Field__OppositeAssignment_4_1 ) ) ; + public final void rule__Field__Group_4__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7296:1: ( ( () ) ) - // InternalSolverLanguageParser.g:7297:1: ( () ) + // InternalSolverLanguageParser.g:8762:1: ( ( ( rule__Field__OppositeAssignment_4_1 ) ) ) + // InternalSolverLanguageParser.g:8763:1: ( ( rule__Field__OppositeAssignment_4_1 ) ) { - // InternalSolverLanguageParser.g:7297:1: ( () ) - // InternalSolverLanguageParser.g:7298:2: () + // InternalSolverLanguageParser.g:8763:1: ( ( rule__Field__OppositeAssignment_4_1 ) ) + // InternalSolverLanguageParser.g:8764:2: ( rule__Field__OppositeAssignment_4_1 ) { - before(grammarAccess.getEmptyIntervalLiteralAccess().getEmptyIntervalLiteralAction_0()); - // InternalSolverLanguageParser.g:7299:2: () - // InternalSolverLanguageParser.g:7299:3: + before(grammarAccess.getFieldAccess().getOppositeAssignment_4_1()); + // InternalSolverLanguageParser.g:8765:2: ( rule__Field__OppositeAssignment_4_1 ) + // InternalSolverLanguageParser.g:8765:3: rule__Field__OppositeAssignment_4_1 { + pushFollow(FOLLOW_2); + rule__Field__OppositeAssignment_4_1(); + + state._fsp--; + + } - after(grammarAccess.getEmptyIntervalLiteralAccess().getEmptyIntervalLiteralAction_0()); + after(grammarAccess.getFieldAccess().getOppositeAssignment_4_1()); } @@ -22526,6 +27029,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -22533,21 +27040,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__EmptyIntervalLiteral__Group__0__Impl" + // $ANTLR end "rule__Field__Group_4__1__Impl" - // $ANTLR start "rule__EmptyIntervalLiteral__Group__1" - // InternalSolverLanguageParser.g:7307:1: rule__EmptyIntervalLiteral__Group__1 : rule__EmptyIntervalLiteral__Group__1__Impl ; - public final void rule__EmptyIntervalLiteral__Group__1() throws RecognitionException { + // $ANTLR start "rule__UnboundedMultiplicity__Group__0" + // InternalSolverLanguageParser.g:8774:1: rule__UnboundedMultiplicity__Group__0 : rule__UnboundedMultiplicity__Group__0__Impl rule__UnboundedMultiplicity__Group__1 ; + public final void rule__UnboundedMultiplicity__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7311:1: ( rule__EmptyIntervalLiteral__Group__1__Impl ) - // InternalSolverLanguageParser.g:7312:2: rule__EmptyIntervalLiteral__Group__1__Impl + // InternalSolverLanguageParser.g:8778:1: ( rule__UnboundedMultiplicity__Group__0__Impl rule__UnboundedMultiplicity__Group__1 ) + // InternalSolverLanguageParser.g:8779:2: rule__UnboundedMultiplicity__Group__0__Impl rule__UnboundedMultiplicity__Group__1 { + pushFollow(FOLLOW_62); + rule__UnboundedMultiplicity__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__EmptyIntervalLiteral__Group__1__Impl(); + rule__UnboundedMultiplicity__Group__1(); state._fsp--; @@ -22566,25 +27078,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__EmptyIntervalLiteral__Group__1" + // $ANTLR end "rule__UnboundedMultiplicity__Group__0" - // $ANTLR start "rule__EmptyIntervalLiteral__Group__1__Impl" - // InternalSolverLanguageParser.g:7318:1: rule__EmptyIntervalLiteral__Group__1__Impl : ( Empty ) ; - public final void rule__EmptyIntervalLiteral__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__UnboundedMultiplicity__Group__0__Impl" + // InternalSolverLanguageParser.g:8786:1: rule__UnboundedMultiplicity__Group__0__Impl : ( () ) ; + public final void rule__UnboundedMultiplicity__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7322:1: ( ( Empty ) ) - // InternalSolverLanguageParser.g:7323:1: ( Empty ) + // InternalSolverLanguageParser.g:8790:1: ( ( () ) ) + // InternalSolverLanguageParser.g:8791:1: ( () ) { - // InternalSolverLanguageParser.g:7323:1: ( Empty ) - // InternalSolverLanguageParser.g:7324:2: Empty + // InternalSolverLanguageParser.g:8791:1: ( () ) + // InternalSolverLanguageParser.g:8792:2: () { - before(grammarAccess.getEmptyIntervalLiteralAccess().getEmptyKeyword_1()); - match(input,Empty,FOLLOW_2); - after(grammarAccess.getEmptyIntervalLiteralAccess().getEmptyKeyword_1()); + before(grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction_0()); + // InternalSolverLanguageParser.g:8793:2: () + // InternalSolverLanguageParser.g:8793:3: + { + } + + after(grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction_0()); } @@ -22592,10 +27108,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } finally { restoreStackSize(stackSize); @@ -22603,26 +27115,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__EmptyIntervalLiteral__Group__1__Impl" + // $ANTLR end "rule__UnboundedMultiplicity__Group__0__Impl" - // $ANTLR start "rule__ClassDefinition__Group__0" - // InternalSolverLanguageParser.g:7334:1: rule__ClassDefinition__Group__0 : rule__ClassDefinition__Group__0__Impl rule__ClassDefinition__Group__1 ; - public final void rule__ClassDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__UnboundedMultiplicity__Group__1" + // InternalSolverLanguageParser.g:8801:1: rule__UnboundedMultiplicity__Group__1 : rule__UnboundedMultiplicity__Group__1__Impl rule__UnboundedMultiplicity__Group__2 ; + public final void rule__UnboundedMultiplicity__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7338:1: ( rule__ClassDefinition__Group__0__Impl rule__ClassDefinition__Group__1 ) - // InternalSolverLanguageParser.g:7339:2: rule__ClassDefinition__Group__0__Impl rule__ClassDefinition__Group__1 + // InternalSolverLanguageParser.g:8805:1: ( rule__UnboundedMultiplicity__Group__1__Impl rule__UnboundedMultiplicity__Group__2 ) + // InternalSolverLanguageParser.g:8806:2: rule__UnboundedMultiplicity__Group__1__Impl rule__UnboundedMultiplicity__Group__2 { - pushFollow(FOLLOW_51); - rule__ClassDefinition__Group__0__Impl(); + pushFollow(FOLLOW_52); + rule__UnboundedMultiplicity__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ClassDefinition__Group__1(); + rule__UnboundedMultiplicity__Group__2(); state._fsp--; @@ -22641,46 +27153,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__0" - - - // $ANTLR start "rule__ClassDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:7346:1: rule__ClassDefinition__Group__0__Impl : ( ( rule__ClassDefinition__AbstractAssignment_0 )? ) ; - public final void rule__ClassDefinition__Group__0__Impl() throws RecognitionException { - - int stackSize = keepStackSize(); - - try { - // InternalSolverLanguageParser.g:7350:1: ( ( ( rule__ClassDefinition__AbstractAssignment_0 )? ) ) - // InternalSolverLanguageParser.g:7351:1: ( ( rule__ClassDefinition__AbstractAssignment_0 )? ) - { - // InternalSolverLanguageParser.g:7351:1: ( ( rule__ClassDefinition__AbstractAssignment_0 )? ) - // InternalSolverLanguageParser.g:7352:2: ( rule__ClassDefinition__AbstractAssignment_0 )? - { - before(grammarAccess.getClassDefinitionAccess().getAbstractAssignment_0()); - // InternalSolverLanguageParser.g:7353:2: ( rule__ClassDefinition__AbstractAssignment_0 )? - int alt51=2; - int LA51_0 = input.LA(1); - - if ( (LA51_0==Abstract) ) { - alt51=1; - } - switch (alt51) { - case 1 : - // InternalSolverLanguageParser.g:7353:3: rule__ClassDefinition__AbstractAssignment_0 - { - pushFollow(FOLLOW_2); - rule__ClassDefinition__AbstractAssignment_0(); - - state._fsp--; - + // $ANTLR end "rule__UnboundedMultiplicity__Group__1" - } - break; - } + // $ANTLR start "rule__UnboundedMultiplicity__Group__1__Impl" + // InternalSolverLanguageParser.g:8813:1: rule__UnboundedMultiplicity__Group__1__Impl : ( LeftSquareBracket ) ; + public final void rule__UnboundedMultiplicity__Group__1__Impl() throws RecognitionException { - after(grammarAccess.getClassDefinitionAccess().getAbstractAssignment_0()); + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:8817:1: ( ( LeftSquareBracket ) ) + // InternalSolverLanguageParser.g:8818:1: ( LeftSquareBracket ) + { + // InternalSolverLanguageParser.g:8818:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:8819:2: LeftSquareBracket + { + before(grammarAccess.getUnboundedMultiplicityAccess().getLeftSquareBracketKeyword_1()); + match(input,LeftSquareBracket,FOLLOW_2); + after(grammarAccess.getUnboundedMultiplicityAccess().getLeftSquareBracketKeyword_1()); } @@ -22699,26 +27190,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__0__Impl" + // $ANTLR end "rule__UnboundedMultiplicity__Group__1__Impl" - // $ANTLR start "rule__ClassDefinition__Group__1" - // InternalSolverLanguageParser.g:7361:1: rule__ClassDefinition__Group__1 : rule__ClassDefinition__Group__1__Impl rule__ClassDefinition__Group__2 ; - public final void rule__ClassDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__UnboundedMultiplicity__Group__2" + // InternalSolverLanguageParser.g:8828:1: rule__UnboundedMultiplicity__Group__2 : rule__UnboundedMultiplicity__Group__2__Impl ; + public final void rule__UnboundedMultiplicity__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7365:1: ( rule__ClassDefinition__Group__1__Impl rule__ClassDefinition__Group__2 ) - // InternalSolverLanguageParser.g:7366:2: rule__ClassDefinition__Group__1__Impl rule__ClassDefinition__Group__2 + // InternalSolverLanguageParser.g:8832:1: ( rule__UnboundedMultiplicity__Group__2__Impl ) + // InternalSolverLanguageParser.g:8833:2: rule__UnboundedMultiplicity__Group__2__Impl { - pushFollow(FOLLOW_21); - rule__ClassDefinition__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ClassDefinition__Group__2(); + rule__UnboundedMultiplicity__Group__2__Impl(); state._fsp--; @@ -22737,25 +27223,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__1" + // $ANTLR end "rule__UnboundedMultiplicity__Group__2" - // $ANTLR start "rule__ClassDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:7373:1: rule__ClassDefinition__Group__1__Impl : ( Class ) ; - public final void rule__ClassDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__UnboundedMultiplicity__Group__2__Impl" + // InternalSolverLanguageParser.g:8839:1: rule__UnboundedMultiplicity__Group__2__Impl : ( RightSquareBracket ) ; + public final void rule__UnboundedMultiplicity__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7377:1: ( ( Class ) ) - // InternalSolverLanguageParser.g:7378:1: ( Class ) + // InternalSolverLanguageParser.g:8843:1: ( ( RightSquareBracket ) ) + // InternalSolverLanguageParser.g:8844:1: ( RightSquareBracket ) { - // InternalSolverLanguageParser.g:7378:1: ( Class ) - // InternalSolverLanguageParser.g:7379:2: Class + // InternalSolverLanguageParser.g:8844:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:8845:2: RightSquareBracket { - before(grammarAccess.getClassDefinitionAccess().getClassKeyword_1()); - match(input,Class,FOLLOW_2); - after(grammarAccess.getClassDefinitionAccess().getClassKeyword_1()); + before(grammarAccess.getUnboundedMultiplicityAccess().getRightSquareBracketKeyword_2()); + match(input,RightSquareBracket,FOLLOW_2); + after(grammarAccess.getUnboundedMultiplicityAccess().getRightSquareBracketKeyword_2()); } @@ -22774,26 +27260,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__1__Impl" + // $ANTLR end "rule__UnboundedMultiplicity__Group__2__Impl" - // $ANTLR start "rule__ClassDefinition__Group__2" - // InternalSolverLanguageParser.g:7388:1: rule__ClassDefinition__Group__2 : rule__ClassDefinition__Group__2__Impl rule__ClassDefinition__Group__3 ; - public final void rule__ClassDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__ExactMultiplicity__Group__0" + // InternalSolverLanguageParser.g:8855:1: rule__ExactMultiplicity__Group__0 : rule__ExactMultiplicity__Group__0__Impl rule__ExactMultiplicity__Group__1 ; + public final void rule__ExactMultiplicity__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7392:1: ( rule__ClassDefinition__Group__2__Impl rule__ClassDefinition__Group__3 ) - // InternalSolverLanguageParser.g:7393:2: rule__ClassDefinition__Group__2__Impl rule__ClassDefinition__Group__3 + // InternalSolverLanguageParser.g:8859:1: ( rule__ExactMultiplicity__Group__0__Impl rule__ExactMultiplicity__Group__1 ) + // InternalSolverLanguageParser.g:8860:2: rule__ExactMultiplicity__Group__0__Impl rule__ExactMultiplicity__Group__1 { - pushFollow(FOLLOW_52); - rule__ClassDefinition__Group__2__Impl(); + pushFollow(FOLLOW_63); + rule__ExactMultiplicity__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ClassDefinition__Group__3(); + rule__ExactMultiplicity__Group__1(); state._fsp--; @@ -22812,35 +27298,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__2" + // $ANTLR end "rule__ExactMultiplicity__Group__0" - // $ANTLR start "rule__ClassDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:7400:1: rule__ClassDefinition__Group__2__Impl : ( ( rule__ClassDefinition__NameAssignment_2 ) ) ; - public final void rule__ClassDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ExactMultiplicity__Group__0__Impl" + // InternalSolverLanguageParser.g:8867:1: rule__ExactMultiplicity__Group__0__Impl : ( LeftSquareBracket ) ; + public final void rule__ExactMultiplicity__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7404:1: ( ( ( rule__ClassDefinition__NameAssignment_2 ) ) ) - // InternalSolverLanguageParser.g:7405:1: ( ( rule__ClassDefinition__NameAssignment_2 ) ) + // InternalSolverLanguageParser.g:8871:1: ( ( LeftSquareBracket ) ) + // InternalSolverLanguageParser.g:8872:1: ( LeftSquareBracket ) { - // InternalSolverLanguageParser.g:7405:1: ( ( rule__ClassDefinition__NameAssignment_2 ) ) - // InternalSolverLanguageParser.g:7406:2: ( rule__ClassDefinition__NameAssignment_2 ) + // InternalSolverLanguageParser.g:8872:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:8873:2: LeftSquareBracket { - before(grammarAccess.getClassDefinitionAccess().getNameAssignment_2()); - // InternalSolverLanguageParser.g:7407:2: ( rule__ClassDefinition__NameAssignment_2 ) - // InternalSolverLanguageParser.g:7407:3: rule__ClassDefinition__NameAssignment_2 - { - pushFollow(FOLLOW_2); - rule__ClassDefinition__NameAssignment_2(); - - state._fsp--; - - - } - - after(grammarAccess.getClassDefinitionAccess().getNameAssignment_2()); + before(grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); + match(input,LeftSquareBracket,FOLLOW_2); + after(grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); } @@ -22859,26 +27335,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__2__Impl" + // $ANTLR end "rule__ExactMultiplicity__Group__0__Impl" - // $ANTLR start "rule__ClassDefinition__Group__3" - // InternalSolverLanguageParser.g:7415:1: rule__ClassDefinition__Group__3 : rule__ClassDefinition__Group__3__Impl rule__ClassDefinition__Group__4 ; - public final void rule__ClassDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__ExactMultiplicity__Group__1" + // InternalSolverLanguageParser.g:8882:1: rule__ExactMultiplicity__Group__1 : rule__ExactMultiplicity__Group__1__Impl rule__ExactMultiplicity__Group__2 ; + public final void rule__ExactMultiplicity__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7419:1: ( rule__ClassDefinition__Group__3__Impl rule__ClassDefinition__Group__4 ) - // InternalSolverLanguageParser.g:7420:2: rule__ClassDefinition__Group__3__Impl rule__ClassDefinition__Group__4 + // InternalSolverLanguageParser.g:8886:1: ( rule__ExactMultiplicity__Group__1__Impl rule__ExactMultiplicity__Group__2 ) + // InternalSolverLanguageParser.g:8887:2: rule__ExactMultiplicity__Group__1__Impl rule__ExactMultiplicity__Group__2 { pushFollow(FOLLOW_52); - rule__ClassDefinition__Group__3__Impl(); + rule__ExactMultiplicity__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ClassDefinition__Group__4(); + rule__ExactMultiplicity__Group__2(); state._fsp--; @@ -22897,46 +27373,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__3" + // $ANTLR end "rule__ExactMultiplicity__Group__1" - // $ANTLR start "rule__ClassDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:7427:1: rule__ClassDefinition__Group__3__Impl : ( ( rule__ClassDefinition__Group_3__0 )? ) ; - public final void rule__ClassDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__ExactMultiplicity__Group__1__Impl" + // InternalSolverLanguageParser.g:8894:1: rule__ExactMultiplicity__Group__1__Impl : ( ( rule__ExactMultiplicity__ValueAssignment_1 ) ) ; + public final void rule__ExactMultiplicity__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7431:1: ( ( ( rule__ClassDefinition__Group_3__0 )? ) ) - // InternalSolverLanguageParser.g:7432:1: ( ( rule__ClassDefinition__Group_3__0 )? ) + // InternalSolverLanguageParser.g:8898:1: ( ( ( rule__ExactMultiplicity__ValueAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:8899:1: ( ( rule__ExactMultiplicity__ValueAssignment_1 ) ) { - // InternalSolverLanguageParser.g:7432:1: ( ( rule__ClassDefinition__Group_3__0 )? ) - // InternalSolverLanguageParser.g:7433:2: ( rule__ClassDefinition__Group_3__0 )? + // InternalSolverLanguageParser.g:8899:1: ( ( rule__ExactMultiplicity__ValueAssignment_1 ) ) + // InternalSolverLanguageParser.g:8900:2: ( rule__ExactMultiplicity__ValueAssignment_1 ) { - before(grammarAccess.getClassDefinitionAccess().getGroup_3()); - // InternalSolverLanguageParser.g:7434:2: ( rule__ClassDefinition__Group_3__0 )? - int alt52=2; - int LA52_0 = input.LA(1); - - if ( (LA52_0==Extends) ) { - alt52=1; - } - switch (alt52) { - case 1 : - // InternalSolverLanguageParser.g:7434:3: rule__ClassDefinition__Group_3__0 - { - pushFollow(FOLLOW_2); - rule__ClassDefinition__Group_3__0(); - - state._fsp--; + before(grammarAccess.getExactMultiplicityAccess().getValueAssignment_1()); + // InternalSolverLanguageParser.g:8901:2: ( rule__ExactMultiplicity__ValueAssignment_1 ) + // InternalSolverLanguageParser.g:8901:3: rule__ExactMultiplicity__ValueAssignment_1 + { + pushFollow(FOLLOW_2); + rule__ExactMultiplicity__ValueAssignment_1(); + state._fsp--; - } - break; } - after(grammarAccess.getClassDefinitionAccess().getGroup_3()); + after(grammarAccess.getExactMultiplicityAccess().getValueAssignment_1()); } @@ -22955,26 +27420,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__3__Impl" + // $ANTLR end "rule__ExactMultiplicity__Group__1__Impl" - // $ANTLR start "rule__ClassDefinition__Group__4" - // InternalSolverLanguageParser.g:7442:1: rule__ClassDefinition__Group__4 : rule__ClassDefinition__Group__4__Impl rule__ClassDefinition__Group__5 ; - public final void rule__ClassDefinition__Group__4() throws RecognitionException { + // $ANTLR start "rule__ExactMultiplicity__Group__2" + // InternalSolverLanguageParser.g:8909:1: rule__ExactMultiplicity__Group__2 : rule__ExactMultiplicity__Group__2__Impl ; + public final void rule__ExactMultiplicity__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7446:1: ( rule__ClassDefinition__Group__4__Impl rule__ClassDefinition__Group__5 ) - // InternalSolverLanguageParser.g:7447:2: rule__ClassDefinition__Group__4__Impl rule__ClassDefinition__Group__5 + // InternalSolverLanguageParser.g:8913:1: ( rule__ExactMultiplicity__Group__2__Impl ) + // InternalSolverLanguageParser.g:8914:2: rule__ExactMultiplicity__Group__2__Impl { - pushFollow(FOLLOW_53); - rule__ClassDefinition__Group__4__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ClassDefinition__Group__5(); + rule__ExactMultiplicity__Group__2__Impl(); state._fsp--; @@ -22993,25 +27453,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__4" + // $ANTLR end "rule__ExactMultiplicity__Group__2" - // $ANTLR start "rule__ClassDefinition__Group__4__Impl" - // InternalSolverLanguageParser.g:7454:1: rule__ClassDefinition__Group__4__Impl : ( LeftCurlyBracket ) ; - public final void rule__ClassDefinition__Group__4__Impl() throws RecognitionException { + // $ANTLR start "rule__ExactMultiplicity__Group__2__Impl" + // InternalSolverLanguageParser.g:8920:1: rule__ExactMultiplicity__Group__2__Impl : ( RightSquareBracket ) ; + public final void rule__ExactMultiplicity__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7458:1: ( ( LeftCurlyBracket ) ) - // InternalSolverLanguageParser.g:7459:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:8924:1: ( ( RightSquareBracket ) ) + // InternalSolverLanguageParser.g:8925:1: ( RightSquareBracket ) { - // InternalSolverLanguageParser.g:7459:1: ( LeftCurlyBracket ) - // InternalSolverLanguageParser.g:7460:2: LeftCurlyBracket + // InternalSolverLanguageParser.g:8925:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:8926:2: RightSquareBracket { - before(grammarAccess.getClassDefinitionAccess().getLeftCurlyBracketKeyword_4()); - match(input,LeftCurlyBracket,FOLLOW_2); - after(grammarAccess.getClassDefinitionAccess().getLeftCurlyBracketKeyword_4()); + before(grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); + match(input,RightSquareBracket,FOLLOW_2); + after(grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); } @@ -23030,26 +27490,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__4__Impl" + // $ANTLR end "rule__ExactMultiplicity__Group__2__Impl" - // $ANTLR start "rule__ClassDefinition__Group__5" - // InternalSolverLanguageParser.g:7469:1: rule__ClassDefinition__Group__5 : rule__ClassDefinition__Group__5__Impl rule__ClassDefinition__Group__6 ; - public final void rule__ClassDefinition__Group__5() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__0" + // InternalSolverLanguageParser.g:8936:1: rule__BoundedMultiplicity__Group__0 : rule__BoundedMultiplicity__Group__0__Impl rule__BoundedMultiplicity__Group__1 ; + public final void rule__BoundedMultiplicity__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7473:1: ( rule__ClassDefinition__Group__5__Impl rule__ClassDefinition__Group__6 ) - // InternalSolverLanguageParser.g:7474:2: rule__ClassDefinition__Group__5__Impl rule__ClassDefinition__Group__6 + // InternalSolverLanguageParser.g:8940:1: ( rule__BoundedMultiplicity__Group__0__Impl rule__BoundedMultiplicity__Group__1 ) + // InternalSolverLanguageParser.g:8941:2: rule__BoundedMultiplicity__Group__0__Impl rule__BoundedMultiplicity__Group__1 { - pushFollow(FOLLOW_53); - rule__ClassDefinition__Group__5__Impl(); + pushFollow(FOLLOW_64); + rule__BoundedMultiplicity__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ClassDefinition__Group__6(); + rule__BoundedMultiplicity__Group__1(); state._fsp--; @@ -23068,53 +27528,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__5" + // $ANTLR end "rule__BoundedMultiplicity__Group__0" - // $ANTLR start "rule__ClassDefinition__Group__5__Impl" - // InternalSolverLanguageParser.g:7481:1: rule__ClassDefinition__Group__5__Impl : ( ( rule__ClassDefinition__MembersAssignment_5 )* ) ; - public final void rule__ClassDefinition__Group__5__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__0__Impl" + // InternalSolverLanguageParser.g:8948:1: rule__BoundedMultiplicity__Group__0__Impl : ( LeftSquareBracket ) ; + public final void rule__BoundedMultiplicity__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7485:1: ( ( ( rule__ClassDefinition__MembersAssignment_5 )* ) ) - // InternalSolverLanguageParser.g:7486:1: ( ( rule__ClassDefinition__MembersAssignment_5 )* ) + // InternalSolverLanguageParser.g:8952:1: ( ( LeftSquareBracket ) ) + // InternalSolverLanguageParser.g:8953:1: ( LeftSquareBracket ) { - // InternalSolverLanguageParser.g:7486:1: ( ( rule__ClassDefinition__MembersAssignment_5 )* ) - // InternalSolverLanguageParser.g:7487:2: ( rule__ClassDefinition__MembersAssignment_5 )* + // InternalSolverLanguageParser.g:8953:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:8954:2: LeftSquareBracket { - before(grammarAccess.getClassDefinitionAccess().getMembersAssignment_5()); - // InternalSolverLanguageParser.g:7488:2: ( rule__ClassDefinition__MembersAssignment_5 )* - loop53: - do { - int alt53=2; - int LA53_0 = input.LA(1); - - if ( (LA53_0==Contains||LA53_0==RULE_QUOTED_ID||LA53_0==RULE_ID) ) { - alt53=1; - } - - - switch (alt53) { - case 1 : - // InternalSolverLanguageParser.g:7488:3: rule__ClassDefinition__MembersAssignment_5 - { - pushFollow(FOLLOW_54); - rule__ClassDefinition__MembersAssignment_5(); - - state._fsp--; - - - } - break; - - default : - break loop53; - } - } while (true); - - after(grammarAccess.getClassDefinitionAccess().getMembersAssignment_5()); + before(grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); + match(input,LeftSquareBracket,FOLLOW_2); + after(grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); } @@ -23133,21 +27565,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__5__Impl" + // $ANTLR end "rule__BoundedMultiplicity__Group__0__Impl" - // $ANTLR start "rule__ClassDefinition__Group__6" - // InternalSolverLanguageParser.g:7496:1: rule__ClassDefinition__Group__6 : rule__ClassDefinition__Group__6__Impl ; - public final void rule__ClassDefinition__Group__6() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__1" + // InternalSolverLanguageParser.g:8963:1: rule__BoundedMultiplicity__Group__1 : rule__BoundedMultiplicity__Group__1__Impl rule__BoundedMultiplicity__Group__2 ; + public final void rule__BoundedMultiplicity__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7500:1: ( rule__ClassDefinition__Group__6__Impl ) - // InternalSolverLanguageParser.g:7501:2: rule__ClassDefinition__Group__6__Impl + // InternalSolverLanguageParser.g:8967:1: ( rule__BoundedMultiplicity__Group__1__Impl rule__BoundedMultiplicity__Group__2 ) + // InternalSolverLanguageParser.g:8968:2: rule__BoundedMultiplicity__Group__1__Impl rule__BoundedMultiplicity__Group__2 { + pushFollow(FOLLOW_35); + rule__BoundedMultiplicity__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ClassDefinition__Group__6__Impl(); + rule__BoundedMultiplicity__Group__2(); state._fsp--; @@ -23166,25 +27603,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__6" + // $ANTLR end "rule__BoundedMultiplicity__Group__1" - // $ANTLR start "rule__ClassDefinition__Group__6__Impl" - // InternalSolverLanguageParser.g:7507:1: rule__ClassDefinition__Group__6__Impl : ( RightCurlyBracket ) ; - public final void rule__ClassDefinition__Group__6__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__1__Impl" + // InternalSolverLanguageParser.g:8975:1: rule__BoundedMultiplicity__Group__1__Impl : ( ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) ) ; + public final void rule__BoundedMultiplicity__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7511:1: ( ( RightCurlyBracket ) ) - // InternalSolverLanguageParser.g:7512:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:8979:1: ( ( ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:8980:1: ( ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) ) { - // InternalSolverLanguageParser.g:7512:1: ( RightCurlyBracket ) - // InternalSolverLanguageParser.g:7513:2: RightCurlyBracket + // InternalSolverLanguageParser.g:8980:1: ( ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) ) + // InternalSolverLanguageParser.g:8981:2: ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) { - before(grammarAccess.getClassDefinitionAccess().getRightCurlyBracketKeyword_6()); - match(input,RightCurlyBracket,FOLLOW_2); - after(grammarAccess.getClassDefinitionAccess().getRightCurlyBracketKeyword_6()); + before(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1()); + // InternalSolverLanguageParser.g:8982:2: ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) + // InternalSolverLanguageParser.g:8982:3: rule__BoundedMultiplicity__LowerBoundAssignment_1 + { + pushFollow(FOLLOW_2); + rule__BoundedMultiplicity__LowerBoundAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1()); } @@ -23203,26 +27650,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group__6__Impl" + // $ANTLR end "rule__BoundedMultiplicity__Group__1__Impl" - // $ANTLR start "rule__ClassDefinition__Group_3__0" - // InternalSolverLanguageParser.g:7523:1: rule__ClassDefinition__Group_3__0 : rule__ClassDefinition__Group_3__0__Impl rule__ClassDefinition__Group_3__1 ; - public final void rule__ClassDefinition__Group_3__0() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__2" + // InternalSolverLanguageParser.g:8990:1: rule__BoundedMultiplicity__Group__2 : rule__BoundedMultiplicity__Group__2__Impl rule__BoundedMultiplicity__Group__3 ; + public final void rule__BoundedMultiplicity__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7527:1: ( rule__ClassDefinition__Group_3__0__Impl rule__ClassDefinition__Group_3__1 ) - // InternalSolverLanguageParser.g:7528:2: rule__ClassDefinition__Group_3__0__Impl rule__ClassDefinition__Group_3__1 + // InternalSolverLanguageParser.g:8994:1: ( rule__BoundedMultiplicity__Group__2__Impl rule__BoundedMultiplicity__Group__3 ) + // InternalSolverLanguageParser.g:8995:2: rule__BoundedMultiplicity__Group__2__Impl rule__BoundedMultiplicity__Group__3 { - pushFollow(FOLLOW_9); - rule__ClassDefinition__Group_3__0__Impl(); + pushFollow(FOLLOW_63); + rule__BoundedMultiplicity__Group__2__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ClassDefinition__Group_3__1(); + rule__BoundedMultiplicity__Group__3(); state._fsp--; @@ -23241,25 +27688,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3__0" + // $ANTLR end "rule__BoundedMultiplicity__Group__2" - // $ANTLR start "rule__ClassDefinition__Group_3__0__Impl" - // InternalSolverLanguageParser.g:7535:1: rule__ClassDefinition__Group_3__0__Impl : ( Extends ) ; - public final void rule__ClassDefinition__Group_3__0__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__2__Impl" + // InternalSolverLanguageParser.g:9002:1: rule__BoundedMultiplicity__Group__2__Impl : ( Comma ) ; + public final void rule__BoundedMultiplicity__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7539:1: ( ( Extends ) ) - // InternalSolverLanguageParser.g:7540:1: ( Extends ) + // InternalSolverLanguageParser.g:9006:1: ( ( Comma ) ) + // InternalSolverLanguageParser.g:9007:1: ( Comma ) { - // InternalSolverLanguageParser.g:7540:1: ( Extends ) - // InternalSolverLanguageParser.g:7541:2: Extends + // InternalSolverLanguageParser.g:9007:1: ( Comma ) + // InternalSolverLanguageParser.g:9008:2: Comma { - before(grammarAccess.getClassDefinitionAccess().getExtendsKeyword_3_0()); - match(input,Extends,FOLLOW_2); - after(grammarAccess.getClassDefinitionAccess().getExtendsKeyword_3_0()); + before(grammarAccess.getBoundedMultiplicityAccess().getCommaKeyword_2()); + match(input,Comma,FOLLOW_2); + after(grammarAccess.getBoundedMultiplicityAccess().getCommaKeyword_2()); } @@ -23278,26 +27725,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3__0__Impl" + // $ANTLR end "rule__BoundedMultiplicity__Group__2__Impl" - // $ANTLR start "rule__ClassDefinition__Group_3__1" - // InternalSolverLanguageParser.g:7550:1: rule__ClassDefinition__Group_3__1 : rule__ClassDefinition__Group_3__1__Impl rule__ClassDefinition__Group_3__2 ; - public final void rule__ClassDefinition__Group_3__1() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__3" + // InternalSolverLanguageParser.g:9017:1: rule__BoundedMultiplicity__Group__3 : rule__BoundedMultiplicity__Group__3__Impl rule__BoundedMultiplicity__Group__4 ; + public final void rule__BoundedMultiplicity__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7554:1: ( rule__ClassDefinition__Group_3__1__Impl rule__ClassDefinition__Group_3__2 ) - // InternalSolverLanguageParser.g:7555:2: rule__ClassDefinition__Group_3__1__Impl rule__ClassDefinition__Group_3__2 + // InternalSolverLanguageParser.g:9021:1: ( rule__BoundedMultiplicity__Group__3__Impl rule__BoundedMultiplicity__Group__4 ) + // InternalSolverLanguageParser.g:9022:2: rule__BoundedMultiplicity__Group__3__Impl rule__BoundedMultiplicity__Group__4 { - pushFollow(FOLLOW_19); - rule__ClassDefinition__Group_3__1__Impl(); + pushFollow(FOLLOW_52); + rule__BoundedMultiplicity__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ClassDefinition__Group_3__2(); + rule__BoundedMultiplicity__Group__4(); state._fsp--; @@ -23316,35 +27763,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3__1" + // $ANTLR end "rule__BoundedMultiplicity__Group__3" - // $ANTLR start "rule__ClassDefinition__Group_3__1__Impl" - // InternalSolverLanguageParser.g:7562:1: rule__ClassDefinition__Group_3__1__Impl : ( ( rule__ClassDefinition__SuperclassesAssignment_3_1 ) ) ; - public final void rule__ClassDefinition__Group_3__1__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__3__Impl" + // InternalSolverLanguageParser.g:9029:1: rule__BoundedMultiplicity__Group__3__Impl : ( ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) ) ; + public final void rule__BoundedMultiplicity__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7566:1: ( ( ( rule__ClassDefinition__SuperclassesAssignment_3_1 ) ) ) - // InternalSolverLanguageParser.g:7567:1: ( ( rule__ClassDefinition__SuperclassesAssignment_3_1 ) ) + // InternalSolverLanguageParser.g:9033:1: ( ( ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:9034:1: ( ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) ) { - // InternalSolverLanguageParser.g:7567:1: ( ( rule__ClassDefinition__SuperclassesAssignment_3_1 ) ) - // InternalSolverLanguageParser.g:7568:2: ( rule__ClassDefinition__SuperclassesAssignment_3_1 ) + // InternalSolverLanguageParser.g:9034:1: ( ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) ) + // InternalSolverLanguageParser.g:9035:2: ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) { - before(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_1()); - // InternalSolverLanguageParser.g:7569:2: ( rule__ClassDefinition__SuperclassesAssignment_3_1 ) - // InternalSolverLanguageParser.g:7569:3: rule__ClassDefinition__SuperclassesAssignment_3_1 + before(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3()); + // InternalSolverLanguageParser.g:9036:2: ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) + // InternalSolverLanguageParser.g:9036:3: rule__BoundedMultiplicity__UpperBoundAssignment_3 { pushFollow(FOLLOW_2); - rule__ClassDefinition__SuperclassesAssignment_3_1(); + rule__BoundedMultiplicity__UpperBoundAssignment_3(); state._fsp--; } - after(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_1()); + after(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3()); } @@ -23363,21 +27810,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3__1__Impl" + // $ANTLR end "rule__BoundedMultiplicity__Group__3__Impl" - // $ANTLR start "rule__ClassDefinition__Group_3__2" - // InternalSolverLanguageParser.g:7577:1: rule__ClassDefinition__Group_3__2 : rule__ClassDefinition__Group_3__2__Impl ; - public final void rule__ClassDefinition__Group_3__2() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__4" + // InternalSolverLanguageParser.g:9044:1: rule__BoundedMultiplicity__Group__4 : rule__BoundedMultiplicity__Group__4__Impl ; + public final void rule__BoundedMultiplicity__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7581:1: ( rule__ClassDefinition__Group_3__2__Impl ) - // InternalSolverLanguageParser.g:7582:2: rule__ClassDefinition__Group_3__2__Impl + // InternalSolverLanguageParser.g:9048:1: ( rule__BoundedMultiplicity__Group__4__Impl ) + // InternalSolverLanguageParser.g:9049:2: rule__BoundedMultiplicity__Group__4__Impl { pushFollow(FOLLOW_2); - rule__ClassDefinition__Group_3__2__Impl(); + rule__BoundedMultiplicity__Group__4__Impl(); state._fsp--; @@ -23396,53 +27843,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3__2" + // $ANTLR end "rule__BoundedMultiplicity__Group__4" - // $ANTLR start "rule__ClassDefinition__Group_3__2__Impl" - // InternalSolverLanguageParser.g:7588:1: rule__ClassDefinition__Group_3__2__Impl : ( ( rule__ClassDefinition__Group_3_2__0 )* ) ; - public final void rule__ClassDefinition__Group_3__2__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__Group__4__Impl" + // InternalSolverLanguageParser.g:9055:1: rule__BoundedMultiplicity__Group__4__Impl : ( RightSquareBracket ) ; + public final void rule__BoundedMultiplicity__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7592:1: ( ( ( rule__ClassDefinition__Group_3_2__0 )* ) ) - // InternalSolverLanguageParser.g:7593:1: ( ( rule__ClassDefinition__Group_3_2__0 )* ) + // InternalSolverLanguageParser.g:9059:1: ( ( RightSquareBracket ) ) + // InternalSolverLanguageParser.g:9060:1: ( RightSquareBracket ) { - // InternalSolverLanguageParser.g:7593:1: ( ( rule__ClassDefinition__Group_3_2__0 )* ) - // InternalSolverLanguageParser.g:7594:2: ( rule__ClassDefinition__Group_3_2__0 )* + // InternalSolverLanguageParser.g:9060:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:9061:2: RightSquareBracket { - before(grammarAccess.getClassDefinitionAccess().getGroup_3_2()); - // InternalSolverLanguageParser.g:7595:2: ( rule__ClassDefinition__Group_3_2__0 )* - loop54: - do { - int alt54=2; - int LA54_0 = input.LA(1); - - if ( (LA54_0==Comma) ) { - alt54=1; - } - - - switch (alt54) { - case 1 : - // InternalSolverLanguageParser.g:7595:3: rule__ClassDefinition__Group_3_2__0 - { - pushFollow(FOLLOW_20); - rule__ClassDefinition__Group_3_2__0(); - - state._fsp--; - - - } - break; - - default : - break loop54; - } - } while (true); - - after(grammarAccess.getClassDefinitionAccess().getGroup_3_2()); + before(grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); + match(input,RightSquareBracket,FOLLOW_2); + after(grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); } @@ -23461,26 +27880,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3__2__Impl" + // $ANTLR end "rule__BoundedMultiplicity__Group__4__Impl" - // $ANTLR start "rule__ClassDefinition__Group_3_2__0" - // InternalSolverLanguageParser.g:7604:1: rule__ClassDefinition__Group_3_2__0 : rule__ClassDefinition__Group_3_2__0__Impl rule__ClassDefinition__Group_3_2__1 ; - public final void rule__ClassDefinition__Group_3_2__0() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group__0" + // InternalSolverLanguageParser.g:9071:1: rule__EnumDeclaration__Group__0 : rule__EnumDeclaration__Group__0__Impl rule__EnumDeclaration__Group__1 ; + public final void rule__EnumDeclaration__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7608:1: ( rule__ClassDefinition__Group_3_2__0__Impl rule__ClassDefinition__Group_3_2__1 ) - // InternalSolverLanguageParser.g:7609:2: rule__ClassDefinition__Group_3_2__0__Impl rule__ClassDefinition__Group_3_2__1 + // InternalSolverLanguageParser.g:9075:1: ( rule__EnumDeclaration__Group__0__Impl rule__EnumDeclaration__Group__1 ) + // InternalSolverLanguageParser.g:9076:2: rule__EnumDeclaration__Group__0__Impl rule__EnumDeclaration__Group__1 { - pushFollow(FOLLOW_9); - rule__ClassDefinition__Group_3_2__0__Impl(); + pushFollow(FOLLOW_48); + rule__EnumDeclaration__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ClassDefinition__Group_3_2__1(); + rule__EnumDeclaration__Group__1(); state._fsp--; @@ -23499,25 +27918,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3_2__0" + // $ANTLR end "rule__EnumDeclaration__Group__0" - // $ANTLR start "rule__ClassDefinition__Group_3_2__0__Impl" - // InternalSolverLanguageParser.g:7616:1: rule__ClassDefinition__Group_3_2__0__Impl : ( Comma ) ; - public final void rule__ClassDefinition__Group_3_2__0__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group__0__Impl" + // InternalSolverLanguageParser.g:9083:1: rule__EnumDeclaration__Group__0__Impl : ( Enum ) ; + public final void rule__EnumDeclaration__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7620:1: ( ( Comma ) ) - // InternalSolverLanguageParser.g:7621:1: ( Comma ) + // InternalSolverLanguageParser.g:9087:1: ( ( Enum ) ) + // InternalSolverLanguageParser.g:9088:1: ( Enum ) { - // InternalSolverLanguageParser.g:7621:1: ( Comma ) - // InternalSolverLanguageParser.g:7622:2: Comma + // InternalSolverLanguageParser.g:9088:1: ( Enum ) + // InternalSolverLanguageParser.g:9089:2: Enum { - before(grammarAccess.getClassDefinitionAccess().getCommaKeyword_3_2_0()); - match(input,Comma,FOLLOW_2); - after(grammarAccess.getClassDefinitionAccess().getCommaKeyword_3_2_0()); + before(grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); + match(input,Enum,FOLLOW_2); + after(grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); } @@ -23536,21 +27955,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3_2__0__Impl" + // $ANTLR end "rule__EnumDeclaration__Group__0__Impl" - // $ANTLR start "rule__ClassDefinition__Group_3_2__1" - // InternalSolverLanguageParser.g:7631:1: rule__ClassDefinition__Group_3_2__1 : rule__ClassDefinition__Group_3_2__1__Impl ; - public final void rule__ClassDefinition__Group_3_2__1() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group__1" + // InternalSolverLanguageParser.g:9098:1: rule__EnumDeclaration__Group__1 : rule__EnumDeclaration__Group__1__Impl rule__EnumDeclaration__Group__2 ; + public final void rule__EnumDeclaration__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7635:1: ( rule__ClassDefinition__Group_3_2__1__Impl ) - // InternalSolverLanguageParser.g:7636:2: rule__ClassDefinition__Group_3_2__1__Impl + // InternalSolverLanguageParser.g:9102:1: ( rule__EnumDeclaration__Group__1__Impl rule__EnumDeclaration__Group__2 ) + // InternalSolverLanguageParser.g:9103:2: rule__EnumDeclaration__Group__1__Impl rule__EnumDeclaration__Group__2 { + pushFollow(FOLLOW_65); + rule__EnumDeclaration__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ClassDefinition__Group_3_2__1__Impl(); + rule__EnumDeclaration__Group__2(); state._fsp--; @@ -23569,35 +27993,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3_2__1" + // $ANTLR end "rule__EnumDeclaration__Group__1" - // $ANTLR start "rule__ClassDefinition__Group_3_2__1__Impl" - // InternalSolverLanguageParser.g:7642:1: rule__ClassDefinition__Group_3_2__1__Impl : ( ( rule__ClassDefinition__SuperclassesAssignment_3_2_1 ) ) ; - public final void rule__ClassDefinition__Group_3_2__1__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group__1__Impl" + // InternalSolverLanguageParser.g:9110:1: rule__EnumDeclaration__Group__1__Impl : ( ( rule__EnumDeclaration__NameAssignment_1 ) ) ; + public final void rule__EnumDeclaration__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7646:1: ( ( ( rule__ClassDefinition__SuperclassesAssignment_3_2_1 ) ) ) - // InternalSolverLanguageParser.g:7647:1: ( ( rule__ClassDefinition__SuperclassesAssignment_3_2_1 ) ) + // InternalSolverLanguageParser.g:9114:1: ( ( ( rule__EnumDeclaration__NameAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:9115:1: ( ( rule__EnumDeclaration__NameAssignment_1 ) ) { - // InternalSolverLanguageParser.g:7647:1: ( ( rule__ClassDefinition__SuperclassesAssignment_3_2_1 ) ) - // InternalSolverLanguageParser.g:7648:2: ( rule__ClassDefinition__SuperclassesAssignment_3_2_1 ) + // InternalSolverLanguageParser.g:9115:1: ( ( rule__EnumDeclaration__NameAssignment_1 ) ) + // InternalSolverLanguageParser.g:9116:2: ( rule__EnumDeclaration__NameAssignment_1 ) { - before(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_2_1()); - // InternalSolverLanguageParser.g:7649:2: ( rule__ClassDefinition__SuperclassesAssignment_3_2_1 ) - // InternalSolverLanguageParser.g:7649:3: rule__ClassDefinition__SuperclassesAssignment_3_2_1 + before(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1()); + // InternalSolverLanguageParser.g:9117:2: ( rule__EnumDeclaration__NameAssignment_1 ) + // InternalSolverLanguageParser.g:9117:3: rule__EnumDeclaration__NameAssignment_1 { pushFollow(FOLLOW_2); - rule__ClassDefinition__SuperclassesAssignment_3_2_1(); + rule__EnumDeclaration__NameAssignment_1(); state._fsp--; } - after(grammarAccess.getClassDefinitionAccess().getSuperclassesAssignment_3_2_1()); + after(grammarAccess.getEnumDeclarationAccess().getNameAssignment_1()); } @@ -23616,26 +28040,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__Group_3_2__1__Impl" + // $ANTLR end "rule__EnumDeclaration__Group__1__Impl" - // $ANTLR start "rule__MemberDefinition__Group__0" - // InternalSolverLanguageParser.g:7658:1: rule__MemberDefinition__Group__0 : rule__MemberDefinition__Group__0__Impl rule__MemberDefinition__Group__1 ; - public final void rule__MemberDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group__2" + // InternalSolverLanguageParser.g:9125:1: rule__EnumDeclaration__Group__2 : rule__EnumDeclaration__Group__2__Impl ; + public final void rule__EnumDeclaration__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7662:1: ( rule__MemberDefinition__Group__0__Impl rule__MemberDefinition__Group__1 ) - // InternalSolverLanguageParser.g:7663:2: rule__MemberDefinition__Group__0__Impl rule__MemberDefinition__Group__1 + // InternalSolverLanguageParser.g:9129:1: ( rule__EnumDeclaration__Group__2__Impl ) + // InternalSolverLanguageParser.g:9130:2: rule__EnumDeclaration__Group__2__Impl { - pushFollow(FOLLOW_55); - rule__MemberDefinition__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__MemberDefinition__Group__1(); + rule__EnumDeclaration__Group__2__Impl(); state._fsp--; @@ -23654,46 +28073,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__0" + // $ANTLR end "rule__EnumDeclaration__Group__2" - // $ANTLR start "rule__MemberDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:7670:1: rule__MemberDefinition__Group__0__Impl : ( ( rule__MemberDefinition__ContainmentAssignment_0 )? ) ; - public final void rule__MemberDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group__2__Impl" + // InternalSolverLanguageParser.g:9136:1: rule__EnumDeclaration__Group__2__Impl : ( ( rule__EnumDeclaration__Alternatives_2 ) ) ; + public final void rule__EnumDeclaration__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7674:1: ( ( ( rule__MemberDefinition__ContainmentAssignment_0 )? ) ) - // InternalSolverLanguageParser.g:7675:1: ( ( rule__MemberDefinition__ContainmentAssignment_0 )? ) + // InternalSolverLanguageParser.g:9140:1: ( ( ( rule__EnumDeclaration__Alternatives_2 ) ) ) + // InternalSolverLanguageParser.g:9141:1: ( ( rule__EnumDeclaration__Alternatives_2 ) ) { - // InternalSolverLanguageParser.g:7675:1: ( ( rule__MemberDefinition__ContainmentAssignment_0 )? ) - // InternalSolverLanguageParser.g:7676:2: ( rule__MemberDefinition__ContainmentAssignment_0 )? + // InternalSolverLanguageParser.g:9141:1: ( ( rule__EnumDeclaration__Alternatives_2 ) ) + // InternalSolverLanguageParser.g:9142:2: ( rule__EnumDeclaration__Alternatives_2 ) { - before(grammarAccess.getMemberDefinitionAccess().getContainmentAssignment_0()); - // InternalSolverLanguageParser.g:7677:2: ( rule__MemberDefinition__ContainmentAssignment_0 )? - int alt55=2; - int LA55_0 = input.LA(1); - - if ( (LA55_0==Contains) ) { - alt55=1; - } - switch (alt55) { - case 1 : - // InternalSolverLanguageParser.g:7677:3: rule__MemberDefinition__ContainmentAssignment_0 - { - pushFollow(FOLLOW_2); - rule__MemberDefinition__ContainmentAssignment_0(); - - state._fsp--; + before(grammarAccess.getEnumDeclarationAccess().getAlternatives_2()); + // InternalSolverLanguageParser.g:9143:2: ( rule__EnumDeclaration__Alternatives_2 ) + // InternalSolverLanguageParser.g:9143:3: rule__EnumDeclaration__Alternatives_2 + { + pushFollow(FOLLOW_2); + rule__EnumDeclaration__Alternatives_2(); + state._fsp--; - } - break; } - after(grammarAccess.getMemberDefinitionAccess().getContainmentAssignment_0()); + after(grammarAccess.getEnumDeclarationAccess().getAlternatives_2()); } @@ -23712,26 +28120,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__0__Impl" + // $ANTLR end "rule__EnumDeclaration__Group__2__Impl" - // $ANTLR start "rule__MemberDefinition__Group__1" - // InternalSolverLanguageParser.g:7685:1: rule__MemberDefinition__Group__1 : rule__MemberDefinition__Group__1__Impl rule__MemberDefinition__Group__2 ; - public final void rule__MemberDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0__0" + // InternalSolverLanguageParser.g:9152:1: rule__EnumDeclaration__Group_2_0__0 : rule__EnumDeclaration__Group_2_0__0__Impl rule__EnumDeclaration__Group_2_0__1 ; + public final void rule__EnumDeclaration__Group_2_0__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7689:1: ( rule__MemberDefinition__Group__1__Impl rule__MemberDefinition__Group__2 ) - // InternalSolverLanguageParser.g:7690:2: rule__MemberDefinition__Group__1__Impl rule__MemberDefinition__Group__2 + // InternalSolverLanguageParser.g:9156:1: ( rule__EnumDeclaration__Group_2_0__0__Impl rule__EnumDeclaration__Group_2_0__1 ) + // InternalSolverLanguageParser.g:9157:2: rule__EnumDeclaration__Group_2_0__0__Impl rule__EnumDeclaration__Group_2_0__1 { - pushFollow(FOLLOW_56); - rule__MemberDefinition__Group__1__Impl(); + pushFollow(FOLLOW_66); + rule__EnumDeclaration__Group_2_0__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MemberDefinition__Group__2(); + rule__EnumDeclaration__Group_2_0__1(); state._fsp--; @@ -23750,35 +28158,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__1" + // $ANTLR end "rule__EnumDeclaration__Group_2_0__0" - // $ANTLR start "rule__MemberDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:7697:1: rule__MemberDefinition__Group__1__Impl : ( ( rule__MemberDefinition__TypeAssignment_1 ) ) ; - public final void rule__MemberDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0__0__Impl" + // InternalSolverLanguageParser.g:9164:1: rule__EnumDeclaration__Group_2_0__0__Impl : ( LeftCurlyBracket ) ; + public final void rule__EnumDeclaration__Group_2_0__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7701:1: ( ( ( rule__MemberDefinition__TypeAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:7702:1: ( ( rule__MemberDefinition__TypeAssignment_1 ) ) + // InternalSolverLanguageParser.g:9168:1: ( ( LeftCurlyBracket ) ) + // InternalSolverLanguageParser.g:9169:1: ( LeftCurlyBracket ) { - // InternalSolverLanguageParser.g:7702:1: ( ( rule__MemberDefinition__TypeAssignment_1 ) ) - // InternalSolverLanguageParser.g:7703:2: ( rule__MemberDefinition__TypeAssignment_1 ) + // InternalSolverLanguageParser.g:9169:1: ( LeftCurlyBracket ) + // InternalSolverLanguageParser.g:9170:2: LeftCurlyBracket { - before(grammarAccess.getMemberDefinitionAccess().getTypeAssignment_1()); - // InternalSolverLanguageParser.g:7704:2: ( rule__MemberDefinition__TypeAssignment_1 ) - // InternalSolverLanguageParser.g:7704:3: rule__MemberDefinition__TypeAssignment_1 - { - pushFollow(FOLLOW_2); - rule__MemberDefinition__TypeAssignment_1(); - - state._fsp--; - - - } - - after(grammarAccess.getMemberDefinitionAccess().getTypeAssignment_1()); + before(grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); + match(input,LeftCurlyBracket,FOLLOW_2); + after(grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); } @@ -23797,26 +28195,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__1__Impl" + // $ANTLR end "rule__EnumDeclaration__Group_2_0__0__Impl" - // $ANTLR start "rule__MemberDefinition__Group__2" - // InternalSolverLanguageParser.g:7712:1: rule__MemberDefinition__Group__2 : rule__MemberDefinition__Group__2__Impl rule__MemberDefinition__Group__3 ; - public final void rule__MemberDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0__1" + // InternalSolverLanguageParser.g:9179:1: rule__EnumDeclaration__Group_2_0__1 : rule__EnumDeclaration__Group_2_0__1__Impl rule__EnumDeclaration__Group_2_0__2 ; + public final void rule__EnumDeclaration__Group_2_0__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7716:1: ( rule__MemberDefinition__Group__2__Impl rule__MemberDefinition__Group__3 ) - // InternalSolverLanguageParser.g:7717:2: rule__MemberDefinition__Group__2__Impl rule__MemberDefinition__Group__3 + // InternalSolverLanguageParser.g:9183:1: ( rule__EnumDeclaration__Group_2_0__1__Impl rule__EnumDeclaration__Group_2_0__2 ) + // InternalSolverLanguageParser.g:9184:2: rule__EnumDeclaration__Group_2_0__1__Impl rule__EnumDeclaration__Group_2_0__2 { - pushFollow(FOLLOW_56); - rule__MemberDefinition__Group__2__Impl(); + pushFollow(FOLLOW_66); + rule__EnumDeclaration__Group_2_0__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MemberDefinition__Group__3(); + rule__EnumDeclaration__Group_2_0__2(); state._fsp--; @@ -23835,36 +28233,36 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__2" + // $ANTLR end "rule__EnumDeclaration__Group_2_0__1" - // $ANTLR start "rule__MemberDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:7724:1: rule__MemberDefinition__Group__2__Impl : ( ( rule__MemberDefinition__MultiplicityAssignment_2 )? ) ; - public final void rule__MemberDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0__1__Impl" + // InternalSolverLanguageParser.g:9191:1: rule__EnumDeclaration__Group_2_0__1__Impl : ( ( rule__EnumDeclaration__Group_2_0_1__0 )? ) ; + public final void rule__EnumDeclaration__Group_2_0__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7728:1: ( ( ( rule__MemberDefinition__MultiplicityAssignment_2 )? ) ) - // InternalSolverLanguageParser.g:7729:1: ( ( rule__MemberDefinition__MultiplicityAssignment_2 )? ) + // InternalSolverLanguageParser.g:9195:1: ( ( ( rule__EnumDeclaration__Group_2_0_1__0 )? ) ) + // InternalSolverLanguageParser.g:9196:1: ( ( rule__EnumDeclaration__Group_2_0_1__0 )? ) { - // InternalSolverLanguageParser.g:7729:1: ( ( rule__MemberDefinition__MultiplicityAssignment_2 )? ) - // InternalSolverLanguageParser.g:7730:2: ( rule__MemberDefinition__MultiplicityAssignment_2 )? + // InternalSolverLanguageParser.g:9196:1: ( ( rule__EnumDeclaration__Group_2_0_1__0 )? ) + // InternalSolverLanguageParser.g:9197:2: ( rule__EnumDeclaration__Group_2_0_1__0 )? { - before(grammarAccess.getMemberDefinitionAccess().getMultiplicityAssignment_2()); - // InternalSolverLanguageParser.g:7731:2: ( rule__MemberDefinition__MultiplicityAssignment_2 )? - int alt56=2; - int LA56_0 = input.LA(1); + before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1()); + // InternalSolverLanguageParser.g:9198:2: ( rule__EnumDeclaration__Group_2_0_1__0 )? + int alt63=2; + int LA63_0 = input.LA(1); - if ( (LA56_0==LeftSquareBracket) ) { - alt56=1; + if ( (LA63_0==RULE_ID) ) { + alt63=1; } - switch (alt56) { + switch (alt63) { case 1 : - // InternalSolverLanguageParser.g:7731:3: rule__MemberDefinition__MultiplicityAssignment_2 + // InternalSolverLanguageParser.g:9198:3: rule__EnumDeclaration__Group_2_0_1__0 { pushFollow(FOLLOW_2); - rule__MemberDefinition__MultiplicityAssignment_2(); + rule__EnumDeclaration__Group_2_0_1__0(); state._fsp--; @@ -23874,7 +28272,7 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } - after(grammarAccess.getMemberDefinitionAccess().getMultiplicityAssignment_2()); + after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1()); } @@ -23893,26 +28291,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__2__Impl" + // $ANTLR end "rule__EnumDeclaration__Group_2_0__1__Impl" - // $ANTLR start "rule__MemberDefinition__Group__3" - // InternalSolverLanguageParser.g:7739:1: rule__MemberDefinition__Group__3 : rule__MemberDefinition__Group__3__Impl rule__MemberDefinition__Group__4 ; - public final void rule__MemberDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0__2" + // InternalSolverLanguageParser.g:9206:1: rule__EnumDeclaration__Group_2_0__2 : rule__EnumDeclaration__Group_2_0__2__Impl ; + public final void rule__EnumDeclaration__Group_2_0__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7743:1: ( rule__MemberDefinition__Group__3__Impl rule__MemberDefinition__Group__4 ) - // InternalSolverLanguageParser.g:7744:2: rule__MemberDefinition__Group__3__Impl rule__MemberDefinition__Group__4 + // InternalSolverLanguageParser.g:9210:1: ( rule__EnumDeclaration__Group_2_0__2__Impl ) + // InternalSolverLanguageParser.g:9211:2: rule__EnumDeclaration__Group_2_0__2__Impl { - pushFollow(FOLLOW_57); - rule__MemberDefinition__Group__3__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__MemberDefinition__Group__4(); + rule__EnumDeclaration__Group_2_0__2__Impl(); state._fsp--; @@ -23931,35 +28324,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__3" + // $ANTLR end "rule__EnumDeclaration__Group_2_0__2" - // $ANTLR start "rule__MemberDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:7751:1: rule__MemberDefinition__Group__3__Impl : ( ( rule__MemberDefinition__NameAssignment_3 ) ) ; - public final void rule__MemberDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0__2__Impl" + // InternalSolverLanguageParser.g:9217:1: rule__EnumDeclaration__Group_2_0__2__Impl : ( RightCurlyBracket ) ; + public final void rule__EnumDeclaration__Group_2_0__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7755:1: ( ( ( rule__MemberDefinition__NameAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:7756:1: ( ( rule__MemberDefinition__NameAssignment_3 ) ) + // InternalSolverLanguageParser.g:9221:1: ( ( RightCurlyBracket ) ) + // InternalSolverLanguageParser.g:9222:1: ( RightCurlyBracket ) { - // InternalSolverLanguageParser.g:7756:1: ( ( rule__MemberDefinition__NameAssignment_3 ) ) - // InternalSolverLanguageParser.g:7757:2: ( rule__MemberDefinition__NameAssignment_3 ) + // InternalSolverLanguageParser.g:9222:1: ( RightCurlyBracket ) + // InternalSolverLanguageParser.g:9223:2: RightCurlyBracket { - before(grammarAccess.getMemberDefinitionAccess().getNameAssignment_3()); - // InternalSolverLanguageParser.g:7758:2: ( rule__MemberDefinition__NameAssignment_3 ) - // InternalSolverLanguageParser.g:7758:3: rule__MemberDefinition__NameAssignment_3 - { - pushFollow(FOLLOW_2); - rule__MemberDefinition__NameAssignment_3(); - - state._fsp--; - - - } - - after(grammarAccess.getMemberDefinitionAccess().getNameAssignment_3()); + before(grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); + match(input,RightCurlyBracket,FOLLOW_2); + after(grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); } @@ -23978,26 +28361,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__3__Impl" + // $ANTLR end "rule__EnumDeclaration__Group_2_0__2__Impl" - // $ANTLR start "rule__MemberDefinition__Group__4" - // InternalSolverLanguageParser.g:7766:1: rule__MemberDefinition__Group__4 : rule__MemberDefinition__Group__4__Impl rule__MemberDefinition__Group__5 ; - public final void rule__MemberDefinition__Group__4() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__0" + // InternalSolverLanguageParser.g:9233:1: rule__EnumDeclaration__Group_2_0_1__0 : rule__EnumDeclaration__Group_2_0_1__0__Impl rule__EnumDeclaration__Group_2_0_1__1 ; + public final void rule__EnumDeclaration__Group_2_0_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7770:1: ( rule__MemberDefinition__Group__4__Impl rule__MemberDefinition__Group__5 ) - // InternalSolverLanguageParser.g:7771:2: rule__MemberDefinition__Group__4__Impl rule__MemberDefinition__Group__5 + // InternalSolverLanguageParser.g:9237:1: ( rule__EnumDeclaration__Group_2_0_1__0__Impl rule__EnumDeclaration__Group_2_0_1__1 ) + // InternalSolverLanguageParser.g:9238:2: rule__EnumDeclaration__Group_2_0_1__0__Impl rule__EnumDeclaration__Group_2_0_1__1 { - pushFollow(FOLLOW_57); - rule__MemberDefinition__Group__4__Impl(); + pushFollow(FOLLOW_67); + rule__EnumDeclaration__Group_2_0_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MemberDefinition__Group__5(); + rule__EnumDeclaration__Group_2_0_1__1(); state._fsp--; @@ -24016,46 +28399,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__4" + // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__0" - // $ANTLR start "rule__MemberDefinition__Group__4__Impl" - // InternalSolverLanguageParser.g:7778:1: rule__MemberDefinition__Group__4__Impl : ( ( rule__MemberDefinition__Group_4__0 )? ) ; - public final void rule__MemberDefinition__Group__4__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__0__Impl" + // InternalSolverLanguageParser.g:9245:1: rule__EnumDeclaration__Group_2_0_1__0__Impl : ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) ) ; + public final void rule__EnumDeclaration__Group_2_0_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7782:1: ( ( ( rule__MemberDefinition__Group_4__0 )? ) ) - // InternalSolverLanguageParser.g:7783:1: ( ( rule__MemberDefinition__Group_4__0 )? ) + // InternalSolverLanguageParser.g:9249:1: ( ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) ) ) + // InternalSolverLanguageParser.g:9250:1: ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) ) { - // InternalSolverLanguageParser.g:7783:1: ( ( rule__MemberDefinition__Group_4__0 )? ) - // InternalSolverLanguageParser.g:7784:2: ( rule__MemberDefinition__Group_4__0 )? + // InternalSolverLanguageParser.g:9250:1: ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) ) + // InternalSolverLanguageParser.g:9251:2: ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) { - before(grammarAccess.getMemberDefinitionAccess().getGroup_4()); - // InternalSolverLanguageParser.g:7785:2: ( rule__MemberDefinition__Group_4__0 )? - int alt57=2; - int LA57_0 = input.LA(1); - - if ( (LA57_0==Opposite) ) { - alt57=1; - } - switch (alt57) { - case 1 : - // InternalSolverLanguageParser.g:7785:3: rule__MemberDefinition__Group_4__0 - { - pushFollow(FOLLOW_2); - rule__MemberDefinition__Group_4__0(); - - state._fsp--; + before(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0()); + // InternalSolverLanguageParser.g:9252:2: ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 ) + // InternalSolverLanguageParser.g:9252:3: rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 + { + pushFollow(FOLLOW_2); + rule__EnumDeclaration__LiteralsAssignment_2_0_1_0(); + state._fsp--; - } - break; } - after(grammarAccess.getMemberDefinitionAccess().getGroup_4()); + after(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_0()); } @@ -24074,21 +28446,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__4__Impl" + // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__0__Impl" - // $ANTLR start "rule__MemberDefinition__Group__5" - // InternalSolverLanguageParser.g:7793:1: rule__MemberDefinition__Group__5 : rule__MemberDefinition__Group__5__Impl ; - public final void rule__MemberDefinition__Group__5() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__1" + // InternalSolverLanguageParser.g:9260:1: rule__EnumDeclaration__Group_2_0_1__1 : rule__EnumDeclaration__Group_2_0_1__1__Impl ; + public final void rule__EnumDeclaration__Group_2_0_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7797:1: ( rule__MemberDefinition__Group__5__Impl ) - // InternalSolverLanguageParser.g:7798:2: rule__MemberDefinition__Group__5__Impl + // InternalSolverLanguageParser.g:9264:1: ( rule__EnumDeclaration__Group_2_0_1__1__Impl ) + // InternalSolverLanguageParser.g:9265:2: rule__EnumDeclaration__Group_2_0_1__1__Impl { pushFollow(FOLLOW_2); - rule__MemberDefinition__Group__5__Impl(); + rule__EnumDeclaration__Group_2_0_1__1__Impl(); state._fsp--; @@ -24107,42 +28479,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__5" + // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__1" - // $ANTLR start "rule__MemberDefinition__Group__5__Impl" - // InternalSolverLanguageParser.g:7804:1: rule__MemberDefinition__Group__5__Impl : ( ( Semicolon )? ) ; - public final void rule__MemberDefinition__Group__5__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0_1__1__Impl" + // InternalSolverLanguageParser.g:9271:1: rule__EnumDeclaration__Group_2_0_1__1__Impl : ( ( rule__EnumDeclaration__Group_2_0_1_1__0 )* ) ; + public final void rule__EnumDeclaration__Group_2_0_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7808:1: ( ( ( Semicolon )? ) ) - // InternalSolverLanguageParser.g:7809:1: ( ( Semicolon )? ) + // InternalSolverLanguageParser.g:9275:1: ( ( ( rule__EnumDeclaration__Group_2_0_1_1__0 )* ) ) + // InternalSolverLanguageParser.g:9276:1: ( ( rule__EnumDeclaration__Group_2_0_1_1__0 )* ) { - // InternalSolverLanguageParser.g:7809:1: ( ( Semicolon )? ) - // InternalSolverLanguageParser.g:7810:2: ( Semicolon )? + // InternalSolverLanguageParser.g:9276:1: ( ( rule__EnumDeclaration__Group_2_0_1_1__0 )* ) + // InternalSolverLanguageParser.g:9277:2: ( rule__EnumDeclaration__Group_2_0_1_1__0 )* { - before(grammarAccess.getMemberDefinitionAccess().getSemicolonKeyword_5()); - // InternalSolverLanguageParser.g:7811:2: ( Semicolon )? - int alt58=2; - int LA58_0 = input.LA(1); + before(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1()); + // InternalSolverLanguageParser.g:9278:2: ( rule__EnumDeclaration__Group_2_0_1_1__0 )* + loop64: + do { + int alt64=2; + int LA64_0 = input.LA(1); + + if ( (LA64_0==Comma||LA64_0==RULE_ID) ) { + alt64=1; + } + + + switch (alt64) { + case 1 : + // InternalSolverLanguageParser.g:9278:3: rule__EnumDeclaration__Group_2_0_1_1__0 + { + pushFollow(FOLLOW_68); + rule__EnumDeclaration__Group_2_0_1_1__0(); - if ( (LA58_0==Semicolon) ) { - alt58=1; - } - switch (alt58) { - case 1 : - // InternalSolverLanguageParser.g:7811:3: Semicolon - { - match(input,Semicolon,FOLLOW_2); + state._fsp--; - } - break; - } + } + break; + + default : + break loop64; + } + } while (true); - after(grammarAccess.getMemberDefinitionAccess().getSemicolonKeyword_5()); + after(grammarAccess.getEnumDeclarationAccess().getGroup_2_0_1_1()); } @@ -24161,26 +28544,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group__5__Impl" + // $ANTLR end "rule__EnumDeclaration__Group_2_0_1__1__Impl" - // $ANTLR start "rule__MemberDefinition__Group_4__0" - // InternalSolverLanguageParser.g:7820:1: rule__MemberDefinition__Group_4__0 : rule__MemberDefinition__Group_4__0__Impl rule__MemberDefinition__Group_4__1 ; - public final void rule__MemberDefinition__Group_4__0() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0_1_1__0" + // InternalSolverLanguageParser.g:9287:1: rule__EnumDeclaration__Group_2_0_1_1__0 : rule__EnumDeclaration__Group_2_0_1_1__0__Impl rule__EnumDeclaration__Group_2_0_1_1__1 ; + public final void rule__EnumDeclaration__Group_2_0_1_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7824:1: ( rule__MemberDefinition__Group_4__0__Impl rule__MemberDefinition__Group_4__1 ) - // InternalSolverLanguageParser.g:7825:2: rule__MemberDefinition__Group_4__0__Impl rule__MemberDefinition__Group_4__1 + // InternalSolverLanguageParser.g:9291:1: ( rule__EnumDeclaration__Group_2_0_1_1__0__Impl rule__EnumDeclaration__Group_2_0_1_1__1 ) + // InternalSolverLanguageParser.g:9292:2: rule__EnumDeclaration__Group_2_0_1_1__0__Impl rule__EnumDeclaration__Group_2_0_1_1__1 { - pushFollow(FOLLOW_9); - rule__MemberDefinition__Group_4__0__Impl(); + pushFollow(FOLLOW_67); + rule__EnumDeclaration__Group_2_0_1_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__MemberDefinition__Group_4__1(); + rule__EnumDeclaration__Group_2_0_1_1__1(); state._fsp--; @@ -24199,25 +28582,42 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group_4__0" + // $ANTLR end "rule__EnumDeclaration__Group_2_0_1_1__0" - // $ANTLR start "rule__MemberDefinition__Group_4__0__Impl" - // InternalSolverLanguageParser.g:7832:1: rule__MemberDefinition__Group_4__0__Impl : ( Opposite ) ; - public final void rule__MemberDefinition__Group_4__0__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0_1_1__0__Impl" + // InternalSolverLanguageParser.g:9299:1: rule__EnumDeclaration__Group_2_0_1_1__0__Impl : ( ( Comma )? ) ; + public final void rule__EnumDeclaration__Group_2_0_1_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7836:1: ( ( Opposite ) ) - // InternalSolverLanguageParser.g:7837:1: ( Opposite ) + // InternalSolverLanguageParser.g:9303:1: ( ( ( Comma )? ) ) + // InternalSolverLanguageParser.g:9304:1: ( ( Comma )? ) { - // InternalSolverLanguageParser.g:7837:1: ( Opposite ) - // InternalSolverLanguageParser.g:7838:2: Opposite + // InternalSolverLanguageParser.g:9304:1: ( ( Comma )? ) + // InternalSolverLanguageParser.g:9305:2: ( Comma )? { - before(grammarAccess.getMemberDefinitionAccess().getOppositeKeyword_4_0()); - match(input,Opposite,FOLLOW_2); - after(grammarAccess.getMemberDefinitionAccess().getOppositeKeyword_4_0()); + before(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); + // InternalSolverLanguageParser.g:9306:2: ( Comma )? + int alt65=2; + int LA65_0 = input.LA(1); + + if ( (LA65_0==Comma) ) { + alt65=1; + } + switch (alt65) { + case 1 : + // InternalSolverLanguageParser.g:9306:3: Comma + { + match(input,Comma,FOLLOW_2); + + } + break; + + } + + after(grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); } @@ -24236,21 +28636,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group_4__0__Impl" + // $ANTLR end "rule__EnumDeclaration__Group_2_0_1_1__0__Impl" - // $ANTLR start "rule__MemberDefinition__Group_4__1" - // InternalSolverLanguageParser.g:7847:1: rule__MemberDefinition__Group_4__1 : rule__MemberDefinition__Group_4__1__Impl ; - public final void rule__MemberDefinition__Group_4__1() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0_1_1__1" + // InternalSolverLanguageParser.g:9314:1: rule__EnumDeclaration__Group_2_0_1_1__1 : rule__EnumDeclaration__Group_2_0_1_1__1__Impl ; + public final void rule__EnumDeclaration__Group_2_0_1_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7851:1: ( rule__MemberDefinition__Group_4__1__Impl ) - // InternalSolverLanguageParser.g:7852:2: rule__MemberDefinition__Group_4__1__Impl + // InternalSolverLanguageParser.g:9318:1: ( rule__EnumDeclaration__Group_2_0_1_1__1__Impl ) + // InternalSolverLanguageParser.g:9319:2: rule__EnumDeclaration__Group_2_0_1_1__1__Impl { pushFollow(FOLLOW_2); - rule__MemberDefinition__Group_4__1__Impl(); + rule__EnumDeclaration__Group_2_0_1_1__1__Impl(); state._fsp--; @@ -24269,35 +28669,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group_4__1" + // $ANTLR end "rule__EnumDeclaration__Group_2_0_1_1__1" - // $ANTLR start "rule__MemberDefinition__Group_4__1__Impl" - // InternalSolverLanguageParser.g:7858:1: rule__MemberDefinition__Group_4__1__Impl : ( ( rule__MemberDefinition__OppositeAssignment_4_1 ) ) ; - public final void rule__MemberDefinition__Group_4__1__Impl() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__Group_2_0_1_1__1__Impl" + // InternalSolverLanguageParser.g:9325:1: rule__EnumDeclaration__Group_2_0_1_1__1__Impl : ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) ) ; + public final void rule__EnumDeclaration__Group_2_0_1_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7862:1: ( ( ( rule__MemberDefinition__OppositeAssignment_4_1 ) ) ) - // InternalSolverLanguageParser.g:7863:1: ( ( rule__MemberDefinition__OppositeAssignment_4_1 ) ) + // InternalSolverLanguageParser.g:9329:1: ( ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) ) ) + // InternalSolverLanguageParser.g:9330:1: ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) ) { - // InternalSolverLanguageParser.g:7863:1: ( ( rule__MemberDefinition__OppositeAssignment_4_1 ) ) - // InternalSolverLanguageParser.g:7864:2: ( rule__MemberDefinition__OppositeAssignment_4_1 ) + // InternalSolverLanguageParser.g:9330:1: ( ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) ) + // InternalSolverLanguageParser.g:9331:2: ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) { - before(grammarAccess.getMemberDefinitionAccess().getOppositeAssignment_4_1()); - // InternalSolverLanguageParser.g:7865:2: ( rule__MemberDefinition__OppositeAssignment_4_1 ) - // InternalSolverLanguageParser.g:7865:3: rule__MemberDefinition__OppositeAssignment_4_1 + before(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1()); + // InternalSolverLanguageParser.g:9332:2: ( rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 ) + // InternalSolverLanguageParser.g:9332:3: rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 { pushFollow(FOLLOW_2); - rule__MemberDefinition__OppositeAssignment_4_1(); + rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1(); state._fsp--; } - after(grammarAccess.getMemberDefinitionAccess().getOppositeAssignment_4_1()); + after(grammarAccess.getEnumDeclarationAccess().getLiteralsAssignment_2_0_1_1_1()); } @@ -24316,26 +28716,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__Group_4__1__Impl" + // $ANTLR end "rule__EnumDeclaration__Group_2_0_1_1__1__Impl" - // $ANTLR start "rule__ManyMultiplicity__Group__0" - // InternalSolverLanguageParser.g:7874:1: rule__ManyMultiplicity__Group__0 : rule__ManyMultiplicity__Group__0__Impl rule__ManyMultiplicity__Group__1 ; - public final void rule__ManyMultiplicity__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__0" + // InternalSolverLanguageParser.g:9341:1: rule__ExactScope__Group__0 : rule__ExactScope__Group__0__Impl rule__ExactScope__Group__1 ; + public final void rule__ExactScope__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7878:1: ( rule__ManyMultiplicity__Group__0__Impl rule__ManyMultiplicity__Group__1 ) - // InternalSolverLanguageParser.g:7879:2: rule__ManyMultiplicity__Group__0__Impl rule__ManyMultiplicity__Group__1 + // InternalSolverLanguageParser.g:9345:1: ( rule__ExactScope__Group__0__Impl rule__ExactScope__Group__1 ) + // InternalSolverLanguageParser.g:9346:2: rule__ExactScope__Group__0__Impl rule__ExactScope__Group__1 { - pushFollow(FOLLOW_38); - rule__ManyMultiplicity__Group__0__Impl(); + pushFollow(FOLLOW_6); + rule__ExactScope__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ManyMultiplicity__Group__1(); + rule__ExactScope__Group__1(); state._fsp--; @@ -24354,29 +28754,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ManyMultiplicity__Group__0" + // $ANTLR end "rule__ExactScope__Group__0" - // $ANTLR start "rule__ManyMultiplicity__Group__0__Impl" - // InternalSolverLanguageParser.g:7886:1: rule__ManyMultiplicity__Group__0__Impl : ( () ) ; - public final void rule__ManyMultiplicity__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__0__Impl" + // InternalSolverLanguageParser.g:9353:1: rule__ExactScope__Group__0__Impl : ( Scope ) ; + public final void rule__ExactScope__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7890:1: ( ( () ) ) - // InternalSolverLanguageParser.g:7891:1: ( () ) + // InternalSolverLanguageParser.g:9357:1: ( ( Scope ) ) + // InternalSolverLanguageParser.g:9358:1: ( Scope ) { - // InternalSolverLanguageParser.g:7891:1: ( () ) - // InternalSolverLanguageParser.g:7892:2: () + // InternalSolverLanguageParser.g:9358:1: ( Scope ) + // InternalSolverLanguageParser.g:9359:2: Scope { - before(grammarAccess.getManyMultiplicityAccess().getManyMultiplicityAction_0()); - // InternalSolverLanguageParser.g:7893:2: () - // InternalSolverLanguageParser.g:7893:3: - { - } - - after(grammarAccess.getManyMultiplicityAccess().getManyMultiplicityAction_0()); + before(grammarAccess.getExactScopeAccess().getScopeKeyword_0()); + match(input,Scope,FOLLOW_2); + after(grammarAccess.getExactScopeAccess().getScopeKeyword_0()); } @@ -24384,6 +28780,10 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } finally { restoreStackSize(stackSize); @@ -24391,26 +28791,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ManyMultiplicity__Group__0__Impl" + // $ANTLR end "rule__ExactScope__Group__0__Impl" - // $ANTLR start "rule__ManyMultiplicity__Group__1" - // InternalSolverLanguageParser.g:7901:1: rule__ManyMultiplicity__Group__1 : rule__ManyMultiplicity__Group__1__Impl rule__ManyMultiplicity__Group__2 ; - public final void rule__ManyMultiplicity__Group__1() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__1" + // InternalSolverLanguageParser.g:9368:1: rule__ExactScope__Group__1 : rule__ExactScope__Group__1__Impl rule__ExactScope__Group__2 ; + public final void rule__ExactScope__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7905:1: ( rule__ManyMultiplicity__Group__1__Impl rule__ManyMultiplicity__Group__2 ) - // InternalSolverLanguageParser.g:7906:2: rule__ManyMultiplicity__Group__1__Impl rule__ManyMultiplicity__Group__2 + // InternalSolverLanguageParser.g:9372:1: ( rule__ExactScope__Group__1__Impl rule__ExactScope__Group__2 ) + // InternalSolverLanguageParser.g:9373:2: rule__ExactScope__Group__1__Impl rule__ExactScope__Group__2 { - pushFollow(FOLLOW_48); - rule__ManyMultiplicity__Group__1__Impl(); + pushFollow(FOLLOW_69); + rule__ExactScope__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ManyMultiplicity__Group__2(); + rule__ExactScope__Group__2(); state._fsp--; @@ -24429,25 +28829,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ManyMultiplicity__Group__1" + // $ANTLR end "rule__ExactScope__Group__1" - // $ANTLR start "rule__ManyMultiplicity__Group__1__Impl" - // InternalSolverLanguageParser.g:7913:1: rule__ManyMultiplicity__Group__1__Impl : ( LeftSquareBracket ) ; - public final void rule__ManyMultiplicity__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__1__Impl" + // InternalSolverLanguageParser.g:9380:1: rule__ExactScope__Group__1__Impl : ( ( rule__ExactScope__TypeAssignment_1 ) ) ; + public final void rule__ExactScope__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7917:1: ( ( LeftSquareBracket ) ) - // InternalSolverLanguageParser.g:7918:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:9384:1: ( ( ( rule__ExactScope__TypeAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:9385:1: ( ( rule__ExactScope__TypeAssignment_1 ) ) { - // InternalSolverLanguageParser.g:7918:1: ( LeftSquareBracket ) - // InternalSolverLanguageParser.g:7919:2: LeftSquareBracket + // InternalSolverLanguageParser.g:9385:1: ( ( rule__ExactScope__TypeAssignment_1 ) ) + // InternalSolverLanguageParser.g:9386:2: ( rule__ExactScope__TypeAssignment_1 ) { - before(grammarAccess.getManyMultiplicityAccess().getLeftSquareBracketKeyword_1()); - match(input,LeftSquareBracket,FOLLOW_2); - after(grammarAccess.getManyMultiplicityAccess().getLeftSquareBracketKeyword_1()); + before(grammarAccess.getExactScopeAccess().getTypeAssignment_1()); + // InternalSolverLanguageParser.g:9387:2: ( rule__ExactScope__TypeAssignment_1 ) + // InternalSolverLanguageParser.g:9387:3: rule__ExactScope__TypeAssignment_1 + { + pushFollow(FOLLOW_2); + rule__ExactScope__TypeAssignment_1(); + + state._fsp--; + + + } + + after(grammarAccess.getExactScopeAccess().getTypeAssignment_1()); } @@ -24466,21 +28876,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ManyMultiplicity__Group__1__Impl" + // $ANTLR end "rule__ExactScope__Group__1__Impl" - // $ANTLR start "rule__ManyMultiplicity__Group__2" - // InternalSolverLanguageParser.g:7928:1: rule__ManyMultiplicity__Group__2 : rule__ManyMultiplicity__Group__2__Impl ; - public final void rule__ManyMultiplicity__Group__2() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__2" + // InternalSolverLanguageParser.g:9395:1: rule__ExactScope__Group__2 : rule__ExactScope__Group__2__Impl rule__ExactScope__Group__3 ; + public final void rule__ExactScope__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7932:1: ( rule__ManyMultiplicity__Group__2__Impl ) - // InternalSolverLanguageParser.g:7933:2: rule__ManyMultiplicity__Group__2__Impl + // InternalSolverLanguageParser.g:9399:1: ( rule__ExactScope__Group__2__Impl rule__ExactScope__Group__3 ) + // InternalSolverLanguageParser.g:9400:2: rule__ExactScope__Group__2__Impl rule__ExactScope__Group__3 { + pushFollow(FOLLOW_64); + rule__ExactScope__Group__2__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ManyMultiplicity__Group__2__Impl(); + rule__ExactScope__Group__3(); state._fsp--; @@ -24499,25 +28914,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ManyMultiplicity__Group__2" + // $ANTLR end "rule__ExactScope__Group__2" - // $ANTLR start "rule__ManyMultiplicity__Group__2__Impl" - // InternalSolverLanguageParser.g:7939:1: rule__ManyMultiplicity__Group__2__Impl : ( RightSquareBracket ) ; - public final void rule__ManyMultiplicity__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__2__Impl" + // InternalSolverLanguageParser.g:9407:1: rule__ExactScope__Group__2__Impl : ( EqualsSignEqualsSign ) ; + public final void rule__ExactScope__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7943:1: ( ( RightSquareBracket ) ) - // InternalSolverLanguageParser.g:7944:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:9411:1: ( ( EqualsSignEqualsSign ) ) + // InternalSolverLanguageParser.g:9412:1: ( EqualsSignEqualsSign ) { - // InternalSolverLanguageParser.g:7944:1: ( RightSquareBracket ) - // InternalSolverLanguageParser.g:7945:2: RightSquareBracket + // InternalSolverLanguageParser.g:9412:1: ( EqualsSignEqualsSign ) + // InternalSolverLanguageParser.g:9413:2: EqualsSignEqualsSign { - before(grammarAccess.getManyMultiplicityAccess().getRightSquareBracketKeyword_2()); - match(input,RightSquareBracket,FOLLOW_2); - after(grammarAccess.getManyMultiplicityAccess().getRightSquareBracketKeyword_2()); + before(grammarAccess.getExactScopeAccess().getEqualsSignEqualsSignKeyword_2()); + match(input,EqualsSignEqualsSign,FOLLOW_2); + after(grammarAccess.getExactScopeAccess().getEqualsSignEqualsSignKeyword_2()); } @@ -24536,26 +28951,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ManyMultiplicity__Group__2__Impl" + // $ANTLR end "rule__ExactScope__Group__2__Impl" - // $ANTLR start "rule__ExactMultiplicity__Group__0" - // InternalSolverLanguageParser.g:7955:1: rule__ExactMultiplicity__Group__0 : rule__ExactMultiplicity__Group__0__Impl rule__ExactMultiplicity__Group__1 ; - public final void rule__ExactMultiplicity__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__3" + // InternalSolverLanguageParser.g:9422:1: rule__ExactScope__Group__3 : rule__ExactScope__Group__3__Impl rule__ExactScope__Group__4 ; + public final void rule__ExactScope__Group__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7959:1: ( rule__ExactMultiplicity__Group__0__Impl rule__ExactMultiplicity__Group__1 ) - // InternalSolverLanguageParser.g:7960:2: rule__ExactMultiplicity__Group__0__Impl rule__ExactMultiplicity__Group__1 + // InternalSolverLanguageParser.g:9426:1: ( rule__ExactScope__Group__3__Impl rule__ExactScope__Group__4 ) + // InternalSolverLanguageParser.g:9427:2: rule__ExactScope__Group__3__Impl rule__ExactScope__Group__4 { - pushFollow(FOLLOW_58); - rule__ExactMultiplicity__Group__0__Impl(); + pushFollow(FOLLOW_7); + rule__ExactScope__Group__3__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExactMultiplicity__Group__1(); + rule__ExactScope__Group__4(); state._fsp--; @@ -24574,25 +28989,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactMultiplicity__Group__0" + // $ANTLR end "rule__ExactScope__Group__3" - // $ANTLR start "rule__ExactMultiplicity__Group__0__Impl" - // InternalSolverLanguageParser.g:7967:1: rule__ExactMultiplicity__Group__0__Impl : ( LeftSquareBracket ) ; - public final void rule__ExactMultiplicity__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__3__Impl" + // InternalSolverLanguageParser.g:9434:1: rule__ExactScope__Group__3__Impl : ( ( rule__ExactScope__SizeAssignment_3 ) ) ; + public final void rule__ExactScope__Group__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7971:1: ( ( LeftSquareBracket ) ) - // InternalSolverLanguageParser.g:7972:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:9438:1: ( ( ( rule__ExactScope__SizeAssignment_3 ) ) ) + // InternalSolverLanguageParser.g:9439:1: ( ( rule__ExactScope__SizeAssignment_3 ) ) { - // InternalSolverLanguageParser.g:7972:1: ( LeftSquareBracket ) - // InternalSolverLanguageParser.g:7973:2: LeftSquareBracket + // InternalSolverLanguageParser.g:9439:1: ( ( rule__ExactScope__SizeAssignment_3 ) ) + // InternalSolverLanguageParser.g:9440:2: ( rule__ExactScope__SizeAssignment_3 ) { - before(grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); - match(input,LeftSquareBracket,FOLLOW_2); - after(grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); + before(grammarAccess.getExactScopeAccess().getSizeAssignment_3()); + // InternalSolverLanguageParser.g:9441:2: ( rule__ExactScope__SizeAssignment_3 ) + // InternalSolverLanguageParser.g:9441:3: rule__ExactScope__SizeAssignment_3 + { + pushFollow(FOLLOW_2); + rule__ExactScope__SizeAssignment_3(); + + state._fsp--; + + + } + + after(grammarAccess.getExactScopeAccess().getSizeAssignment_3()); } @@ -24611,26 +29036,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactMultiplicity__Group__0__Impl" + // $ANTLR end "rule__ExactScope__Group__3__Impl" - // $ANTLR start "rule__ExactMultiplicity__Group__1" - // InternalSolverLanguageParser.g:7982:1: rule__ExactMultiplicity__Group__1 : rule__ExactMultiplicity__Group__1__Impl rule__ExactMultiplicity__Group__2 ; - public final void rule__ExactMultiplicity__Group__1() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__4" + // InternalSolverLanguageParser.g:9449:1: rule__ExactScope__Group__4 : rule__ExactScope__Group__4__Impl ; + public final void rule__ExactScope__Group__4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7986:1: ( rule__ExactMultiplicity__Group__1__Impl rule__ExactMultiplicity__Group__2 ) - // InternalSolverLanguageParser.g:7987:2: rule__ExactMultiplicity__Group__1__Impl rule__ExactMultiplicity__Group__2 + // InternalSolverLanguageParser.g:9453:1: ( rule__ExactScope__Group__4__Impl ) + // InternalSolverLanguageParser.g:9454:2: rule__ExactScope__Group__4__Impl { - pushFollow(FOLLOW_48); - rule__ExactMultiplicity__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ExactMultiplicity__Group__2(); + rule__ExactScope__Group__4__Impl(); state._fsp--; @@ -24649,35 +29069,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactMultiplicity__Group__1" + // $ANTLR end "rule__ExactScope__Group__4" - // $ANTLR start "rule__ExactMultiplicity__Group__1__Impl" - // InternalSolverLanguageParser.g:7994:1: rule__ExactMultiplicity__Group__1__Impl : ( ( rule__ExactMultiplicity__MultiplicityAssignment_1 ) ) ; - public final void rule__ExactMultiplicity__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExactScope__Group__4__Impl" + // InternalSolverLanguageParser.g:9460:1: rule__ExactScope__Group__4__Impl : ( RULE_FULL_STOP ) ; + public final void rule__ExactScope__Group__4__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:7998:1: ( ( ( rule__ExactMultiplicity__MultiplicityAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:7999:1: ( ( rule__ExactMultiplicity__MultiplicityAssignment_1 ) ) - { - // InternalSolverLanguageParser.g:7999:1: ( ( rule__ExactMultiplicity__MultiplicityAssignment_1 ) ) - // InternalSolverLanguageParser.g:8000:2: ( rule__ExactMultiplicity__MultiplicityAssignment_1 ) + // InternalSolverLanguageParser.g:9464:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:9465:1: ( RULE_FULL_STOP ) { - before(grammarAccess.getExactMultiplicityAccess().getMultiplicityAssignment_1()); - // InternalSolverLanguageParser.g:8001:2: ( rule__ExactMultiplicity__MultiplicityAssignment_1 ) - // InternalSolverLanguageParser.g:8001:3: rule__ExactMultiplicity__MultiplicityAssignment_1 + // InternalSolverLanguageParser.g:9465:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:9466:2: RULE_FULL_STOP { - pushFollow(FOLLOW_2); - rule__ExactMultiplicity__MultiplicityAssignment_1(); - - state._fsp--; - - - } - - after(grammarAccess.getExactMultiplicityAccess().getMultiplicityAssignment_1()); + before(grammarAccess.getExactScopeAccess().getFULL_STOPTerminalRuleCall_4()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getExactScopeAccess().getFULL_STOPTerminalRuleCall_4()); } @@ -24696,21 +29106,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactMultiplicity__Group__1__Impl" + // $ANTLR end "rule__ExactScope__Group__4__Impl" - // $ANTLR start "rule__ExactMultiplicity__Group__2" - // InternalSolverLanguageParser.g:8009:1: rule__ExactMultiplicity__Group__2 : rule__ExactMultiplicity__Group__2__Impl ; - public final void rule__ExactMultiplicity__Group__2() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group__0" + // InternalSolverLanguageParser.g:9476:1: rule__BoundedScope__Group__0 : rule__BoundedScope__Group__0__Impl rule__BoundedScope__Group__1 ; + public final void rule__BoundedScope__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8013:1: ( rule__ExactMultiplicity__Group__2__Impl ) - // InternalSolverLanguageParser.g:8014:2: rule__ExactMultiplicity__Group__2__Impl + // InternalSolverLanguageParser.g:9480:1: ( rule__BoundedScope__Group__0__Impl rule__BoundedScope__Group__1 ) + // InternalSolverLanguageParser.g:9481:2: rule__BoundedScope__Group__0__Impl rule__BoundedScope__Group__1 { + pushFollow(FOLLOW_70); + rule__BoundedScope__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ExactMultiplicity__Group__2__Impl(); + rule__BoundedScope__Group__1(); state._fsp--; @@ -24729,25 +29144,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactMultiplicity__Group__2" + // $ANTLR end "rule__BoundedScope__Group__0" - // $ANTLR start "rule__ExactMultiplicity__Group__2__Impl" - // InternalSolverLanguageParser.g:8020:1: rule__ExactMultiplicity__Group__2__Impl : ( RightSquareBracket ) ; - public final void rule__ExactMultiplicity__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group__0__Impl" + // InternalSolverLanguageParser.g:9488:1: rule__BoundedScope__Group__0__Impl : ( Scope ) ; + public final void rule__BoundedScope__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8024:1: ( ( RightSquareBracket ) ) - // InternalSolverLanguageParser.g:8025:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:9492:1: ( ( Scope ) ) + // InternalSolverLanguageParser.g:9493:1: ( Scope ) { - // InternalSolverLanguageParser.g:8025:1: ( RightSquareBracket ) - // InternalSolverLanguageParser.g:8026:2: RightSquareBracket + // InternalSolverLanguageParser.g:9493:1: ( Scope ) + // InternalSolverLanguageParser.g:9494:2: Scope { - before(grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); - match(input,RightSquareBracket,FOLLOW_2); - after(grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); + before(grammarAccess.getBoundedScopeAccess().getScopeKeyword_0()); + match(input,Scope,FOLLOW_2); + after(grammarAccess.getBoundedScopeAccess().getScopeKeyword_0()); } @@ -24766,26 +29181,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactMultiplicity__Group__2__Impl" + // $ANTLR end "rule__BoundedScope__Group__0__Impl" - // $ANTLR start "rule__BoundedMultiplicity__Group__0" - // InternalSolverLanguageParser.g:8036:1: rule__BoundedMultiplicity__Group__0 : rule__BoundedMultiplicity__Group__0__Impl rule__BoundedMultiplicity__Group__1 ; - public final void rule__BoundedMultiplicity__Group__0() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group__1" + // InternalSolverLanguageParser.g:9503:1: rule__BoundedScope__Group__1 : rule__BoundedScope__Group__1__Impl rule__BoundedScope__Group__2 ; + public final void rule__BoundedScope__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8040:1: ( rule__BoundedMultiplicity__Group__0__Impl rule__BoundedMultiplicity__Group__1 ) - // InternalSolverLanguageParser.g:8041:2: rule__BoundedMultiplicity__Group__0__Impl rule__BoundedMultiplicity__Group__1 + // InternalSolverLanguageParser.g:9507:1: ( rule__BoundedScope__Group__1__Impl rule__BoundedScope__Group__2 ) + // InternalSolverLanguageParser.g:9508:2: rule__BoundedScope__Group__1__Impl rule__BoundedScope__Group__2 { - pushFollow(FOLLOW_59); - rule__BoundedMultiplicity__Group__0__Impl(); + pushFollow(FOLLOW_7); + rule__BoundedScope__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedMultiplicity__Group__1(); + rule__BoundedScope__Group__2(); state._fsp--; @@ -24804,25 +29219,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__0" + // $ANTLR end "rule__BoundedScope__Group__1" - // $ANTLR start "rule__BoundedMultiplicity__Group__0__Impl" - // InternalSolverLanguageParser.g:8048:1: rule__BoundedMultiplicity__Group__0__Impl : ( LeftSquareBracket ) ; - public final void rule__BoundedMultiplicity__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group__1__Impl" + // InternalSolverLanguageParser.g:9515:1: rule__BoundedScope__Group__1__Impl : ( ( rule__BoundedScope__Alternatives_1 ) ) ; + public final void rule__BoundedScope__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8052:1: ( ( LeftSquareBracket ) ) - // InternalSolverLanguageParser.g:8053:1: ( LeftSquareBracket ) + // InternalSolverLanguageParser.g:9519:1: ( ( ( rule__BoundedScope__Alternatives_1 ) ) ) + // InternalSolverLanguageParser.g:9520:1: ( ( rule__BoundedScope__Alternatives_1 ) ) { - // InternalSolverLanguageParser.g:8053:1: ( LeftSquareBracket ) - // InternalSolverLanguageParser.g:8054:2: LeftSquareBracket + // InternalSolverLanguageParser.g:9520:1: ( ( rule__BoundedScope__Alternatives_1 ) ) + // InternalSolverLanguageParser.g:9521:2: ( rule__BoundedScope__Alternatives_1 ) { - before(grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); - match(input,LeftSquareBracket,FOLLOW_2); - after(grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); + before(grammarAccess.getBoundedScopeAccess().getAlternatives_1()); + // InternalSolverLanguageParser.g:9522:2: ( rule__BoundedScope__Alternatives_1 ) + // InternalSolverLanguageParser.g:9522:3: rule__BoundedScope__Alternatives_1 + { + pushFollow(FOLLOW_2); + rule__BoundedScope__Alternatives_1(); + + state._fsp--; + + + } + + after(grammarAccess.getBoundedScopeAccess().getAlternatives_1()); } @@ -24841,26 +29266,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__0__Impl" + // $ANTLR end "rule__BoundedScope__Group__1__Impl" - // $ANTLR start "rule__BoundedMultiplicity__Group__1" - // InternalSolverLanguageParser.g:8063:1: rule__BoundedMultiplicity__Group__1 : rule__BoundedMultiplicity__Group__1__Impl rule__BoundedMultiplicity__Group__2 ; - public final void rule__BoundedMultiplicity__Group__1() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group__2" + // InternalSolverLanguageParser.g:9530:1: rule__BoundedScope__Group__2 : rule__BoundedScope__Group__2__Impl ; + public final void rule__BoundedScope__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8067:1: ( rule__BoundedMultiplicity__Group__1__Impl rule__BoundedMultiplicity__Group__2 ) - // InternalSolverLanguageParser.g:8068:2: rule__BoundedMultiplicity__Group__1__Impl rule__BoundedMultiplicity__Group__2 + // InternalSolverLanguageParser.g:9534:1: ( rule__BoundedScope__Group__2__Impl ) + // InternalSolverLanguageParser.g:9535:2: rule__BoundedScope__Group__2__Impl { - pushFollow(FOLLOW_47); - rule__BoundedMultiplicity__Group__1__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__BoundedMultiplicity__Group__2(); + rule__BoundedScope__Group__2__Impl(); state._fsp--; @@ -24879,35 +29299,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__1" + // $ANTLR end "rule__BoundedScope__Group__2" - // $ANTLR start "rule__BoundedMultiplicity__Group__1__Impl" - // InternalSolverLanguageParser.g:8075:1: rule__BoundedMultiplicity__Group__1__Impl : ( ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) ) ; - public final void rule__BoundedMultiplicity__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group__2__Impl" + // InternalSolverLanguageParser.g:9541:1: rule__BoundedScope__Group__2__Impl : ( RULE_FULL_STOP ) ; + public final void rule__BoundedScope__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8079:1: ( ( ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:8080:1: ( ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) ) - { - // InternalSolverLanguageParser.g:8080:1: ( ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) ) - // InternalSolverLanguageParser.g:8081:2: ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) + // InternalSolverLanguageParser.g:9545:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:9546:1: ( RULE_FULL_STOP ) { - before(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1()); - // InternalSolverLanguageParser.g:8082:2: ( rule__BoundedMultiplicity__LowerBoundAssignment_1 ) - // InternalSolverLanguageParser.g:8082:3: rule__BoundedMultiplicity__LowerBoundAssignment_1 + // InternalSolverLanguageParser.g:9546:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:9547:2: RULE_FULL_STOP { - pushFollow(FOLLOW_2); - rule__BoundedMultiplicity__LowerBoundAssignment_1(); - - state._fsp--; - - - } - - after(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundAssignment_1()); + before(grammarAccess.getBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); } @@ -24926,26 +29336,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__1__Impl" + // $ANTLR end "rule__BoundedScope__Group__2__Impl" - // $ANTLR start "rule__BoundedMultiplicity__Group__2" - // InternalSolverLanguageParser.g:8090:1: rule__BoundedMultiplicity__Group__2 : rule__BoundedMultiplicity__Group__2__Impl rule__BoundedMultiplicity__Group__3 ; - public final void rule__BoundedMultiplicity__Group__2() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0__0" + // InternalSolverLanguageParser.g:9557:1: rule__BoundedScope__Group_1_0__0 : rule__BoundedScope__Group_1_0__0__Impl rule__BoundedScope__Group_1_0__1 ; + public final void rule__BoundedScope__Group_1_0__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8094:1: ( rule__BoundedMultiplicity__Group__2__Impl rule__BoundedMultiplicity__Group__3 ) - // InternalSolverLanguageParser.g:8095:2: rule__BoundedMultiplicity__Group__2__Impl rule__BoundedMultiplicity__Group__3 + // InternalSolverLanguageParser.g:9561:1: ( rule__BoundedScope__Group_1_0__0__Impl rule__BoundedScope__Group_1_0__1 ) + // InternalSolverLanguageParser.g:9562:2: rule__BoundedScope__Group_1_0__0__Impl rule__BoundedScope__Group_1_0__1 { - pushFollow(FOLLOW_58); - rule__BoundedMultiplicity__Group__2__Impl(); + pushFollow(FOLLOW_70); + rule__BoundedScope__Group_1_0__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedMultiplicity__Group__3(); + rule__BoundedScope__Group_1_0__1(); state._fsp--; @@ -24964,25 +29374,46 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__2" + // $ANTLR end "rule__BoundedScope__Group_1_0__0" - // $ANTLR start "rule__BoundedMultiplicity__Group__2__Impl" - // InternalSolverLanguageParser.g:8102:1: rule__BoundedMultiplicity__Group__2__Impl : ( FullStopFullStop ) ; - public final void rule__BoundedMultiplicity__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0__0__Impl" + // InternalSolverLanguageParser.g:9569:1: rule__BoundedScope__Group_1_0__0__Impl : ( ( rule__BoundedScope__Group_1_0_0__0 )? ) ; + public final void rule__BoundedScope__Group_1_0__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8106:1: ( ( FullStopFullStop ) ) - // InternalSolverLanguageParser.g:8107:1: ( FullStopFullStop ) + // InternalSolverLanguageParser.g:9573:1: ( ( ( rule__BoundedScope__Group_1_0_0__0 )? ) ) + // InternalSolverLanguageParser.g:9574:1: ( ( rule__BoundedScope__Group_1_0_0__0 )? ) { - // InternalSolverLanguageParser.g:8107:1: ( FullStopFullStop ) - // InternalSolverLanguageParser.g:8108:2: FullStopFullStop + // InternalSolverLanguageParser.g:9574:1: ( ( rule__BoundedScope__Group_1_0_0__0 )? ) + // InternalSolverLanguageParser.g:9575:2: ( rule__BoundedScope__Group_1_0_0__0 )? { - before(grammarAccess.getBoundedMultiplicityAccess().getFullStopFullStopKeyword_2()); - match(input,FullStopFullStop,FOLLOW_2); - after(grammarAccess.getBoundedMultiplicityAccess().getFullStopFullStopKeyword_2()); + before(grammarAccess.getBoundedScopeAccess().getGroup_1_0_0()); + // InternalSolverLanguageParser.g:9576:2: ( rule__BoundedScope__Group_1_0_0__0 )? + int alt66=2; + int LA66_0 = input.LA(1); + + if ( (LA66_0==RULE_INT) ) { + alt66=1; + } + switch (alt66) { + case 1 : + // InternalSolverLanguageParser.g:9576:3: rule__BoundedScope__Group_1_0_0__0 + { + pushFollow(FOLLOW_2); + rule__BoundedScope__Group_1_0_0__0(); + + state._fsp--; + + + } + break; + + } + + after(grammarAccess.getBoundedScopeAccess().getGroup_1_0_0()); } @@ -25001,26 +29432,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__2__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_0__0__Impl" - // $ANTLR start "rule__BoundedMultiplicity__Group__3" - // InternalSolverLanguageParser.g:8117:1: rule__BoundedMultiplicity__Group__3 : rule__BoundedMultiplicity__Group__3__Impl rule__BoundedMultiplicity__Group__4 ; - public final void rule__BoundedMultiplicity__Group__3() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0__1" + // InternalSolverLanguageParser.g:9584:1: rule__BoundedScope__Group_1_0__1 : rule__BoundedScope__Group_1_0__1__Impl rule__BoundedScope__Group_1_0__2 ; + public final void rule__BoundedScope__Group_1_0__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8121:1: ( rule__BoundedMultiplicity__Group__3__Impl rule__BoundedMultiplicity__Group__4 ) - // InternalSolverLanguageParser.g:8122:2: rule__BoundedMultiplicity__Group__3__Impl rule__BoundedMultiplicity__Group__4 + // InternalSolverLanguageParser.g:9588:1: ( rule__BoundedScope__Group_1_0__1__Impl rule__BoundedScope__Group_1_0__2 ) + // InternalSolverLanguageParser.g:9589:2: rule__BoundedScope__Group_1_0__1__Impl rule__BoundedScope__Group_1_0__2 { - pushFollow(FOLLOW_48); - rule__BoundedMultiplicity__Group__3__Impl(); + pushFollow(FOLLOW_71); + rule__BoundedScope__Group_1_0__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedMultiplicity__Group__4(); + rule__BoundedScope__Group_1_0__2(); state._fsp--; @@ -25039,35 +29470,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__3" + // $ANTLR end "rule__BoundedScope__Group_1_0__1" - // $ANTLR start "rule__BoundedMultiplicity__Group__3__Impl" - // InternalSolverLanguageParser.g:8129:1: rule__BoundedMultiplicity__Group__3__Impl : ( ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) ) ; - public final void rule__BoundedMultiplicity__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0__1__Impl" + // InternalSolverLanguageParser.g:9596:1: rule__BoundedScope__Group_1_0__1__Impl : ( ( rule__BoundedScope__TypeAssignment_1_0_1 ) ) ; + public final void rule__BoundedScope__Group_1_0__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8133:1: ( ( ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:8134:1: ( ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) ) + // InternalSolverLanguageParser.g:9600:1: ( ( ( rule__BoundedScope__TypeAssignment_1_0_1 ) ) ) + // InternalSolverLanguageParser.g:9601:1: ( ( rule__BoundedScope__TypeAssignment_1_0_1 ) ) { - // InternalSolverLanguageParser.g:8134:1: ( ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) ) - // InternalSolverLanguageParser.g:8135:2: ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) + // InternalSolverLanguageParser.g:9601:1: ( ( rule__BoundedScope__TypeAssignment_1_0_1 ) ) + // InternalSolverLanguageParser.g:9602:2: ( rule__BoundedScope__TypeAssignment_1_0_1 ) { - before(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3()); - // InternalSolverLanguageParser.g:8136:2: ( rule__BoundedMultiplicity__UpperBoundAssignment_3 ) - // InternalSolverLanguageParser.g:8136:3: rule__BoundedMultiplicity__UpperBoundAssignment_3 + before(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_0_1()); + // InternalSolverLanguageParser.g:9603:2: ( rule__BoundedScope__TypeAssignment_1_0_1 ) + // InternalSolverLanguageParser.g:9603:3: rule__BoundedScope__TypeAssignment_1_0_1 { pushFollow(FOLLOW_2); - rule__BoundedMultiplicity__UpperBoundAssignment_3(); + rule__BoundedScope__TypeAssignment_1_0_1(); state._fsp--; } - after(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundAssignment_3()); + after(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_0_1()); } @@ -25086,21 +29517,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__3__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_0__1__Impl" - // $ANTLR start "rule__BoundedMultiplicity__Group__4" - // InternalSolverLanguageParser.g:8144:1: rule__BoundedMultiplicity__Group__4 : rule__BoundedMultiplicity__Group__4__Impl ; - public final void rule__BoundedMultiplicity__Group__4() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0__2" + // InternalSolverLanguageParser.g:9611:1: rule__BoundedScope__Group_1_0__2 : rule__BoundedScope__Group_1_0__2__Impl rule__BoundedScope__Group_1_0__3 ; + public final void rule__BoundedScope__Group_1_0__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8148:1: ( rule__BoundedMultiplicity__Group__4__Impl ) - // InternalSolverLanguageParser.g:8149:2: rule__BoundedMultiplicity__Group__4__Impl + // InternalSolverLanguageParser.g:9615:1: ( rule__BoundedScope__Group_1_0__2__Impl rule__BoundedScope__Group_1_0__3 ) + // InternalSolverLanguageParser.g:9616:2: rule__BoundedScope__Group_1_0__2__Impl rule__BoundedScope__Group_1_0__3 { + pushFollow(FOLLOW_64); + rule__BoundedScope__Group_1_0__2__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__BoundedMultiplicity__Group__4__Impl(); + rule__BoundedScope__Group_1_0__3(); state._fsp--; @@ -25119,25 +29555,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__4" + // $ANTLR end "rule__BoundedScope__Group_1_0__2" - // $ANTLR start "rule__BoundedMultiplicity__Group__4__Impl" - // InternalSolverLanguageParser.g:8155:1: rule__BoundedMultiplicity__Group__4__Impl : ( RightSquareBracket ) ; - public final void rule__BoundedMultiplicity__Group__4__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0__2__Impl" + // InternalSolverLanguageParser.g:9623:1: rule__BoundedScope__Group_1_0__2__Impl : ( LessThanSignEqualsSign ) ; + public final void rule__BoundedScope__Group_1_0__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8159:1: ( ( RightSquareBracket ) ) - // InternalSolverLanguageParser.g:8160:1: ( RightSquareBracket ) + // InternalSolverLanguageParser.g:9627:1: ( ( LessThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:9628:1: ( LessThanSignEqualsSign ) { - // InternalSolverLanguageParser.g:8160:1: ( RightSquareBracket ) - // InternalSolverLanguageParser.g:8161:2: RightSquareBracket + // InternalSolverLanguageParser.g:9628:1: ( LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:9629:2: LessThanSignEqualsSign { - before(grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); - match(input,RightSquareBracket,FOLLOW_2); - after(grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); + before(grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_2()); + match(input,LessThanSignEqualsSign,FOLLOW_2); + after(grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_2()); } @@ -25156,26 +29592,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__Group__4__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_0__2__Impl" - // $ANTLR start "rule__ExactScopeDefinition__Group__0" - // InternalSolverLanguageParser.g:8171:1: rule__ExactScopeDefinition__Group__0 : rule__ExactScopeDefinition__Group__0__Impl rule__ExactScopeDefinition__Group__1 ; - public final void rule__ExactScopeDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0__3" + // InternalSolverLanguageParser.g:9638:1: rule__BoundedScope__Group_1_0__3 : rule__BoundedScope__Group_1_0__3__Impl ; + public final void rule__BoundedScope__Group_1_0__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8175:1: ( rule__ExactScopeDefinition__Group__0__Impl rule__ExactScopeDefinition__Group__1 ) - // InternalSolverLanguageParser.g:8176:2: rule__ExactScopeDefinition__Group__0__Impl rule__ExactScopeDefinition__Group__1 + // InternalSolverLanguageParser.g:9642:1: ( rule__BoundedScope__Group_1_0__3__Impl ) + // InternalSolverLanguageParser.g:9643:2: rule__BoundedScope__Group_1_0__3__Impl { - pushFollow(FOLLOW_9); - rule__ExactScopeDefinition__Group__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ExactScopeDefinition__Group__1(); + rule__BoundedScope__Group_1_0__3__Impl(); state._fsp--; @@ -25194,25 +29625,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__Group__0" + // $ANTLR end "rule__BoundedScope__Group_1_0__3" - // $ANTLR start "rule__ExactScopeDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:8183:1: rule__ExactScopeDefinition__Group__0__Impl : ( Scope ) ; - public final void rule__ExactScopeDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0__3__Impl" + // InternalSolverLanguageParser.g:9649:1: rule__BoundedScope__Group_1_0__3__Impl : ( ( rule__BoundedScope__UpperBoundAssignment_1_0_3 ) ) ; + public final void rule__BoundedScope__Group_1_0__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8187:1: ( ( Scope ) ) - // InternalSolverLanguageParser.g:8188:1: ( Scope ) + // InternalSolverLanguageParser.g:9653:1: ( ( ( rule__BoundedScope__UpperBoundAssignment_1_0_3 ) ) ) + // InternalSolverLanguageParser.g:9654:1: ( ( rule__BoundedScope__UpperBoundAssignment_1_0_3 ) ) { - // InternalSolverLanguageParser.g:8188:1: ( Scope ) - // InternalSolverLanguageParser.g:8189:2: Scope + // InternalSolverLanguageParser.g:9654:1: ( ( rule__BoundedScope__UpperBoundAssignment_1_0_3 ) ) + // InternalSolverLanguageParser.g:9655:2: ( rule__BoundedScope__UpperBoundAssignment_1_0_3 ) { - before(grammarAccess.getExactScopeDefinitionAccess().getScopeKeyword_0()); - match(input,Scope,FOLLOW_2); - after(grammarAccess.getExactScopeDefinitionAccess().getScopeKeyword_0()); + before(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_0_3()); + // InternalSolverLanguageParser.g:9656:2: ( rule__BoundedScope__UpperBoundAssignment_1_0_3 ) + // InternalSolverLanguageParser.g:9656:3: rule__BoundedScope__UpperBoundAssignment_1_0_3 + { + pushFollow(FOLLOW_2); + rule__BoundedScope__UpperBoundAssignment_1_0_3(); + + state._fsp--; + + + } + + after(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_0_3()); } @@ -25231,26 +29672,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__Group__0__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_0__3__Impl" - // $ANTLR start "rule__ExactScopeDefinition__Group__1" - // InternalSolverLanguageParser.g:8198:1: rule__ExactScopeDefinition__Group__1 : rule__ExactScopeDefinition__Group__1__Impl rule__ExactScopeDefinition__Group__2 ; - public final void rule__ExactScopeDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0_0__0" + // InternalSolverLanguageParser.g:9665:1: rule__BoundedScope__Group_1_0_0__0 : rule__BoundedScope__Group_1_0_0__0__Impl rule__BoundedScope__Group_1_0_0__1 ; + public final void rule__BoundedScope__Group_1_0_0__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8202:1: ( rule__ExactScopeDefinition__Group__1__Impl rule__ExactScopeDefinition__Group__2 ) - // InternalSolverLanguageParser.g:8203:2: rule__ExactScopeDefinition__Group__1__Impl rule__ExactScopeDefinition__Group__2 + // InternalSolverLanguageParser.g:9669:1: ( rule__BoundedScope__Group_1_0_0__0__Impl rule__BoundedScope__Group_1_0_0__1 ) + // InternalSolverLanguageParser.g:9670:2: rule__BoundedScope__Group_1_0_0__0__Impl rule__BoundedScope__Group_1_0_0__1 { - pushFollow(FOLLOW_60); - rule__ExactScopeDefinition__Group__1__Impl(); + pushFollow(FOLLOW_71); + rule__BoundedScope__Group_1_0_0__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ExactScopeDefinition__Group__2(); + rule__BoundedScope__Group_1_0_0__1(); state._fsp--; @@ -25269,35 +29710,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__Group__1" + // $ANTLR end "rule__BoundedScope__Group_1_0_0__0" - // $ANTLR start "rule__ExactScopeDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:8210:1: rule__ExactScopeDefinition__Group__1__Impl : ( ( rule__ExactScopeDefinition__TypeAssignment_1 ) ) ; - public final void rule__ExactScopeDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0_0__0__Impl" + // InternalSolverLanguageParser.g:9677:1: rule__BoundedScope__Group_1_0_0__0__Impl : ( ( rule__BoundedScope__LowerBoundAssignment_1_0_0_0 ) ) ; + public final void rule__BoundedScope__Group_1_0_0__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8214:1: ( ( ( rule__ExactScopeDefinition__TypeAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:8215:1: ( ( rule__ExactScopeDefinition__TypeAssignment_1 ) ) + // InternalSolverLanguageParser.g:9681:1: ( ( ( rule__BoundedScope__LowerBoundAssignment_1_0_0_0 ) ) ) + // InternalSolverLanguageParser.g:9682:1: ( ( rule__BoundedScope__LowerBoundAssignment_1_0_0_0 ) ) { - // InternalSolverLanguageParser.g:8215:1: ( ( rule__ExactScopeDefinition__TypeAssignment_1 ) ) - // InternalSolverLanguageParser.g:8216:2: ( rule__ExactScopeDefinition__TypeAssignment_1 ) + // InternalSolverLanguageParser.g:9682:1: ( ( rule__BoundedScope__LowerBoundAssignment_1_0_0_0 ) ) + // InternalSolverLanguageParser.g:9683:2: ( rule__BoundedScope__LowerBoundAssignment_1_0_0_0 ) { - before(grammarAccess.getExactScopeDefinitionAccess().getTypeAssignment_1()); - // InternalSolverLanguageParser.g:8217:2: ( rule__ExactScopeDefinition__TypeAssignment_1 ) - // InternalSolverLanguageParser.g:8217:3: rule__ExactScopeDefinition__TypeAssignment_1 + before(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_0_0_0()); + // InternalSolverLanguageParser.g:9684:2: ( rule__BoundedScope__LowerBoundAssignment_1_0_0_0 ) + // InternalSolverLanguageParser.g:9684:3: rule__BoundedScope__LowerBoundAssignment_1_0_0_0 { pushFollow(FOLLOW_2); - rule__ExactScopeDefinition__TypeAssignment_1(); + rule__BoundedScope__LowerBoundAssignment_1_0_0_0(); state._fsp--; } - after(grammarAccess.getExactScopeDefinitionAccess().getTypeAssignment_1()); + after(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_0_0_0()); } @@ -25316,26 +29757,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__Group__1__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_0_0__0__Impl" - // $ANTLR start "rule__ExactScopeDefinition__Group__2" - // InternalSolverLanguageParser.g:8225:1: rule__ExactScopeDefinition__Group__2 : rule__ExactScopeDefinition__Group__2__Impl rule__ExactScopeDefinition__Group__3 ; - public final void rule__ExactScopeDefinition__Group__2() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0_0__1" + // InternalSolverLanguageParser.g:9692:1: rule__BoundedScope__Group_1_0_0__1 : rule__BoundedScope__Group_1_0_0__1__Impl ; + public final void rule__BoundedScope__Group_1_0_0__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8229:1: ( rule__ExactScopeDefinition__Group__2__Impl rule__ExactScopeDefinition__Group__3 ) - // InternalSolverLanguageParser.g:8230:2: rule__ExactScopeDefinition__Group__2__Impl rule__ExactScopeDefinition__Group__3 + // InternalSolverLanguageParser.g:9696:1: ( rule__BoundedScope__Group_1_0_0__1__Impl ) + // InternalSolverLanguageParser.g:9697:2: rule__BoundedScope__Group_1_0_0__1__Impl { - pushFollow(FOLLOW_59); - rule__ExactScopeDefinition__Group__2__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__ExactScopeDefinition__Group__3(); + rule__BoundedScope__Group_1_0_0__1__Impl(); state._fsp--; @@ -25354,25 +29790,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__Group__2" + // $ANTLR end "rule__BoundedScope__Group_1_0_0__1" - // $ANTLR start "rule__ExactScopeDefinition__Group__2__Impl" - // InternalSolverLanguageParser.g:8237:1: rule__ExactScopeDefinition__Group__2__Impl : ( EqualsSignEqualsSign ) ; - public final void rule__ExactScopeDefinition__Group__2__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_0_0__1__Impl" + // InternalSolverLanguageParser.g:9703:1: rule__BoundedScope__Group_1_0_0__1__Impl : ( LessThanSignEqualsSign ) ; + public final void rule__BoundedScope__Group_1_0_0__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8241:1: ( ( EqualsSignEqualsSign ) ) - // InternalSolverLanguageParser.g:8242:1: ( EqualsSignEqualsSign ) + // InternalSolverLanguageParser.g:9707:1: ( ( LessThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:9708:1: ( LessThanSignEqualsSign ) { - // InternalSolverLanguageParser.g:8242:1: ( EqualsSignEqualsSign ) - // InternalSolverLanguageParser.g:8243:2: EqualsSignEqualsSign + // InternalSolverLanguageParser.g:9708:1: ( LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:9709:2: LessThanSignEqualsSign { - before(grammarAccess.getExactScopeDefinitionAccess().getEqualsSignEqualsSignKeyword_2()); - match(input,EqualsSignEqualsSign,FOLLOW_2); - after(grammarAccess.getExactScopeDefinitionAccess().getEqualsSignEqualsSignKeyword_2()); + before(grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); + match(input,LessThanSignEqualsSign,FOLLOW_2); + after(grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); } @@ -25391,21 +29827,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__Group__2__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_0_0__1__Impl" - // $ANTLR start "rule__ExactScopeDefinition__Group__3" - // InternalSolverLanguageParser.g:8252:1: rule__ExactScopeDefinition__Group__3 : rule__ExactScopeDefinition__Group__3__Impl ; - public final void rule__ExactScopeDefinition__Group__3() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1__0" + // InternalSolverLanguageParser.g:9719:1: rule__BoundedScope__Group_1_1__0 : rule__BoundedScope__Group_1_1__0__Impl rule__BoundedScope__Group_1_1__1 ; + public final void rule__BoundedScope__Group_1_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8256:1: ( rule__ExactScopeDefinition__Group__3__Impl ) - // InternalSolverLanguageParser.g:8257:2: rule__ExactScopeDefinition__Group__3__Impl + // InternalSolverLanguageParser.g:9723:1: ( rule__BoundedScope__Group_1_1__0__Impl rule__BoundedScope__Group_1_1__1 ) + // InternalSolverLanguageParser.g:9724:2: rule__BoundedScope__Group_1_1__0__Impl rule__BoundedScope__Group_1_1__1 { + pushFollow(FOLLOW_72); + rule__BoundedScope__Group_1_1__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__ExactScopeDefinition__Group__3__Impl(); + rule__BoundedScope__Group_1_1__1(); state._fsp--; @@ -25424,35 +29865,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__Group__3" + // $ANTLR end "rule__BoundedScope__Group_1_1__0" - // $ANTLR start "rule__ExactScopeDefinition__Group__3__Impl" - // InternalSolverLanguageParser.g:8263:1: rule__ExactScopeDefinition__Group__3__Impl : ( ( rule__ExactScopeDefinition__ExactScopeAssignment_3 ) ) ; - public final void rule__ExactScopeDefinition__Group__3__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1__0__Impl" + // InternalSolverLanguageParser.g:9731:1: rule__BoundedScope__Group_1_1__0__Impl : ( ( rule__BoundedScope__UpperBoundAssignment_1_1_0 ) ) ; + public final void rule__BoundedScope__Group_1_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8267:1: ( ( ( rule__ExactScopeDefinition__ExactScopeAssignment_3 ) ) ) - // InternalSolverLanguageParser.g:8268:1: ( ( rule__ExactScopeDefinition__ExactScopeAssignment_3 ) ) + // InternalSolverLanguageParser.g:9735:1: ( ( ( rule__BoundedScope__UpperBoundAssignment_1_1_0 ) ) ) + // InternalSolverLanguageParser.g:9736:1: ( ( rule__BoundedScope__UpperBoundAssignment_1_1_0 ) ) { - // InternalSolverLanguageParser.g:8268:1: ( ( rule__ExactScopeDefinition__ExactScopeAssignment_3 ) ) - // InternalSolverLanguageParser.g:8269:2: ( rule__ExactScopeDefinition__ExactScopeAssignment_3 ) + // InternalSolverLanguageParser.g:9736:1: ( ( rule__BoundedScope__UpperBoundAssignment_1_1_0 ) ) + // InternalSolverLanguageParser.g:9737:2: ( rule__BoundedScope__UpperBoundAssignment_1_1_0 ) { - before(grammarAccess.getExactScopeDefinitionAccess().getExactScopeAssignment_3()); - // InternalSolverLanguageParser.g:8270:2: ( rule__ExactScopeDefinition__ExactScopeAssignment_3 ) - // InternalSolverLanguageParser.g:8270:3: rule__ExactScopeDefinition__ExactScopeAssignment_3 + before(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_1_0()); + // InternalSolverLanguageParser.g:9738:2: ( rule__BoundedScope__UpperBoundAssignment_1_1_0 ) + // InternalSolverLanguageParser.g:9738:3: rule__BoundedScope__UpperBoundAssignment_1_1_0 { pushFollow(FOLLOW_2); - rule__ExactScopeDefinition__ExactScopeAssignment_3(); + rule__BoundedScope__UpperBoundAssignment_1_1_0(); state._fsp--; } - after(grammarAccess.getExactScopeDefinitionAccess().getExactScopeAssignment_3()); + after(grammarAccess.getBoundedScopeAccess().getUpperBoundAssignment_1_1_0()); } @@ -25471,26 +29912,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__Group__3__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_1__0__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group__0" - // InternalSolverLanguageParser.g:8279:1: rule__BoundedScopeDefinition__Group__0 : rule__BoundedScopeDefinition__Group__0__Impl rule__BoundedScopeDefinition__Group__1 ; - public final void rule__BoundedScopeDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1__1" + // InternalSolverLanguageParser.g:9746:1: rule__BoundedScope__Group_1_1__1 : rule__BoundedScope__Group_1_1__1__Impl rule__BoundedScope__Group_1_1__2 ; + public final void rule__BoundedScope__Group_1_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8283:1: ( rule__BoundedScopeDefinition__Group__0__Impl rule__BoundedScopeDefinition__Group__1 ) - // InternalSolverLanguageParser.g:8284:2: rule__BoundedScopeDefinition__Group__0__Impl rule__BoundedScopeDefinition__Group__1 + // InternalSolverLanguageParser.g:9750:1: ( rule__BoundedScope__Group_1_1__1__Impl rule__BoundedScope__Group_1_1__2 ) + // InternalSolverLanguageParser.g:9751:2: rule__BoundedScope__Group_1_1__1__Impl rule__BoundedScope__Group_1_1__2 { - pushFollow(FOLLOW_61); - rule__BoundedScopeDefinition__Group__0__Impl(); + pushFollow(FOLLOW_6); + rule__BoundedScope__Group_1_1__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group__1(); + rule__BoundedScope__Group_1_1__2(); state._fsp--; @@ -25509,25 +29950,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group__0" + // $ANTLR end "rule__BoundedScope__Group_1_1__1" - // $ANTLR start "rule__BoundedScopeDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:8291:1: rule__BoundedScopeDefinition__Group__0__Impl : ( Scope ) ; - public final void rule__BoundedScopeDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1__1__Impl" + // InternalSolverLanguageParser.g:9758:1: rule__BoundedScope__Group_1_1__1__Impl : ( GreaterThanSignEqualsSign ) ; + public final void rule__BoundedScope__Group_1_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8295:1: ( ( Scope ) ) - // InternalSolverLanguageParser.g:8296:1: ( Scope ) + // InternalSolverLanguageParser.g:9762:1: ( ( GreaterThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:9763:1: ( GreaterThanSignEqualsSign ) { - // InternalSolverLanguageParser.g:8296:1: ( Scope ) - // InternalSolverLanguageParser.g:8297:2: Scope + // InternalSolverLanguageParser.g:9763:1: ( GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:9764:2: GreaterThanSignEqualsSign { - before(grammarAccess.getBoundedScopeDefinitionAccess().getScopeKeyword_0()); - match(input,Scope,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getScopeKeyword_0()); + before(grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); + match(input,GreaterThanSignEqualsSign,FOLLOW_2); + after(grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } @@ -25546,21 +29987,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group__0__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_1__1__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group__1" - // InternalSolverLanguageParser.g:8306:1: rule__BoundedScopeDefinition__Group__1 : rule__BoundedScopeDefinition__Group__1__Impl ; - public final void rule__BoundedScopeDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1__2" + // InternalSolverLanguageParser.g:9773:1: rule__BoundedScope__Group_1_1__2 : rule__BoundedScope__Group_1_1__2__Impl rule__BoundedScope__Group_1_1__3 ; + public final void rule__BoundedScope__Group_1_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8310:1: ( rule__BoundedScopeDefinition__Group__1__Impl ) - // InternalSolverLanguageParser.g:8311:2: rule__BoundedScopeDefinition__Group__1__Impl + // InternalSolverLanguageParser.g:9777:1: ( rule__BoundedScope__Group_1_1__2__Impl rule__BoundedScope__Group_1_1__3 ) + // InternalSolverLanguageParser.g:9778:2: rule__BoundedScope__Group_1_1__2__Impl rule__BoundedScope__Group_1_1__3 { + pushFollow(FOLLOW_72); + rule__BoundedScope__Group_1_1__2__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group__1__Impl(); + rule__BoundedScope__Group_1_1__3(); state._fsp--; @@ -25579,35 +30025,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group__1" + // $ANTLR end "rule__BoundedScope__Group_1_1__2" - // $ANTLR start "rule__BoundedScopeDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:8317:1: rule__BoundedScopeDefinition__Group__1__Impl : ( ( rule__BoundedScopeDefinition__Alternatives_1 ) ) ; - public final void rule__BoundedScopeDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1__2__Impl" + // InternalSolverLanguageParser.g:9785:1: rule__BoundedScope__Group_1_1__2__Impl : ( ( rule__BoundedScope__TypeAssignment_1_1_2 ) ) ; + public final void rule__BoundedScope__Group_1_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8321:1: ( ( ( rule__BoundedScopeDefinition__Alternatives_1 ) ) ) - // InternalSolverLanguageParser.g:8322:1: ( ( rule__BoundedScopeDefinition__Alternatives_1 ) ) + // InternalSolverLanguageParser.g:9789:1: ( ( ( rule__BoundedScope__TypeAssignment_1_1_2 ) ) ) + // InternalSolverLanguageParser.g:9790:1: ( ( rule__BoundedScope__TypeAssignment_1_1_2 ) ) { - // InternalSolverLanguageParser.g:8322:1: ( ( rule__BoundedScopeDefinition__Alternatives_1 ) ) - // InternalSolverLanguageParser.g:8323:2: ( rule__BoundedScopeDefinition__Alternatives_1 ) + // InternalSolverLanguageParser.g:9790:1: ( ( rule__BoundedScope__TypeAssignment_1_1_2 ) ) + // InternalSolverLanguageParser.g:9791:2: ( rule__BoundedScope__TypeAssignment_1_1_2 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getAlternatives_1()); - // InternalSolverLanguageParser.g:8324:2: ( rule__BoundedScopeDefinition__Alternatives_1 ) - // InternalSolverLanguageParser.g:8324:3: rule__BoundedScopeDefinition__Alternatives_1 + before(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_1_2()); + // InternalSolverLanguageParser.g:9792:2: ( rule__BoundedScope__TypeAssignment_1_1_2 ) + // InternalSolverLanguageParser.g:9792:3: rule__BoundedScope__TypeAssignment_1_1_2 { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Alternatives_1(); + rule__BoundedScope__TypeAssignment_1_1_2(); state._fsp--; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getAlternatives_1()); + after(grammarAccess.getBoundedScopeAccess().getTypeAssignment_1_1_2()); } @@ -25626,26 +30072,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group__1__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_1__2__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0__0" - // InternalSolverLanguageParser.g:8333:1: rule__BoundedScopeDefinition__Group_1_0__0 : rule__BoundedScopeDefinition__Group_1_0__0__Impl rule__BoundedScopeDefinition__Group_1_0__1 ; - public final void rule__BoundedScopeDefinition__Group_1_0__0() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1__3" + // InternalSolverLanguageParser.g:9800:1: rule__BoundedScope__Group_1_1__3 : rule__BoundedScope__Group_1_1__3__Impl ; + public final void rule__BoundedScope__Group_1_1__3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8337:1: ( rule__BoundedScopeDefinition__Group_1_0__0__Impl rule__BoundedScopeDefinition__Group_1_0__1 ) - // InternalSolverLanguageParser.g:8338:2: rule__BoundedScopeDefinition__Group_1_0__0__Impl rule__BoundedScopeDefinition__Group_1_0__1 + // InternalSolverLanguageParser.g:9804:1: ( rule__BoundedScope__Group_1_1__3__Impl ) + // InternalSolverLanguageParser.g:9805:2: rule__BoundedScope__Group_1_1__3__Impl { - pushFollow(FOLLOW_61); - rule__BoundedScopeDefinition__Group_1_0__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_0__1(); + rule__BoundedScope__Group_1_1__3__Impl(); state._fsp--; @@ -25664,36 +30105,36 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0__0" + // $ANTLR end "rule__BoundedScope__Group_1_1__3" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0__0__Impl" - // InternalSolverLanguageParser.g:8345:1: rule__BoundedScopeDefinition__Group_1_0__0__Impl : ( ( rule__BoundedScopeDefinition__Group_1_0_0__0 )? ) ; - public final void rule__BoundedScopeDefinition__Group_1_0__0__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1__3__Impl" + // InternalSolverLanguageParser.g:9811:1: rule__BoundedScope__Group_1_1__3__Impl : ( ( rule__BoundedScope__Group_1_1_3__0 )? ) ; + public final void rule__BoundedScope__Group_1_1__3__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8349:1: ( ( ( rule__BoundedScopeDefinition__Group_1_0_0__0 )? ) ) - // InternalSolverLanguageParser.g:8350:1: ( ( rule__BoundedScopeDefinition__Group_1_0_0__0 )? ) + // InternalSolverLanguageParser.g:9815:1: ( ( ( rule__BoundedScope__Group_1_1_3__0 )? ) ) + // InternalSolverLanguageParser.g:9816:1: ( ( rule__BoundedScope__Group_1_1_3__0 )? ) { - // InternalSolverLanguageParser.g:8350:1: ( ( rule__BoundedScopeDefinition__Group_1_0_0__0 )? ) - // InternalSolverLanguageParser.g:8351:2: ( rule__BoundedScopeDefinition__Group_1_0_0__0 )? + // InternalSolverLanguageParser.g:9816:1: ( ( rule__BoundedScope__Group_1_1_3__0 )? ) + // InternalSolverLanguageParser.g:9817:2: ( rule__BoundedScope__Group_1_1_3__0 )? { - before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0_0()); - // InternalSolverLanguageParser.g:8352:2: ( rule__BoundedScopeDefinition__Group_1_0_0__0 )? - int alt59=2; - int LA59_0 = input.LA(1); + before(grammarAccess.getBoundedScopeAccess().getGroup_1_1_3()); + // InternalSolverLanguageParser.g:9818:2: ( rule__BoundedScope__Group_1_1_3__0 )? + int alt67=2; + int LA67_0 = input.LA(1); - if ( (LA59_0==RULE_INT) ) { - alt59=1; + if ( (LA67_0==GreaterThanSignEqualsSign) ) { + alt67=1; } - switch (alt59) { + switch (alt67) { case 1 : - // InternalSolverLanguageParser.g:8352:3: rule__BoundedScopeDefinition__Group_1_0_0__0 + // InternalSolverLanguageParser.g:9818:3: rule__BoundedScope__Group_1_1_3__0 { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_0_0__0(); + rule__BoundedScope__Group_1_1_3__0(); state._fsp--; @@ -25703,7 +30144,7 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } - after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_0_0()); + after(grammarAccess.getBoundedScopeAccess().getGroup_1_1_3()); } @@ -25722,26 +30163,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0__0__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_1__3__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0__1" - // InternalSolverLanguageParser.g:8360:1: rule__BoundedScopeDefinition__Group_1_0__1 : rule__BoundedScopeDefinition__Group_1_0__1__Impl rule__BoundedScopeDefinition__Group_1_0__2 ; - public final void rule__BoundedScopeDefinition__Group_1_0__1() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1_3__0" + // InternalSolverLanguageParser.g:9827:1: rule__BoundedScope__Group_1_1_3__0 : rule__BoundedScope__Group_1_1_3__0__Impl rule__BoundedScope__Group_1_1_3__1 ; + public final void rule__BoundedScope__Group_1_1_3__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8364:1: ( rule__BoundedScopeDefinition__Group_1_0__1__Impl rule__BoundedScopeDefinition__Group_1_0__2 ) - // InternalSolverLanguageParser.g:8365:2: rule__BoundedScopeDefinition__Group_1_0__1__Impl rule__BoundedScopeDefinition__Group_1_0__2 + // InternalSolverLanguageParser.g:9831:1: ( rule__BoundedScope__Group_1_1_3__0__Impl rule__BoundedScope__Group_1_1_3__1 ) + // InternalSolverLanguageParser.g:9832:2: rule__BoundedScope__Group_1_1_3__0__Impl rule__BoundedScope__Group_1_1_3__1 { - pushFollow(FOLLOW_62); - rule__BoundedScopeDefinition__Group_1_0__1__Impl(); + pushFollow(FOLLOW_64); + rule__BoundedScope__Group_1_1_3__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_0__2(); + rule__BoundedScope__Group_1_1_3__1(); state._fsp--; @@ -25760,35 +30201,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0__1" + // $ANTLR end "rule__BoundedScope__Group_1_1_3__0" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0__1__Impl" - // InternalSolverLanguageParser.g:8372:1: rule__BoundedScopeDefinition__Group_1_0__1__Impl : ( ( rule__BoundedScopeDefinition__TypeAssignment_1_0_1 ) ) ; - public final void rule__BoundedScopeDefinition__Group_1_0__1__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1_3__0__Impl" + // InternalSolverLanguageParser.g:9839:1: rule__BoundedScope__Group_1_1_3__0__Impl : ( GreaterThanSignEqualsSign ) ; + public final void rule__BoundedScope__Group_1_1_3__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8376:1: ( ( ( rule__BoundedScopeDefinition__TypeAssignment_1_0_1 ) ) ) - // InternalSolverLanguageParser.g:8377:1: ( ( rule__BoundedScopeDefinition__TypeAssignment_1_0_1 ) ) - { - // InternalSolverLanguageParser.g:8377:1: ( ( rule__BoundedScopeDefinition__TypeAssignment_1_0_1 ) ) - // InternalSolverLanguageParser.g:8378:2: ( rule__BoundedScopeDefinition__TypeAssignment_1_0_1 ) + // InternalSolverLanguageParser.g:9843:1: ( ( GreaterThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:9844:1: ( GreaterThanSignEqualsSign ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_0_1()); - // InternalSolverLanguageParser.g:8379:2: ( rule__BoundedScopeDefinition__TypeAssignment_1_0_1 ) - // InternalSolverLanguageParser.g:8379:3: rule__BoundedScopeDefinition__TypeAssignment_1_0_1 + // InternalSolverLanguageParser.g:9844:1: ( GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:9845:2: GreaterThanSignEqualsSign { - pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__TypeAssignment_1_0_1(); - - state._fsp--; - - - } - - after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_0_1()); + before(grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); + match(input,GreaterThanSignEqualsSign,FOLLOW_2); + after(grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); } @@ -25807,26 +30238,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0__1__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_1_3__0__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0__2" - // InternalSolverLanguageParser.g:8387:1: rule__BoundedScopeDefinition__Group_1_0__2 : rule__BoundedScopeDefinition__Group_1_0__2__Impl rule__BoundedScopeDefinition__Group_1_0__3 ; - public final void rule__BoundedScopeDefinition__Group_1_0__2() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1_3__1" + // InternalSolverLanguageParser.g:9854:1: rule__BoundedScope__Group_1_1_3__1 : rule__BoundedScope__Group_1_1_3__1__Impl ; + public final void rule__BoundedScope__Group_1_1_3__1() throws RecognitionException { int stackSize = keepStackSize(); - try { - // InternalSolverLanguageParser.g:8391:1: ( rule__BoundedScopeDefinition__Group_1_0__2__Impl rule__BoundedScopeDefinition__Group_1_0__3 ) - // InternalSolverLanguageParser.g:8392:2: rule__BoundedScopeDefinition__Group_1_0__2__Impl rule__BoundedScopeDefinition__Group_1_0__3 - { - pushFollow(FOLLOW_59); - rule__BoundedScopeDefinition__Group_1_0__2__Impl(); - - state._fsp--; - + try { + // InternalSolverLanguageParser.g:9858:1: ( rule__BoundedScope__Group_1_1_3__1__Impl ) + // InternalSolverLanguageParser.g:9859:2: rule__BoundedScope__Group_1_1_3__1__Impl + { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_0__3(); + rule__BoundedScope__Group_1_1_3__1__Impl(); state._fsp--; @@ -25845,25 +30271,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0__2" + // $ANTLR end "rule__BoundedScope__Group_1_1_3__1" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0__2__Impl" - // InternalSolverLanguageParser.g:8399:1: rule__BoundedScopeDefinition__Group_1_0__2__Impl : ( LessThanSignEqualsSign ) ; - public final void rule__BoundedScopeDefinition__Group_1_0__2__Impl() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__Group_1_1_3__1__Impl" + // InternalSolverLanguageParser.g:9865:1: rule__BoundedScope__Group_1_1_3__1__Impl : ( ( rule__BoundedScope__LowerBoundAssignment_1_1_3_1 ) ) ; + public final void rule__BoundedScope__Group_1_1_3__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8403:1: ( ( LessThanSignEqualsSign ) ) - // InternalSolverLanguageParser.g:8404:1: ( LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:9869:1: ( ( ( rule__BoundedScope__LowerBoundAssignment_1_1_3_1 ) ) ) + // InternalSolverLanguageParser.g:9870:1: ( ( rule__BoundedScope__LowerBoundAssignment_1_1_3_1 ) ) { - // InternalSolverLanguageParser.g:8404:1: ( LessThanSignEqualsSign ) - // InternalSolverLanguageParser.g:8405:2: LessThanSignEqualsSign + // InternalSolverLanguageParser.g:9870:1: ( ( rule__BoundedScope__LowerBoundAssignment_1_1_3_1 ) ) + // InternalSolverLanguageParser.g:9871:2: ( rule__BoundedScope__LowerBoundAssignment_1_1_3_1 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_2()); - match(input,LessThanSignEqualsSign,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_2()); + before(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_1_3_1()); + // InternalSolverLanguageParser.g:9872:2: ( rule__BoundedScope__LowerBoundAssignment_1_1_3_1 ) + // InternalSolverLanguageParser.g:9872:3: rule__BoundedScope__LowerBoundAssignment_1_1_3_1 + { + pushFollow(FOLLOW_2); + rule__BoundedScope__LowerBoundAssignment_1_1_3_1(); + + state._fsp--; + + + } + + after(grammarAccess.getBoundedScopeAccess().getLowerBoundAssignment_1_1_3_1()); } @@ -25882,21 +30318,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0__2__Impl" + // $ANTLR end "rule__BoundedScope__Group_1_1_3__1__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0__3" - // InternalSolverLanguageParser.g:8414:1: rule__BoundedScopeDefinition__Group_1_0__3 : rule__BoundedScopeDefinition__Group_1_0__3__Impl ; - public final void rule__BoundedScopeDefinition__Group_1_0__3() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group__0" + // InternalSolverLanguageParser.g:9881:1: rule__LowerBoundedScope__Group__0 : rule__LowerBoundedScope__Group__0__Impl rule__LowerBoundedScope__Group__1 ; + public final void rule__LowerBoundedScope__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8418:1: ( rule__BoundedScopeDefinition__Group_1_0__3__Impl ) - // InternalSolverLanguageParser.g:8419:2: rule__BoundedScopeDefinition__Group_1_0__3__Impl + // InternalSolverLanguageParser.g:9885:1: ( rule__LowerBoundedScope__Group__0__Impl rule__LowerBoundedScope__Group__1 ) + // InternalSolverLanguageParser.g:9886:2: rule__LowerBoundedScope__Group__0__Impl rule__LowerBoundedScope__Group__1 { + pushFollow(FOLLOW_70); + rule__LowerBoundedScope__Group__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_0__3__Impl(); + rule__LowerBoundedScope__Group__1(); state._fsp--; @@ -25915,35 +30356,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0__3" + // $ANTLR end "rule__LowerBoundedScope__Group__0" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0__3__Impl" - // InternalSolverLanguageParser.g:8425:1: rule__BoundedScopeDefinition__Group_1_0__3__Impl : ( ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 ) ) ; - public final void rule__BoundedScopeDefinition__Group_1_0__3__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group__0__Impl" + // InternalSolverLanguageParser.g:9893:1: rule__LowerBoundedScope__Group__0__Impl : ( Scope ) ; + public final void rule__LowerBoundedScope__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8429:1: ( ( ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 ) ) ) - // InternalSolverLanguageParser.g:8430:1: ( ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 ) ) + // InternalSolverLanguageParser.g:9897:1: ( ( Scope ) ) + // InternalSolverLanguageParser.g:9898:1: ( Scope ) { - // InternalSolverLanguageParser.g:8430:1: ( ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 ) ) - // InternalSolverLanguageParser.g:8431:2: ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 ) + // InternalSolverLanguageParser.g:9898:1: ( Scope ) + // InternalSolverLanguageParser.g:9899:2: Scope { - before(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_0_3()); - // InternalSolverLanguageParser.g:8432:2: ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 ) - // InternalSolverLanguageParser.g:8432:3: rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 - { - pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3(); - - state._fsp--; - - - } - - after(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_0_3()); + before(grammarAccess.getLowerBoundedScopeAccess().getScopeKeyword_0()); + match(input,Scope,FOLLOW_2); + after(grammarAccess.getLowerBoundedScopeAccess().getScopeKeyword_0()); } @@ -25962,26 +30393,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0__3__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group__0__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0_0__0" - // InternalSolverLanguageParser.g:8441:1: rule__BoundedScopeDefinition__Group_1_0_0__0 : rule__BoundedScopeDefinition__Group_1_0_0__0__Impl rule__BoundedScopeDefinition__Group_1_0_0__1 ; - public final void rule__BoundedScopeDefinition__Group_1_0_0__0() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group__1" + // InternalSolverLanguageParser.g:9908:1: rule__LowerBoundedScope__Group__1 : rule__LowerBoundedScope__Group__1__Impl rule__LowerBoundedScope__Group__2 ; + public final void rule__LowerBoundedScope__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8445:1: ( rule__BoundedScopeDefinition__Group_1_0_0__0__Impl rule__BoundedScopeDefinition__Group_1_0_0__1 ) - // InternalSolverLanguageParser.g:8446:2: rule__BoundedScopeDefinition__Group_1_0_0__0__Impl rule__BoundedScopeDefinition__Group_1_0_0__1 + // InternalSolverLanguageParser.g:9912:1: ( rule__LowerBoundedScope__Group__1__Impl rule__LowerBoundedScope__Group__2 ) + // InternalSolverLanguageParser.g:9913:2: rule__LowerBoundedScope__Group__1__Impl rule__LowerBoundedScope__Group__2 { - pushFollow(FOLLOW_62); - rule__BoundedScopeDefinition__Group_1_0_0__0__Impl(); + pushFollow(FOLLOW_7); + rule__LowerBoundedScope__Group__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_0_0__1(); + rule__LowerBoundedScope__Group__2(); state._fsp--; @@ -26000,35 +30431,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0_0__0" + // $ANTLR end "rule__LowerBoundedScope__Group__1" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0_0__0__Impl" - // InternalSolverLanguageParser.g:8453:1: rule__BoundedScopeDefinition__Group_1_0_0__0__Impl : ( ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 ) ) ; - public final void rule__BoundedScopeDefinition__Group_1_0_0__0__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group__1__Impl" + // InternalSolverLanguageParser.g:9920:1: rule__LowerBoundedScope__Group__1__Impl : ( ( rule__LowerBoundedScope__Alternatives_1 ) ) ; + public final void rule__LowerBoundedScope__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8457:1: ( ( ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 ) ) ) - // InternalSolverLanguageParser.g:8458:1: ( ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 ) ) + // InternalSolverLanguageParser.g:9924:1: ( ( ( rule__LowerBoundedScope__Alternatives_1 ) ) ) + // InternalSolverLanguageParser.g:9925:1: ( ( rule__LowerBoundedScope__Alternatives_1 ) ) { - // InternalSolverLanguageParser.g:8458:1: ( ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 ) ) - // InternalSolverLanguageParser.g:8459:2: ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 ) + // InternalSolverLanguageParser.g:9925:1: ( ( rule__LowerBoundedScope__Alternatives_1 ) ) + // InternalSolverLanguageParser.g:9926:2: ( rule__LowerBoundedScope__Alternatives_1 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0_0()); - // InternalSolverLanguageParser.g:8460:2: ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 ) - // InternalSolverLanguageParser.g:8460:3: rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 + before(grammarAccess.getLowerBoundedScopeAccess().getAlternatives_1()); + // InternalSolverLanguageParser.g:9927:2: ( rule__LowerBoundedScope__Alternatives_1 ) + // InternalSolverLanguageParser.g:9927:3: rule__LowerBoundedScope__Alternatives_1 { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0(); + rule__LowerBoundedScope__Alternatives_1(); state._fsp--; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0_0()); + after(grammarAccess.getLowerBoundedScopeAccess().getAlternatives_1()); } @@ -26047,21 +30478,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0_0__0__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group__1__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0_0__1" - // InternalSolverLanguageParser.g:8468:1: rule__BoundedScopeDefinition__Group_1_0_0__1 : rule__BoundedScopeDefinition__Group_1_0_0__1__Impl ; - public final void rule__BoundedScopeDefinition__Group_1_0_0__1() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group__2" + // InternalSolverLanguageParser.g:9935:1: rule__LowerBoundedScope__Group__2 : rule__LowerBoundedScope__Group__2__Impl ; + public final void rule__LowerBoundedScope__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8472:1: ( rule__BoundedScopeDefinition__Group_1_0_0__1__Impl ) - // InternalSolverLanguageParser.g:8473:2: rule__BoundedScopeDefinition__Group_1_0_0__1__Impl + // InternalSolverLanguageParser.g:9939:1: ( rule__LowerBoundedScope__Group__2__Impl ) + // InternalSolverLanguageParser.g:9940:2: rule__LowerBoundedScope__Group__2__Impl { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_0_0__1__Impl(); + rule__LowerBoundedScope__Group__2__Impl(); state._fsp--; @@ -26080,25 +30511,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0_0__1" + // $ANTLR end "rule__LowerBoundedScope__Group__2" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_0_0__1__Impl" - // InternalSolverLanguageParser.g:8479:1: rule__BoundedScopeDefinition__Group_1_0_0__1__Impl : ( LessThanSignEqualsSign ) ; - public final void rule__BoundedScopeDefinition__Group_1_0_0__1__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group__2__Impl" + // InternalSolverLanguageParser.g:9946:1: rule__LowerBoundedScope__Group__2__Impl : ( RULE_FULL_STOP ) ; + public final void rule__LowerBoundedScope__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8483:1: ( ( LessThanSignEqualsSign ) ) - // InternalSolverLanguageParser.g:8484:1: ( LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:9950:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:9951:1: ( RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:8484:1: ( LessThanSignEqualsSign ) - // InternalSolverLanguageParser.g:8485:2: LessThanSignEqualsSign + // InternalSolverLanguageParser.g:9951:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:9952:2: RULE_FULL_STOP { - before(grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); - match(input,LessThanSignEqualsSign,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); + before(grammarAccess.getLowerBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getLowerBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); } @@ -26117,26 +30548,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_0_0__1__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group__2__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1__0" - // InternalSolverLanguageParser.g:8495:1: rule__BoundedScopeDefinition__Group_1_1__0 : rule__BoundedScopeDefinition__Group_1_1__0__Impl rule__BoundedScopeDefinition__Group_1_1__1 ; - public final void rule__BoundedScopeDefinition__Group_1_1__0() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_0__0" + // InternalSolverLanguageParser.g:9962:1: rule__LowerBoundedScope__Group_1_0__0 : rule__LowerBoundedScope__Group_1_0__0__Impl rule__LowerBoundedScope__Group_1_0__1 ; + public final void rule__LowerBoundedScope__Group_1_0__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8499:1: ( rule__BoundedScopeDefinition__Group_1_1__0__Impl rule__BoundedScopeDefinition__Group_1_1__1 ) - // InternalSolverLanguageParser.g:8500:2: rule__BoundedScopeDefinition__Group_1_1__0__Impl rule__BoundedScopeDefinition__Group_1_1__1 + // InternalSolverLanguageParser.g:9966:1: ( rule__LowerBoundedScope__Group_1_0__0__Impl rule__LowerBoundedScope__Group_1_0__1 ) + // InternalSolverLanguageParser.g:9967:2: rule__LowerBoundedScope__Group_1_0__0__Impl rule__LowerBoundedScope__Group_1_0__1 { - pushFollow(FOLLOW_63); - rule__BoundedScopeDefinition__Group_1_1__0__Impl(); + pushFollow(FOLLOW_71); + rule__LowerBoundedScope__Group_1_0__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_1__1(); + rule__LowerBoundedScope__Group_1_0__1(); state._fsp--; @@ -26155,35 +30586,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1__0" + // $ANTLR end "rule__LowerBoundedScope__Group_1_0__0" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1__0__Impl" - // InternalSolverLanguageParser.g:8507:1: rule__BoundedScopeDefinition__Group_1_1__0__Impl : ( ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 ) ) ; - public final void rule__BoundedScopeDefinition__Group_1_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_0__0__Impl" + // InternalSolverLanguageParser.g:9974:1: rule__LowerBoundedScope__Group_1_0__0__Impl : ( ( rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 ) ) ; + public final void rule__LowerBoundedScope__Group_1_0__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8511:1: ( ( ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 ) ) ) - // InternalSolverLanguageParser.g:8512:1: ( ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 ) ) + // InternalSolverLanguageParser.g:9978:1: ( ( ( rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 ) ) ) + // InternalSolverLanguageParser.g:9979:1: ( ( rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 ) ) { - // InternalSolverLanguageParser.g:8512:1: ( ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 ) ) - // InternalSolverLanguageParser.g:8513:2: ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 ) + // InternalSolverLanguageParser.g:9979:1: ( ( rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 ) ) + // InternalSolverLanguageParser.g:9980:2: ( rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_1_0()); - // InternalSolverLanguageParser.g:8514:2: ( rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 ) - // InternalSolverLanguageParser.g:8514:3: rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 + before(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_0_0()); + // InternalSolverLanguageParser.g:9981:2: ( rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 ) + // InternalSolverLanguageParser.g:9981:3: rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0(); + rule__LowerBoundedScope__LowerBoundAssignment_1_0_0(); state._fsp--; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundAssignment_1_1_0()); + after(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_0_0()); } @@ -26202,26 +30633,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1__0__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group_1_0__0__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1__1" - // InternalSolverLanguageParser.g:8522:1: rule__BoundedScopeDefinition__Group_1_1__1 : rule__BoundedScopeDefinition__Group_1_1__1__Impl rule__BoundedScopeDefinition__Group_1_1__2 ; - public final void rule__BoundedScopeDefinition__Group_1_1__1() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_0__1" + // InternalSolverLanguageParser.g:9989:1: rule__LowerBoundedScope__Group_1_0__1 : rule__LowerBoundedScope__Group_1_0__1__Impl rule__LowerBoundedScope__Group_1_0__2 ; + public final void rule__LowerBoundedScope__Group_1_0__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8526:1: ( rule__BoundedScopeDefinition__Group_1_1__1__Impl rule__BoundedScopeDefinition__Group_1_1__2 ) - // InternalSolverLanguageParser.g:8527:2: rule__BoundedScopeDefinition__Group_1_1__1__Impl rule__BoundedScopeDefinition__Group_1_1__2 + // InternalSolverLanguageParser.g:9993:1: ( rule__LowerBoundedScope__Group_1_0__1__Impl rule__LowerBoundedScope__Group_1_0__2 ) + // InternalSolverLanguageParser.g:9994:2: rule__LowerBoundedScope__Group_1_0__1__Impl rule__LowerBoundedScope__Group_1_0__2 { - pushFollow(FOLLOW_9); - rule__BoundedScopeDefinition__Group_1_1__1__Impl(); + pushFollow(FOLLOW_6); + rule__LowerBoundedScope__Group_1_0__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_1__2(); + rule__LowerBoundedScope__Group_1_0__2(); state._fsp--; @@ -26240,25 +30671,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1__1" + // $ANTLR end "rule__LowerBoundedScope__Group_1_0__1" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1__1__Impl" - // InternalSolverLanguageParser.g:8534:1: rule__BoundedScopeDefinition__Group_1_1__1__Impl : ( GreaterThanSignEqualsSign ) ; - public final void rule__BoundedScopeDefinition__Group_1_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_0__1__Impl" + // InternalSolverLanguageParser.g:10001:1: rule__LowerBoundedScope__Group_1_0__1__Impl : ( LessThanSignEqualsSign ) ; + public final void rule__LowerBoundedScope__Group_1_0__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8538:1: ( ( GreaterThanSignEqualsSign ) ) - // InternalSolverLanguageParser.g:8539:1: ( GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:10005:1: ( ( LessThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:10006:1: ( LessThanSignEqualsSign ) { - // InternalSolverLanguageParser.g:8539:1: ( GreaterThanSignEqualsSign ) - // InternalSolverLanguageParser.g:8540:2: GreaterThanSignEqualsSign + // InternalSolverLanguageParser.g:10006:1: ( LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:10007:2: LessThanSignEqualsSign { - before(grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); - match(input,GreaterThanSignEqualsSign,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); + before(grammarAccess.getLowerBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_1()); + match(input,LessThanSignEqualsSign,FOLLOW_2); + after(grammarAccess.getLowerBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_1()); } @@ -26277,26 +30708,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1__1__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group_1_0__1__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1__2" - // InternalSolverLanguageParser.g:8549:1: rule__BoundedScopeDefinition__Group_1_1__2 : rule__BoundedScopeDefinition__Group_1_1__2__Impl rule__BoundedScopeDefinition__Group_1_1__3 ; - public final void rule__BoundedScopeDefinition__Group_1_1__2() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_0__2" + // InternalSolverLanguageParser.g:10016:1: rule__LowerBoundedScope__Group_1_0__2 : rule__LowerBoundedScope__Group_1_0__2__Impl ; + public final void rule__LowerBoundedScope__Group_1_0__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8553:1: ( rule__BoundedScopeDefinition__Group_1_1__2__Impl rule__BoundedScopeDefinition__Group_1_1__3 ) - // InternalSolverLanguageParser.g:8554:2: rule__BoundedScopeDefinition__Group_1_1__2__Impl rule__BoundedScopeDefinition__Group_1_1__3 + // InternalSolverLanguageParser.g:10020:1: ( rule__LowerBoundedScope__Group_1_0__2__Impl ) + // InternalSolverLanguageParser.g:10021:2: rule__LowerBoundedScope__Group_1_0__2__Impl { - pushFollow(FOLLOW_63); - rule__BoundedScopeDefinition__Group_1_1__2__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_1__3(); + rule__LowerBoundedScope__Group_1_0__2__Impl(); state._fsp--; @@ -26315,35 +30741,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1__2" + // $ANTLR end "rule__LowerBoundedScope__Group_1_0__2" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1__2__Impl" - // InternalSolverLanguageParser.g:8561:1: rule__BoundedScopeDefinition__Group_1_1__2__Impl : ( ( rule__BoundedScopeDefinition__TypeAssignment_1_1_2 ) ) ; - public final void rule__BoundedScopeDefinition__Group_1_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_0__2__Impl" + // InternalSolverLanguageParser.g:10027:1: rule__LowerBoundedScope__Group_1_0__2__Impl : ( ( rule__LowerBoundedScope__TypeAssignment_1_0_2 ) ) ; + public final void rule__LowerBoundedScope__Group_1_0__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8565:1: ( ( ( rule__BoundedScopeDefinition__TypeAssignment_1_1_2 ) ) ) - // InternalSolverLanguageParser.g:8566:1: ( ( rule__BoundedScopeDefinition__TypeAssignment_1_1_2 ) ) + // InternalSolverLanguageParser.g:10031:1: ( ( ( rule__LowerBoundedScope__TypeAssignment_1_0_2 ) ) ) + // InternalSolverLanguageParser.g:10032:1: ( ( rule__LowerBoundedScope__TypeAssignment_1_0_2 ) ) { - // InternalSolverLanguageParser.g:8566:1: ( ( rule__BoundedScopeDefinition__TypeAssignment_1_1_2 ) ) - // InternalSolverLanguageParser.g:8567:2: ( rule__BoundedScopeDefinition__TypeAssignment_1_1_2 ) + // InternalSolverLanguageParser.g:10032:1: ( ( rule__LowerBoundedScope__TypeAssignment_1_0_2 ) ) + // InternalSolverLanguageParser.g:10033:2: ( rule__LowerBoundedScope__TypeAssignment_1_0_2 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_1_2()); - // InternalSolverLanguageParser.g:8568:2: ( rule__BoundedScopeDefinition__TypeAssignment_1_1_2 ) - // InternalSolverLanguageParser.g:8568:3: rule__BoundedScopeDefinition__TypeAssignment_1_1_2 + before(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_0_2()); + // InternalSolverLanguageParser.g:10034:2: ( rule__LowerBoundedScope__TypeAssignment_1_0_2 ) + // InternalSolverLanguageParser.g:10034:3: rule__LowerBoundedScope__TypeAssignment_1_0_2 { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__TypeAssignment_1_1_2(); + rule__LowerBoundedScope__TypeAssignment_1_0_2(); state._fsp--; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeAssignment_1_1_2()); + after(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_0_2()); } @@ -26362,21 +30788,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1__2__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group_1_0__2__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1__3" - // InternalSolverLanguageParser.g:8576:1: rule__BoundedScopeDefinition__Group_1_1__3 : rule__BoundedScopeDefinition__Group_1_1__3__Impl ; - public final void rule__BoundedScopeDefinition__Group_1_1__3() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_1__0" + // InternalSolverLanguageParser.g:10043:1: rule__LowerBoundedScope__Group_1_1__0 : rule__LowerBoundedScope__Group_1_1__0__Impl rule__LowerBoundedScope__Group_1_1__1 ; + public final void rule__LowerBoundedScope__Group_1_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8580:1: ( rule__BoundedScopeDefinition__Group_1_1__3__Impl ) - // InternalSolverLanguageParser.g:8581:2: rule__BoundedScopeDefinition__Group_1_1__3__Impl + // InternalSolverLanguageParser.g:10047:1: ( rule__LowerBoundedScope__Group_1_1__0__Impl rule__LowerBoundedScope__Group_1_1__1 ) + // InternalSolverLanguageParser.g:10048:2: rule__LowerBoundedScope__Group_1_1__0__Impl rule__LowerBoundedScope__Group_1_1__1 { + pushFollow(FOLLOW_72); + rule__LowerBoundedScope__Group_1_1__0__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_1__3__Impl(); + rule__LowerBoundedScope__Group_1_1__1(); state._fsp--; @@ -26395,46 +30826,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1__3" + // $ANTLR end "rule__LowerBoundedScope__Group_1_1__0" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1__3__Impl" - // InternalSolverLanguageParser.g:8587:1: rule__BoundedScopeDefinition__Group_1_1__3__Impl : ( ( rule__BoundedScopeDefinition__Group_1_1_3__0 )? ) ; - public final void rule__BoundedScopeDefinition__Group_1_1__3__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_1__0__Impl" + // InternalSolverLanguageParser.g:10055:1: rule__LowerBoundedScope__Group_1_1__0__Impl : ( ( rule__LowerBoundedScope__TypeAssignment_1_1_0 ) ) ; + public final void rule__LowerBoundedScope__Group_1_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8591:1: ( ( ( rule__BoundedScopeDefinition__Group_1_1_3__0 )? ) ) - // InternalSolverLanguageParser.g:8592:1: ( ( rule__BoundedScopeDefinition__Group_1_1_3__0 )? ) + // InternalSolverLanguageParser.g:10059:1: ( ( ( rule__LowerBoundedScope__TypeAssignment_1_1_0 ) ) ) + // InternalSolverLanguageParser.g:10060:1: ( ( rule__LowerBoundedScope__TypeAssignment_1_1_0 ) ) { - // InternalSolverLanguageParser.g:8592:1: ( ( rule__BoundedScopeDefinition__Group_1_1_3__0 )? ) - // InternalSolverLanguageParser.g:8593:2: ( rule__BoundedScopeDefinition__Group_1_1_3__0 )? + // InternalSolverLanguageParser.g:10060:1: ( ( rule__LowerBoundedScope__TypeAssignment_1_1_0 ) ) + // InternalSolverLanguageParser.g:10061:2: ( rule__LowerBoundedScope__TypeAssignment_1_1_0 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1_3()); - // InternalSolverLanguageParser.g:8594:2: ( rule__BoundedScopeDefinition__Group_1_1_3__0 )? - int alt60=2; - int LA60_0 = input.LA(1); - - if ( (LA60_0==GreaterThanSignEqualsSign) ) { - alt60=1; - } - switch (alt60) { - case 1 : - // InternalSolverLanguageParser.g:8594:3: rule__BoundedScopeDefinition__Group_1_1_3__0 - { - pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_1_3__0(); - - state._fsp--; + before(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_1_0()); + // InternalSolverLanguageParser.g:10062:2: ( rule__LowerBoundedScope__TypeAssignment_1_1_0 ) + // InternalSolverLanguageParser.g:10062:3: rule__LowerBoundedScope__TypeAssignment_1_1_0 + { + pushFollow(FOLLOW_2); + rule__LowerBoundedScope__TypeAssignment_1_1_0(); + state._fsp--; - } - break; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getGroup_1_1_3()); + after(grammarAccess.getLowerBoundedScopeAccess().getTypeAssignment_1_1_0()); } @@ -26453,26 +30873,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1__3__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group_1_1__0__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1_3__0" - // InternalSolverLanguageParser.g:8603:1: rule__BoundedScopeDefinition__Group_1_1_3__0 : rule__BoundedScopeDefinition__Group_1_1_3__0__Impl rule__BoundedScopeDefinition__Group_1_1_3__1 ; - public final void rule__BoundedScopeDefinition__Group_1_1_3__0() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_1__1" + // InternalSolverLanguageParser.g:10070:1: rule__LowerBoundedScope__Group_1_1__1 : rule__LowerBoundedScope__Group_1_1__1__Impl rule__LowerBoundedScope__Group_1_1__2 ; + public final void rule__LowerBoundedScope__Group_1_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8607:1: ( rule__BoundedScopeDefinition__Group_1_1_3__0__Impl rule__BoundedScopeDefinition__Group_1_1_3__1 ) - // InternalSolverLanguageParser.g:8608:2: rule__BoundedScopeDefinition__Group_1_1_3__0__Impl rule__BoundedScopeDefinition__Group_1_1_3__1 + // InternalSolverLanguageParser.g:10074:1: ( rule__LowerBoundedScope__Group_1_1__1__Impl rule__LowerBoundedScope__Group_1_1__2 ) + // InternalSolverLanguageParser.g:10075:2: rule__LowerBoundedScope__Group_1_1__1__Impl rule__LowerBoundedScope__Group_1_1__2 { - pushFollow(FOLLOW_59); - rule__BoundedScopeDefinition__Group_1_1_3__0__Impl(); + pushFollow(FOLLOW_64); + rule__LowerBoundedScope__Group_1_1__1__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_1_3__1(); + rule__LowerBoundedScope__Group_1_1__2(); state._fsp--; @@ -26491,25 +30911,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1_3__0" + // $ANTLR end "rule__LowerBoundedScope__Group_1_1__1" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1_3__0__Impl" - // InternalSolverLanguageParser.g:8615:1: rule__BoundedScopeDefinition__Group_1_1_3__0__Impl : ( GreaterThanSignEqualsSign ) ; - public final void rule__BoundedScopeDefinition__Group_1_1_3__0__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_1__1__Impl" + // InternalSolverLanguageParser.g:10082:1: rule__LowerBoundedScope__Group_1_1__1__Impl : ( GreaterThanSignEqualsSign ) ; + public final void rule__LowerBoundedScope__Group_1_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8619:1: ( ( GreaterThanSignEqualsSign ) ) - // InternalSolverLanguageParser.g:8620:1: ( GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:10086:1: ( ( GreaterThanSignEqualsSign ) ) + // InternalSolverLanguageParser.g:10087:1: ( GreaterThanSignEqualsSign ) { - // InternalSolverLanguageParser.g:8620:1: ( GreaterThanSignEqualsSign ) - // InternalSolverLanguageParser.g:8621:2: GreaterThanSignEqualsSign + // InternalSolverLanguageParser.g:10087:1: ( GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:10088:2: GreaterThanSignEqualsSign { - before(grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); + before(grammarAccess.getLowerBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); match(input,GreaterThanSignEqualsSign,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); + after(grammarAccess.getLowerBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } @@ -26528,21 +30948,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1_3__0__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group_1_1__1__Impl" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1_3__1" - // InternalSolverLanguageParser.g:8630:1: rule__BoundedScopeDefinition__Group_1_1_3__1 : rule__BoundedScopeDefinition__Group_1_1_3__1__Impl ; - public final void rule__BoundedScopeDefinition__Group_1_1_3__1() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_1__2" + // InternalSolverLanguageParser.g:10097:1: rule__LowerBoundedScope__Group_1_1__2 : rule__LowerBoundedScope__Group_1_1__2__Impl ; + public final void rule__LowerBoundedScope__Group_1_1__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8634:1: ( rule__BoundedScopeDefinition__Group_1_1_3__1__Impl ) - // InternalSolverLanguageParser.g:8635:2: rule__BoundedScopeDefinition__Group_1_1_3__1__Impl + // InternalSolverLanguageParser.g:10101:1: ( rule__LowerBoundedScope__Group_1_1__2__Impl ) + // InternalSolverLanguageParser.g:10102:2: rule__LowerBoundedScope__Group_1_1__2__Impl { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__Group_1_1_3__1__Impl(); + rule__LowerBoundedScope__Group_1_1__2__Impl(); state._fsp--; @@ -26561,35 +30981,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1_3__1" + // $ANTLR end "rule__LowerBoundedScope__Group_1_1__2" - // $ANTLR start "rule__BoundedScopeDefinition__Group_1_1_3__1__Impl" - // InternalSolverLanguageParser.g:8641:1: rule__BoundedScopeDefinition__Group_1_1_3__1__Impl : ( ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 ) ) ; - public final void rule__BoundedScopeDefinition__Group_1_1_3__1__Impl() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__Group_1_1__2__Impl" + // InternalSolverLanguageParser.g:10108:1: rule__LowerBoundedScope__Group_1_1__2__Impl : ( ( rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 ) ) ; + public final void rule__LowerBoundedScope__Group_1_1__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8645:1: ( ( ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 ) ) ) - // InternalSolverLanguageParser.g:8646:1: ( ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 ) ) + // InternalSolverLanguageParser.g:10112:1: ( ( ( rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 ) ) ) + // InternalSolverLanguageParser.g:10113:1: ( ( rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 ) ) { - // InternalSolverLanguageParser.g:8646:1: ( ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 ) ) - // InternalSolverLanguageParser.g:8647:2: ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 ) + // InternalSolverLanguageParser.g:10113:1: ( ( rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 ) ) + // InternalSolverLanguageParser.g:10114:2: ( rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_3_1()); - // InternalSolverLanguageParser.g:8648:2: ( rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 ) - // InternalSolverLanguageParser.g:8648:3: rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 + before(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_1_2()); + // InternalSolverLanguageParser.g:10115:2: ( rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 ) + // InternalSolverLanguageParser.g:10115:3: rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 { pushFollow(FOLLOW_2); - rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1(); + rule__LowerBoundedScope__LowerBoundAssignment_1_1_2(); state._fsp--; } - after(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_3_1()); + after(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundAssignment_1_1_2()); } @@ -26608,26 +31028,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__Group_1_1_3__1__Impl" + // $ANTLR end "rule__LowerBoundedScope__Group_1_1__2__Impl" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group__0" - // InternalSolverLanguageParser.g:8657:1: rule__LowerBoundedScopeDefinition__Group__0 : rule__LowerBoundedScopeDefinition__Group__0__Impl rule__LowerBoundedScopeDefinition__Group__1 ; - public final void rule__LowerBoundedScopeDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__ObjectiveDeclaration__Group__0" + // InternalSolverLanguageParser.g:10124:1: rule__ObjectiveDeclaration__Group__0 : rule__ObjectiveDeclaration__Group__0__Impl rule__ObjectiveDeclaration__Group__1 ; + public final void rule__ObjectiveDeclaration__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8661:1: ( rule__LowerBoundedScopeDefinition__Group__0__Impl rule__LowerBoundedScopeDefinition__Group__1 ) - // InternalSolverLanguageParser.g:8662:2: rule__LowerBoundedScopeDefinition__Group__0__Impl rule__LowerBoundedScopeDefinition__Group__1 + // InternalSolverLanguageParser.g:10128:1: ( rule__ObjectiveDeclaration__Group__0__Impl rule__ObjectiveDeclaration__Group__1 ) + // InternalSolverLanguageParser.g:10129:2: rule__ObjectiveDeclaration__Group__0__Impl rule__ObjectiveDeclaration__Group__1 { - pushFollow(FOLLOW_61); - rule__LowerBoundedScopeDefinition__Group__0__Impl(); + pushFollow(FOLLOW_12); + rule__ObjectiveDeclaration__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group__1(); + rule__ObjectiveDeclaration__Group__1(); state._fsp--; @@ -26646,25 +31066,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group__0" + // $ANTLR end "rule__ObjectiveDeclaration__Group__0" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:8669:1: rule__LowerBoundedScopeDefinition__Group__0__Impl : ( Scope ) ; - public final void rule__LowerBoundedScopeDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ObjectiveDeclaration__Group__0__Impl" + // InternalSolverLanguageParser.g:10136:1: rule__ObjectiveDeclaration__Group__0__Impl : ( ( rule__ObjectiveDeclaration__KindAssignment_0 ) ) ; + public final void rule__ObjectiveDeclaration__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8673:1: ( ( Scope ) ) - // InternalSolverLanguageParser.g:8674:1: ( Scope ) + // InternalSolverLanguageParser.g:10140:1: ( ( ( rule__ObjectiveDeclaration__KindAssignment_0 ) ) ) + // InternalSolverLanguageParser.g:10141:1: ( ( rule__ObjectiveDeclaration__KindAssignment_0 ) ) { - // InternalSolverLanguageParser.g:8674:1: ( Scope ) - // InternalSolverLanguageParser.g:8675:2: Scope + // InternalSolverLanguageParser.g:10141:1: ( ( rule__ObjectiveDeclaration__KindAssignment_0 ) ) + // InternalSolverLanguageParser.g:10142:2: ( rule__ObjectiveDeclaration__KindAssignment_0 ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getScopeKeyword_0()); - match(input,Scope,FOLLOW_2); - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getScopeKeyword_0()); + before(grammarAccess.getObjectiveDeclarationAccess().getKindAssignment_0()); + // InternalSolverLanguageParser.g:10143:2: ( rule__ObjectiveDeclaration__KindAssignment_0 ) + // InternalSolverLanguageParser.g:10143:3: rule__ObjectiveDeclaration__KindAssignment_0 + { + pushFollow(FOLLOW_2); + rule__ObjectiveDeclaration__KindAssignment_0(); + + state._fsp--; + + + } + + after(grammarAccess.getObjectiveDeclarationAccess().getKindAssignment_0()); } @@ -26683,21 +31113,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group__0__Impl" + // $ANTLR end "rule__ObjectiveDeclaration__Group__0__Impl" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group__1" - // InternalSolverLanguageParser.g:8684:1: rule__LowerBoundedScopeDefinition__Group__1 : rule__LowerBoundedScopeDefinition__Group__1__Impl ; - public final void rule__LowerBoundedScopeDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__ObjectiveDeclaration__Group__1" + // InternalSolverLanguageParser.g:10151:1: rule__ObjectiveDeclaration__Group__1 : rule__ObjectiveDeclaration__Group__1__Impl rule__ObjectiveDeclaration__Group__2 ; + public final void rule__ObjectiveDeclaration__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8688:1: ( rule__LowerBoundedScopeDefinition__Group__1__Impl ) - // InternalSolverLanguageParser.g:8689:2: rule__LowerBoundedScopeDefinition__Group__1__Impl + // InternalSolverLanguageParser.g:10155:1: ( rule__ObjectiveDeclaration__Group__1__Impl rule__ObjectiveDeclaration__Group__2 ) + // InternalSolverLanguageParser.g:10156:2: rule__ObjectiveDeclaration__Group__1__Impl rule__ObjectiveDeclaration__Group__2 { + pushFollow(FOLLOW_7); + rule__ObjectiveDeclaration__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group__1__Impl(); + rule__ObjectiveDeclaration__Group__2(); state._fsp--; @@ -26716,35 +31151,35 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group__1" + // $ANTLR end "rule__ObjectiveDeclaration__Group__1" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:8695:1: rule__LowerBoundedScopeDefinition__Group__1__Impl : ( ( rule__LowerBoundedScopeDefinition__Alternatives_1 ) ) ; - public final void rule__LowerBoundedScopeDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ObjectiveDeclaration__Group__1__Impl" + // InternalSolverLanguageParser.g:10163:1: rule__ObjectiveDeclaration__Group__1__Impl : ( ( rule__ObjectiveDeclaration__ObjectiveAssignment_1 ) ) ; + public final void rule__ObjectiveDeclaration__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8699:1: ( ( ( rule__LowerBoundedScopeDefinition__Alternatives_1 ) ) ) - // InternalSolverLanguageParser.g:8700:1: ( ( rule__LowerBoundedScopeDefinition__Alternatives_1 ) ) + // InternalSolverLanguageParser.g:10167:1: ( ( ( rule__ObjectiveDeclaration__ObjectiveAssignment_1 ) ) ) + // InternalSolverLanguageParser.g:10168:1: ( ( rule__ObjectiveDeclaration__ObjectiveAssignment_1 ) ) { - // InternalSolverLanguageParser.g:8700:1: ( ( rule__LowerBoundedScopeDefinition__Alternatives_1 ) ) - // InternalSolverLanguageParser.g:8701:2: ( rule__LowerBoundedScopeDefinition__Alternatives_1 ) + // InternalSolverLanguageParser.g:10168:1: ( ( rule__ObjectiveDeclaration__ObjectiveAssignment_1 ) ) + // InternalSolverLanguageParser.g:10169:2: ( rule__ObjectiveDeclaration__ObjectiveAssignment_1 ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getAlternatives_1()); - // InternalSolverLanguageParser.g:8702:2: ( rule__LowerBoundedScopeDefinition__Alternatives_1 ) - // InternalSolverLanguageParser.g:8702:3: rule__LowerBoundedScopeDefinition__Alternatives_1 + before(grammarAccess.getObjectiveDeclarationAccess().getObjectiveAssignment_1()); + // InternalSolverLanguageParser.g:10170:2: ( rule__ObjectiveDeclaration__ObjectiveAssignment_1 ) + // InternalSolverLanguageParser.g:10170:3: rule__ObjectiveDeclaration__ObjectiveAssignment_1 { pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Alternatives_1(); + rule__ObjectiveDeclaration__ObjectiveAssignment_1(); state._fsp--; } - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getAlternatives_1()); + after(grammarAccess.getObjectiveDeclarationAccess().getObjectiveAssignment_1()); } @@ -26763,26 +31198,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group__1__Impl" + // $ANTLR end "rule__ObjectiveDeclaration__Group__1__Impl" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_0__0" - // InternalSolverLanguageParser.g:8711:1: rule__LowerBoundedScopeDefinition__Group_1_0__0 : rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl rule__LowerBoundedScopeDefinition__Group_1_0__1 ; - public final void rule__LowerBoundedScopeDefinition__Group_1_0__0() throws RecognitionException { + // $ANTLR start "rule__ObjectiveDeclaration__Group__2" + // InternalSolverLanguageParser.g:10178:1: rule__ObjectiveDeclaration__Group__2 : rule__ObjectiveDeclaration__Group__2__Impl ; + public final void rule__ObjectiveDeclaration__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8715:1: ( rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl rule__LowerBoundedScopeDefinition__Group_1_0__1 ) - // InternalSolverLanguageParser.g:8716:2: rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl rule__LowerBoundedScopeDefinition__Group_1_0__1 + // InternalSolverLanguageParser.g:10182:1: ( rule__ObjectiveDeclaration__Group__2__Impl ) + // InternalSolverLanguageParser.g:10183:2: rule__ObjectiveDeclaration__Group__2__Impl { - pushFollow(FOLLOW_62); - rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group_1_0__1(); + rule__ObjectiveDeclaration__Group__2__Impl(); state._fsp--; @@ -26801,35 +31231,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_0__0" + // $ANTLR end "rule__ObjectiveDeclaration__Group__2" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl" - // InternalSolverLanguageParser.g:8723:1: rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl : ( ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 ) ) ; - public final void rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ObjectiveDeclaration__Group__2__Impl" + // InternalSolverLanguageParser.g:10189:1: rule__ObjectiveDeclaration__Group__2__Impl : ( RULE_FULL_STOP ) ; + public final void rule__ObjectiveDeclaration__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8727:1: ( ( ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 ) ) ) - // InternalSolverLanguageParser.g:8728:1: ( ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 ) ) + // InternalSolverLanguageParser.g:10193:1: ( ( RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:10194:1: ( RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:8728:1: ( ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 ) ) - // InternalSolverLanguageParser.g:8729:2: ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 ) + // InternalSolverLanguageParser.g:10194:1: ( RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:10195:2: RULE_FULL_STOP { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0()); - // InternalSolverLanguageParser.g:8730:2: ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 ) - // InternalSolverLanguageParser.g:8730:3: rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 - { - pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0(); - - state._fsp--; - - - } - - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_0_0()); + before(grammarAccess.getObjectiveDeclarationAccess().getFULL_STOPTerminalRuleCall_2()); + match(input,RULE_FULL_STOP,FOLLOW_2); + after(grammarAccess.getObjectiveDeclarationAccess().getFULL_STOPTerminalRuleCall_2()); } @@ -26848,26 +31268,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_0__0__Impl" + // $ANTLR end "rule__ObjectiveDeclaration__Group__2__Impl" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_0__1" - // InternalSolverLanguageParser.g:8738:1: rule__LowerBoundedScopeDefinition__Group_1_0__1 : rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl rule__LowerBoundedScopeDefinition__Group_1_0__2 ; - public final void rule__LowerBoundedScopeDefinition__Group_1_0__1() throws RecognitionException { + // $ANTLR start "rule__Real__Group__0" + // InternalSolverLanguageParser.g:10205:1: rule__Real__Group__0 : rule__Real__Group__0__Impl rule__Real__Group__1 ; + public final void rule__Real__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8742:1: ( rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl rule__LowerBoundedScopeDefinition__Group_1_0__2 ) - // InternalSolverLanguageParser.g:8743:2: rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl rule__LowerBoundedScopeDefinition__Group_1_0__2 + // InternalSolverLanguageParser.g:10209:1: ( rule__Real__Group__0__Impl rule__Real__Group__1 ) + // InternalSolverLanguageParser.g:10210:2: rule__Real__Group__0__Impl rule__Real__Group__1 { - pushFollow(FOLLOW_9); - rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl(); + pushFollow(FOLLOW_49); + rule__Real__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group_1_0__2(); + rule__Real__Group__1(); state._fsp--; @@ -26886,25 +31306,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_0__1" + // $ANTLR end "rule__Real__Group__0" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl" - // InternalSolverLanguageParser.g:8750:1: rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl : ( LessThanSignEqualsSign ) ; - public final void rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Real__Group__0__Impl" + // InternalSolverLanguageParser.g:10217:1: rule__Real__Group__0__Impl : ( RULE_INT ) ; + public final void rule__Real__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8754:1: ( ( LessThanSignEqualsSign ) ) - // InternalSolverLanguageParser.g:8755:1: ( LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:10221:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:10222:1: ( RULE_INT ) { - // InternalSolverLanguageParser.g:8755:1: ( LessThanSignEqualsSign ) - // InternalSolverLanguageParser.g:8756:2: LessThanSignEqualsSign + // InternalSolverLanguageParser.g:10222:1: ( RULE_INT ) + // InternalSolverLanguageParser.g:10223:2: RULE_INT { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_1()); - match(input,LessThanSignEqualsSign,FOLLOW_2); - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_1()); + before(grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); } @@ -26923,21 +31343,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_0__1__Impl" + // $ANTLR end "rule__Real__Group__0__Impl" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_0__2" - // InternalSolverLanguageParser.g:8765:1: rule__LowerBoundedScopeDefinition__Group_1_0__2 : rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl ; - public final void rule__LowerBoundedScopeDefinition__Group_1_0__2() throws RecognitionException { + // $ANTLR start "rule__Real__Group__1" + // InternalSolverLanguageParser.g:10232:1: rule__Real__Group__1 : rule__Real__Group__1__Impl rule__Real__Group__2 ; + public final void rule__Real__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8769:1: ( rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl ) - // InternalSolverLanguageParser.g:8770:2: rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl + // InternalSolverLanguageParser.g:10236:1: ( rule__Real__Group__1__Impl rule__Real__Group__2 ) + // InternalSolverLanguageParser.g:10237:2: rule__Real__Group__1__Impl rule__Real__Group__2 { + pushFollow(FOLLOW_64); + rule__Real__Group__1__Impl(); + + state._fsp--; + pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl(); + rule__Real__Group__2(); state._fsp--; @@ -26956,35 +31381,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_0__2" + // $ANTLR end "rule__Real__Group__1" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl" - // InternalSolverLanguageParser.g:8776:1: rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl : ( ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 ) ) ; - public final void rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl() throws RecognitionException { + // $ANTLR start "rule__Real__Group__1__Impl" + // InternalSolverLanguageParser.g:10244:1: rule__Real__Group__1__Impl : ( FullStop ) ; + public final void rule__Real__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8780:1: ( ( ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 ) ) ) - // InternalSolverLanguageParser.g:8781:1: ( ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 ) ) - { - // InternalSolverLanguageParser.g:8781:1: ( ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 ) ) - // InternalSolverLanguageParser.g:8782:2: ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 ) + // InternalSolverLanguageParser.g:10248:1: ( ( FullStop ) ) + // InternalSolverLanguageParser.g:10249:1: ( FullStop ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_0_2()); - // InternalSolverLanguageParser.g:8783:2: ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 ) - // InternalSolverLanguageParser.g:8783:3: rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 + // InternalSolverLanguageParser.g:10249:1: ( FullStop ) + // InternalSolverLanguageParser.g:10250:2: FullStop { - pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2(); - - state._fsp--; - - - } - - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_0_2()); + before(grammarAccess.getRealAccess().getFullStopKeyword_1()); + match(input,FullStop,FOLLOW_2); + after(grammarAccess.getRealAccess().getFullStopKeyword_1()); } @@ -27003,26 +31418,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_0__2__Impl" + // $ANTLR end "rule__Real__Group__1__Impl" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_1__0" - // InternalSolverLanguageParser.g:8792:1: rule__LowerBoundedScopeDefinition__Group_1_1__0 : rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl rule__LowerBoundedScopeDefinition__Group_1_1__1 ; - public final void rule__LowerBoundedScopeDefinition__Group_1_1__0() throws RecognitionException { + // $ANTLR start "rule__Real__Group__2" + // InternalSolverLanguageParser.g:10259:1: rule__Real__Group__2 : rule__Real__Group__2__Impl ; + public final void rule__Real__Group__2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8796:1: ( rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl rule__LowerBoundedScopeDefinition__Group_1_1__1 ) - // InternalSolverLanguageParser.g:8797:2: rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl rule__LowerBoundedScopeDefinition__Group_1_1__1 + // InternalSolverLanguageParser.g:10263:1: ( rule__Real__Group__2__Impl ) + // InternalSolverLanguageParser.g:10264:2: rule__Real__Group__2__Impl { - pushFollow(FOLLOW_63); - rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group_1_1__1(); + rule__Real__Group__2__Impl(); state._fsp--; @@ -27041,35 +31451,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_1__0" + // $ANTLR end "rule__Real__Group__2" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl" - // InternalSolverLanguageParser.g:8804:1: rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl : ( ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 ) ) ; - public final void rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__Real__Group__2__Impl" + // InternalSolverLanguageParser.g:10270:1: rule__Real__Group__2__Impl : ( RULE_INT ) ; + public final void rule__Real__Group__2__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8808:1: ( ( ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 ) ) ) - // InternalSolverLanguageParser.g:8809:1: ( ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 ) ) - { - // InternalSolverLanguageParser.g:8809:1: ( ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 ) ) - // InternalSolverLanguageParser.g:8810:2: ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 ) + // InternalSolverLanguageParser.g:10274:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:10275:1: ( RULE_INT ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_1_0()); - // InternalSolverLanguageParser.g:8811:2: ( rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 ) - // InternalSolverLanguageParser.g:8811:3: rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 + // InternalSolverLanguageParser.g:10275:1: ( RULE_INT ) + // InternalSolverLanguageParser.g:10276:2: RULE_INT { - pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0(); - - state._fsp--; - - - } - - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeAssignment_1_1_0()); + before(grammarAccess.getRealAccess().getINTTerminalRuleCall_2()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getRealAccess().getINTTerminalRuleCall_2()); } @@ -27088,26 +31488,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_1__0__Impl" + // $ANTLR end "rule__Real__Group__2__Impl" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_1__1" - // InternalSolverLanguageParser.g:8819:1: rule__LowerBoundedScopeDefinition__Group_1_1__1 : rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl rule__LowerBoundedScopeDefinition__Group_1_1__2 ; - public final void rule__LowerBoundedScopeDefinition__Group_1_1__1() throws RecognitionException { + // $ANTLR start "rule__QualifiedName__Group__0" + // InternalSolverLanguageParser.g:10286:1: rule__QualifiedName__Group__0 : rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1 ; + public final void rule__QualifiedName__Group__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8823:1: ( rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl rule__LowerBoundedScopeDefinition__Group_1_1__2 ) - // InternalSolverLanguageParser.g:8824:2: rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl rule__LowerBoundedScopeDefinition__Group_1_1__2 + // InternalSolverLanguageParser.g:10290:1: ( rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1 ) + // InternalSolverLanguageParser.g:10291:2: rule__QualifiedName__Group__0__Impl rule__QualifiedName__Group__1 { - pushFollow(FOLLOW_59); - rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl(); + pushFollow(FOLLOW_73); + rule__QualifiedName__Group__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group_1_1__2(); + rule__QualifiedName__Group__1(); state._fsp--; @@ -27126,25 +31526,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_1__1" + // $ANTLR end "rule__QualifiedName__Group__0" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl" - // InternalSolverLanguageParser.g:8831:1: rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl : ( GreaterThanSignEqualsSign ) ; - public final void rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__QualifiedName__Group__0__Impl" + // InternalSolverLanguageParser.g:10298:1: rule__QualifiedName__Group__0__Impl : ( ruleQualifiedNameSegment ) ; + public final void rule__QualifiedName__Group__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8835:1: ( ( GreaterThanSignEqualsSign ) ) - // InternalSolverLanguageParser.g:8836:1: ( GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:10302:1: ( ( ruleQualifiedNameSegment ) ) + // InternalSolverLanguageParser.g:10303:1: ( ruleQualifiedNameSegment ) { - // InternalSolverLanguageParser.g:8836:1: ( GreaterThanSignEqualsSign ) - // InternalSolverLanguageParser.g:8837:2: GreaterThanSignEqualsSign + // InternalSolverLanguageParser.g:10303:1: ( ruleQualifiedNameSegment ) + // InternalSolverLanguageParser.g:10304:2: ruleQualifiedNameSegment { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); - match(input,GreaterThanSignEqualsSign,FOLLOW_2); - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); + before(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleQualifiedNameSegment(); + + state._fsp--; + + after(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_0()); } @@ -27163,21 +31567,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_1__1__Impl" + // $ANTLR end "rule__QualifiedName__Group__0__Impl" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_1__2" - // InternalSolverLanguageParser.g:8846:1: rule__LowerBoundedScopeDefinition__Group_1_1__2 : rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl ; - public final void rule__LowerBoundedScopeDefinition__Group_1_1__2() throws RecognitionException { + // $ANTLR start "rule__QualifiedName__Group__1" + // InternalSolverLanguageParser.g:10313:1: rule__QualifiedName__Group__1 : rule__QualifiedName__Group__1__Impl ; + public final void rule__QualifiedName__Group__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8850:1: ( rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl ) - // InternalSolverLanguageParser.g:8851:2: rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl + // InternalSolverLanguageParser.g:10317:1: ( rule__QualifiedName__Group__1__Impl ) + // InternalSolverLanguageParser.g:10318:2: rule__QualifiedName__Group__1__Impl { pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl(); + rule__QualifiedName__Group__1__Impl(); state._fsp--; @@ -27196,35 +31600,53 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_1__2" + // $ANTLR end "rule__QualifiedName__Group__1" - // $ANTLR start "rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl" - // InternalSolverLanguageParser.g:8857:1: rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl : ( ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 ) ) ; - public final void rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl() throws RecognitionException { + // $ANTLR start "rule__QualifiedName__Group__1__Impl" + // InternalSolverLanguageParser.g:10324:1: rule__QualifiedName__Group__1__Impl : ( ( rule__QualifiedName__Group_1__0 )* ) ; + public final void rule__QualifiedName__Group__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8861:1: ( ( ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 ) ) ) - // InternalSolverLanguageParser.g:8862:1: ( ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 ) ) + // InternalSolverLanguageParser.g:10328:1: ( ( ( rule__QualifiedName__Group_1__0 )* ) ) + // InternalSolverLanguageParser.g:10329:1: ( ( rule__QualifiedName__Group_1__0 )* ) { - // InternalSolverLanguageParser.g:8862:1: ( ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 ) ) - // InternalSolverLanguageParser.g:8863:2: ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 ) + // InternalSolverLanguageParser.g:10329:1: ( ( rule__QualifiedName__Group_1__0 )* ) + // InternalSolverLanguageParser.g:10330:2: ( rule__QualifiedName__Group_1__0 )* { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_2()); - // InternalSolverLanguageParser.g:8864:2: ( rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 ) - // InternalSolverLanguageParser.g:8864:3: rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 - { - pushFollow(FOLLOW_2); - rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2(); + before(grammarAccess.getQualifiedNameAccess().getGroup_1()); + // InternalSolverLanguageParser.g:10331:2: ( rule__QualifiedName__Group_1__0 )* + loop68: + do { + int alt68=2; + int LA68_0 = input.LA(1); - state._fsp--; + if ( (LA68_0==ColonColon) ) { + alt68=1; + } - } + switch (alt68) { + case 1 : + // InternalSolverLanguageParser.g:10331:3: rule__QualifiedName__Group_1__0 + { + pushFollow(FOLLOW_74); + rule__QualifiedName__Group_1__0(); + + state._fsp--; + + + } + break; - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundAssignment_1_1_2()); + default : + break loop68; + } + } while (true); + + after(grammarAccess.getQualifiedNameAccess().getGroup_1()); } @@ -27243,26 +31665,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__Group_1_1__2__Impl" + // $ANTLR end "rule__QualifiedName__Group__1__Impl" - // $ANTLR start "rule__ObjectiveDefinition__Group__0" - // InternalSolverLanguageParser.g:8873:1: rule__ObjectiveDefinition__Group__0 : rule__ObjectiveDefinition__Group__0__Impl rule__ObjectiveDefinition__Group__1 ; - public final void rule__ObjectiveDefinition__Group__0() throws RecognitionException { + // $ANTLR start "rule__QualifiedName__Group_1__0" + // InternalSolverLanguageParser.g:10340:1: rule__QualifiedName__Group_1__0 : rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 ; + public final void rule__QualifiedName__Group_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8877:1: ( rule__ObjectiveDefinition__Group__0__Impl rule__ObjectiveDefinition__Group__1 ) - // InternalSolverLanguageParser.g:8878:2: rule__ObjectiveDefinition__Group__0__Impl rule__ObjectiveDefinition__Group__1 + // InternalSolverLanguageParser.g:10344:1: ( rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 ) + // InternalSolverLanguageParser.g:10345:2: rule__QualifiedName__Group_1__0__Impl rule__QualifiedName__Group_1__1 { - pushFollow(FOLLOW_7); - rule__ObjectiveDefinition__Group__0__Impl(); + pushFollow(FOLLOW_6); + rule__QualifiedName__Group_1__0__Impl(); state._fsp--; pushFollow(FOLLOW_2); - rule__ObjectiveDefinition__Group__1(); + rule__QualifiedName__Group_1__1(); state._fsp--; @@ -27281,35 +31703,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ObjectiveDefinition__Group__0" + // $ANTLR end "rule__QualifiedName__Group_1__0" - // $ANTLR start "rule__ObjectiveDefinition__Group__0__Impl" - // InternalSolverLanguageParser.g:8885:1: rule__ObjectiveDefinition__Group__0__Impl : ( ( rule__ObjectiveDefinition__KindAssignment_0 ) ) ; - public final void rule__ObjectiveDefinition__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__QualifiedName__Group_1__0__Impl" + // InternalSolverLanguageParser.g:10352:1: rule__QualifiedName__Group_1__0__Impl : ( ColonColon ) ; + public final void rule__QualifiedName__Group_1__0__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8889:1: ( ( ( rule__ObjectiveDefinition__KindAssignment_0 ) ) ) - // InternalSolverLanguageParser.g:8890:1: ( ( rule__ObjectiveDefinition__KindAssignment_0 ) ) + // InternalSolverLanguageParser.g:10356:1: ( ( ColonColon ) ) + // InternalSolverLanguageParser.g:10357:1: ( ColonColon ) { - // InternalSolverLanguageParser.g:8890:1: ( ( rule__ObjectiveDefinition__KindAssignment_0 ) ) - // InternalSolverLanguageParser.g:8891:2: ( rule__ObjectiveDefinition__KindAssignment_0 ) + // InternalSolverLanguageParser.g:10357:1: ( ColonColon ) + // InternalSolverLanguageParser.g:10358:2: ColonColon { - before(grammarAccess.getObjectiveDefinitionAccess().getKindAssignment_0()); - // InternalSolverLanguageParser.g:8892:2: ( rule__ObjectiveDefinition__KindAssignment_0 ) - // InternalSolverLanguageParser.g:8892:3: rule__ObjectiveDefinition__KindAssignment_0 - { - pushFollow(FOLLOW_2); - rule__ObjectiveDefinition__KindAssignment_0(); - - state._fsp--; - - - } - - after(grammarAccess.getObjectiveDefinitionAccess().getKindAssignment_0()); + before(grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_0()); + match(input,ColonColon,FOLLOW_2); + after(grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_0()); } @@ -27328,21 +31740,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ObjectiveDefinition__Group__0__Impl" + // $ANTLR end "rule__QualifiedName__Group_1__0__Impl" - // $ANTLR start "rule__ObjectiveDefinition__Group__1" - // InternalSolverLanguageParser.g:8900:1: rule__ObjectiveDefinition__Group__1 : rule__ObjectiveDefinition__Group__1__Impl ; - public final void rule__ObjectiveDefinition__Group__1() throws RecognitionException { + // $ANTLR start "rule__QualifiedName__Group_1__1" + // InternalSolverLanguageParser.g:10367:1: rule__QualifiedName__Group_1__1 : rule__QualifiedName__Group_1__1__Impl ; + public final void rule__QualifiedName__Group_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8904:1: ( rule__ObjectiveDefinition__Group__1__Impl ) - // InternalSolverLanguageParser.g:8905:2: rule__ObjectiveDefinition__Group__1__Impl + // InternalSolverLanguageParser.g:10371:1: ( rule__QualifiedName__Group_1__1__Impl ) + // InternalSolverLanguageParser.g:10372:2: rule__QualifiedName__Group_1__1__Impl { pushFollow(FOLLOW_2); - rule__ObjectiveDefinition__Group__1__Impl(); + rule__QualifiedName__Group_1__1__Impl(); state._fsp--; @@ -27361,35 +31773,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ObjectiveDefinition__Group__1" + // $ANTLR end "rule__QualifiedName__Group_1__1" - // $ANTLR start "rule__ObjectiveDefinition__Group__1__Impl" - // InternalSolverLanguageParser.g:8911:1: rule__ObjectiveDefinition__Group__1__Impl : ( ( rule__ObjectiveDefinition__ObjectiveAssignment_1 ) ) ; - public final void rule__ObjectiveDefinition__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__QualifiedName__Group_1__1__Impl" + // InternalSolverLanguageParser.g:10378:1: rule__QualifiedName__Group_1__1__Impl : ( ruleQualifiedNameSegment ) ; + public final void rule__QualifiedName__Group_1__1__Impl() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8915:1: ( ( ( rule__ObjectiveDefinition__ObjectiveAssignment_1 ) ) ) - // InternalSolverLanguageParser.g:8916:1: ( ( rule__ObjectiveDefinition__ObjectiveAssignment_1 ) ) + // InternalSolverLanguageParser.g:10382:1: ( ( ruleQualifiedNameSegment ) ) + // InternalSolverLanguageParser.g:10383:1: ( ruleQualifiedNameSegment ) { - // InternalSolverLanguageParser.g:8916:1: ( ( rule__ObjectiveDefinition__ObjectiveAssignment_1 ) ) - // InternalSolverLanguageParser.g:8917:2: ( rule__ObjectiveDefinition__ObjectiveAssignment_1 ) - { - before(grammarAccess.getObjectiveDefinitionAccess().getObjectiveAssignment_1()); - // InternalSolverLanguageParser.g:8918:2: ( rule__ObjectiveDefinition__ObjectiveAssignment_1 ) - // InternalSolverLanguageParser.g:8918:3: rule__ObjectiveDefinition__ObjectiveAssignment_1 + // InternalSolverLanguageParser.g:10383:1: ( ruleQualifiedNameSegment ) + // InternalSolverLanguageParser.g:10384:2: ruleQualifiedNameSegment { + before(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_1_1()); pushFollow(FOLLOW_2); - rule__ObjectiveDefinition__ObjectiveAssignment_1(); + ruleQualifiedNameSegment(); state._fsp--; - - } - - after(grammarAccess.getObjectiveDefinitionAccess().getObjectiveAssignment_1()); + after(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_1_1()); } @@ -27408,28 +31814,44 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ObjectiveDefinition__Group__1__Impl" + // $ANTLR end "rule__QualifiedName__Group_1__1__Impl" - // $ANTLR start "rule__Real__Group__0" - // InternalSolverLanguageParser.g:8927:1: rule__Real__Group__0 : rule__Real__Group__0__Impl rule__Real__Group__1 ; - public final void rule__Real__Group__0() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__UnorderedGroup_1" + // InternalSolverLanguageParser.g:10394:1: rule__ExternPredicateDeclaration__UnorderedGroup_1 : ( rule__ExternPredicateDeclaration__UnorderedGroup_1__0 )? ; + public final void rule__ExternPredicateDeclaration__UnorderedGroup_1() throws RecognitionException { int stackSize = keepStackSize(); + getUnorderedGroupHelper().enter(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); try { - // InternalSolverLanguageParser.g:8931:1: ( rule__Real__Group__0__Impl rule__Real__Group__1 ) - // InternalSolverLanguageParser.g:8932:2: rule__Real__Group__0__Impl rule__Real__Group__1 + // InternalSolverLanguageParser.g:10399:1: ( ( rule__ExternPredicateDeclaration__UnorderedGroup_1__0 )? ) + // InternalSolverLanguageParser.g:10400:2: ( rule__ExternPredicateDeclaration__UnorderedGroup_1__0 )? { - pushFollow(FOLLOW_64); - rule__Real__Group__0__Impl(); + // InternalSolverLanguageParser.g:10400:2: ( rule__ExternPredicateDeclaration__UnorderedGroup_1__0 )? + int alt69=2; + int LA69_0 = input.LA(1); - state._fsp--; + if ( LA69_0 == Functional && getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0) ) { + alt69=1; + } + else if ( LA69_0 == Error && getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1) ) { + alt69=1; + } + switch (alt69) { + case 1 : + // InternalSolverLanguageParser.g:10400:2: rule__ExternPredicateDeclaration__UnorderedGroup_1__0 + { + pushFollow(FOLLOW_2); + rule__ExternPredicateDeclaration__UnorderedGroup_1__0(); - pushFollow(FOLLOW_2); - rule__Real__Group__1(); + state._fsp--; - state._fsp--; + + } + break; + + } } @@ -27441,65 +31863,137 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } finally { + getUnorderedGroupHelper().leave(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); restoreStackSize(stackSize); } return ; } - // $ANTLR end "rule__Real__Group__0" + // $ANTLR end "rule__ExternPredicateDeclaration__UnorderedGroup_1" - // $ANTLR start "rule__Real__Group__0__Impl" - // InternalSolverLanguageParser.g:8939:1: rule__Real__Group__0__Impl : ( RULE_INT ) ; - public final void rule__Real__Group__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl" + // InternalSolverLanguageParser.g:10408:1: rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl : ( ({...}? => ( ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) ) ) | ({...}? => ( ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) ) ) ) ; + public final void rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl() throws RecognitionException { int stackSize = keepStackSize(); + boolean selected = false; try { - // InternalSolverLanguageParser.g:8943:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:8944:1: ( RULE_INT ) + // InternalSolverLanguageParser.g:10413:1: ( ( ({...}? => ( ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) ) ) | ({...}? => ( ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) ) ) ) ) + // InternalSolverLanguageParser.g:10414:3: ( ({...}? => ( ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) ) ) | ({...}? => ( ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) ) ) ) { - // InternalSolverLanguageParser.g:8944:1: ( RULE_INT ) - // InternalSolverLanguageParser.g:8945:2: RULE_INT - { - before(grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); - match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); + // InternalSolverLanguageParser.g:10414:3: ( ({...}? => ( ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) ) ) | ({...}? => ( ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) ) ) ) + int alt70=2; + int LA70_0 = input.LA(1); + if ( LA70_0 == Functional && getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0) ) { + alt70=1; } + else if ( LA70_0 == Error && getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1) ) { + alt70=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 70, 0, input); - + throw nvae; } + switch (alt70) { + case 1 : + // InternalSolverLanguageParser.g:10415:3: ({...}? => ( ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) ) ) + { + // InternalSolverLanguageParser.g:10415:3: ({...}? => ( ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) ) ) + // InternalSolverLanguageParser.g:10416:4: {...}? => ( ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0) ) { + throw new FailedPredicateException(input, "rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0)"); + } + // InternalSolverLanguageParser.g:10416:122: ( ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) ) + // InternalSolverLanguageParser.g:10417:5: ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) + { - } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } - finally { + getUnorderedGroupHelper().select(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0); + - restoreStackSize(stackSize); + selected = true; + + // InternalSolverLanguageParser.g:10423:5: ( ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) ) + // InternalSolverLanguageParser.g:10424:6: ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) + { + before(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalAssignment_1_0()); + // InternalSolverLanguageParser.g:10425:6: ( rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 ) + // InternalSolverLanguageParser.g:10425:7: rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 + { + pushFollow(FOLLOW_2); + rule__ExternPredicateDeclaration__FunctionalAssignment_1_0(); + + state._fsp--; + + + } + + after(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalAssignment_1_0()); + + } + + + } + + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:10430:3: ({...}? => ( ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) ) ) + { + // InternalSolverLanguageParser.g:10430:3: ({...}? => ( ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) ) ) + // InternalSolverLanguageParser.g:10431:4: {...}? => ( ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1) ) { + throw new FailedPredicateException(input, "rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1)"); + } + // InternalSolverLanguageParser.g:10431:122: ( ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) ) + // InternalSolverLanguageParser.g:10432:5: ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) + { + + getUnorderedGroupHelper().select(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1); + + + selected = true; + + // InternalSolverLanguageParser.g:10438:5: ( ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) ) + // InternalSolverLanguageParser.g:10439:6: ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) + { + before(grammarAccess.getExternPredicateDeclarationAccess().getErrorAssignment_1_1()); + // InternalSolverLanguageParser.g:10440:6: ( rule__ExternPredicateDeclaration__ErrorAssignment_1_1 ) + // InternalSolverLanguageParser.g:10440:7: rule__ExternPredicateDeclaration__ErrorAssignment_1_1 + { + pushFollow(FOLLOW_2); + rule__ExternPredicateDeclaration__ErrorAssignment_1_1(); + + state._fsp--; + + + } + + after(grammarAccess.getExternPredicateDeclarationAccess().getErrorAssignment_1_1()); + + } - } - return ; - } - // $ANTLR end "rule__Real__Group__0__Impl" + } - // $ANTLR start "rule__Real__Group__1" - // InternalSolverLanguageParser.g:8954:1: rule__Real__Group__1 : rule__Real__Group__1__Impl ; - public final void rule__Real__Group__1() throws RecognitionException { - int stackSize = keepStackSize(); - - try { - // InternalSolverLanguageParser.g:8958:1: ( rule__Real__Group__1__Impl ) - // InternalSolverLanguageParser.g:8959:2: rule__Real__Group__1__Impl - { - pushFollow(FOLLOW_2); - rule__Real__Group__1__Impl(); + } - state._fsp--; + + } + break; + + } } @@ -27511,41 +32005,47 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } finally { + if (selected) + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); restoreStackSize(stackSize); } return ; } - // $ANTLR end "rule__Real__Group__1" + // $ANTLR end "rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl" - // $ANTLR start "rule__Real__Group__1__Impl" - // InternalSolverLanguageParser.g:8965:1: rule__Real__Group__1__Impl : ( ( rule__Real__Group_1__0 )? ) ; - public final void rule__Real__Group__1__Impl() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__UnorderedGroup_1__0" + // InternalSolverLanguageParser.g:10453:1: rule__ExternPredicateDeclaration__UnorderedGroup_1__0 : rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl ( rule__ExternPredicateDeclaration__UnorderedGroup_1__1 )? ; + public final void rule__ExternPredicateDeclaration__UnorderedGroup_1__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8969:1: ( ( ( rule__Real__Group_1__0 )? ) ) - // InternalSolverLanguageParser.g:8970:1: ( ( rule__Real__Group_1__0 )? ) - { - // InternalSolverLanguageParser.g:8970:1: ( ( rule__Real__Group_1__0 )? ) - // InternalSolverLanguageParser.g:8971:2: ( rule__Real__Group_1__0 )? + // InternalSolverLanguageParser.g:10457:1: ( rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl ( rule__ExternPredicateDeclaration__UnorderedGroup_1__1 )? ) + // InternalSolverLanguageParser.g:10458:2: rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl ( rule__ExternPredicateDeclaration__UnorderedGroup_1__1 )? { - before(grammarAccess.getRealAccess().getGroup_1()); - // InternalSolverLanguageParser.g:8972:2: ( rule__Real__Group_1__0 )? - int alt61=2; - int LA61_0 = input.LA(1); + pushFollow(FOLLOW_75); + rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl(); - if ( (LA61_0==FullStop) ) { - alt61=1; + state._fsp--; + + // InternalSolverLanguageParser.g:10459:2: ( rule__ExternPredicateDeclaration__UnorderedGroup_1__1 )? + int alt71=2; + int LA71_0 = input.LA(1); + + if ( LA71_0 == Functional && getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0) ) { + alt71=1; } - switch (alt61) { + else if ( LA71_0 == Error && getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1) ) { + alt71=1; + } + switch (alt71) { case 1 : - // InternalSolverLanguageParser.g:8972:3: rule__Real__Group_1__0 + // InternalSolverLanguageParser.g:10459:2: rule__ExternPredicateDeclaration__UnorderedGroup_1__1 { pushFollow(FOLLOW_2); - rule__Real__Group_1__0(); + rule__ExternPredicateDeclaration__UnorderedGroup_1__1(); state._fsp--; @@ -27553,10 +32053,6 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } break; - } - - after(grammarAccess.getRealAccess().getGroup_1()); - } @@ -27574,26 +32070,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Real__Group__1__Impl" + // $ANTLR end "rule__ExternPredicateDeclaration__UnorderedGroup_1__0" - // $ANTLR start "rule__Real__Group_1__0" - // InternalSolverLanguageParser.g:8981:1: rule__Real__Group_1__0 : rule__Real__Group_1__0__Impl rule__Real__Group_1__1 ; - public final void rule__Real__Group_1__0() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__UnorderedGroup_1__1" + // InternalSolverLanguageParser.g:10465:1: rule__ExternPredicateDeclaration__UnorderedGroup_1__1 : rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl ; + public final void rule__ExternPredicateDeclaration__UnorderedGroup_1__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:8985:1: ( rule__Real__Group_1__0__Impl rule__Real__Group_1__1 ) - // InternalSolverLanguageParser.g:8986:2: rule__Real__Group_1__0__Impl rule__Real__Group_1__1 + // InternalSolverLanguageParser.g:10469:1: ( rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl ) + // InternalSolverLanguageParser.g:10470:2: rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl { - pushFollow(FOLLOW_59); - rule__Real__Group_1__0__Impl(); - - state._fsp--; - pushFollow(FOLLOW_2); - rule__Real__Group_1__1(); + rule__ExternPredicateDeclaration__UnorderedGroup_1__Impl(); state._fsp--; @@ -27612,25 +32103,42 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Real__Group_1__0" + // $ANTLR end "rule__ExternPredicateDeclaration__UnorderedGroup_1__1" - // $ANTLR start "rule__Real__Group_1__0__Impl" - // InternalSolverLanguageParser.g:8993:1: rule__Real__Group_1__0__Impl : ( FullStop ) ; - public final void rule__Real__Group_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__UnorderedGroup_0" + // InternalSolverLanguageParser.g:10477:1: rule__ClassDeclaration__UnorderedGroup_0 : ( rule__ClassDeclaration__UnorderedGroup_0__0 )? ; + public final void rule__ClassDeclaration__UnorderedGroup_0() throws RecognitionException { int stackSize = keepStackSize(); + getUnorderedGroupHelper().enter(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); try { - // InternalSolverLanguageParser.g:8997:1: ( ( FullStop ) ) - // InternalSolverLanguageParser.g:8998:1: ( FullStop ) + // InternalSolverLanguageParser.g:10482:1: ( ( rule__ClassDeclaration__UnorderedGroup_0__0 )? ) + // InternalSolverLanguageParser.g:10483:2: ( rule__ClassDeclaration__UnorderedGroup_0__0 )? { - // InternalSolverLanguageParser.g:8998:1: ( FullStop ) - // InternalSolverLanguageParser.g:8999:2: FullStop - { - before(grammarAccess.getRealAccess().getFullStopKeyword_1_0()); - match(input,FullStop,FOLLOW_2); - after(grammarAccess.getRealAccess().getFullStopKeyword_1_0()); + // InternalSolverLanguageParser.g:10483:2: ( rule__ClassDeclaration__UnorderedGroup_0__0 )? + int alt72=2; + int LA72_0 = input.LA(1); + + if ( LA72_0 == Abstract && getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0) ) { + alt72=1; + } + else if ( LA72_0 == Root && getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1) ) { + alt72=1; + } + switch (alt72) { + case 1 : + // InternalSolverLanguageParser.g:10483:2: rule__ClassDeclaration__UnorderedGroup_0__0 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__UnorderedGroup_0__0(); + + state._fsp--; + + + } + break; } @@ -27644,63 +32152,135 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } finally { + getUnorderedGroupHelper().leave(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); restoreStackSize(stackSize); } return ; } - // $ANTLR end "rule__Real__Group_1__0__Impl" + // $ANTLR end "rule__ClassDeclaration__UnorderedGroup_0" - // $ANTLR start "rule__Real__Group_1__1" - // InternalSolverLanguageParser.g:9008:1: rule__Real__Group_1__1 : rule__Real__Group_1__1__Impl ; - public final void rule__Real__Group_1__1() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__UnorderedGroup_0__Impl" + // InternalSolverLanguageParser.g:10491:1: rule__ClassDeclaration__UnorderedGroup_0__Impl : ( ({...}? => ( ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) ) ) | ({...}? => ( ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) ) ) ) ; + public final void rule__ClassDeclaration__UnorderedGroup_0__Impl() throws RecognitionException { int stackSize = keepStackSize(); + boolean selected = false; try { - // InternalSolverLanguageParser.g:9012:1: ( rule__Real__Group_1__1__Impl ) - // InternalSolverLanguageParser.g:9013:2: rule__Real__Group_1__1__Impl + // InternalSolverLanguageParser.g:10496:1: ( ( ({...}? => ( ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) ) ) | ({...}? => ( ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) ) ) ) ) + // InternalSolverLanguageParser.g:10497:3: ( ({...}? => ( ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) ) ) | ({...}? => ( ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) ) ) ) { - pushFollow(FOLLOW_2); - rule__Real__Group_1__1__Impl(); - - state._fsp--; + // InternalSolverLanguageParser.g:10497:3: ( ({...}? => ( ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) ) ) | ({...}? => ( ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) ) ) ) + int alt73=2; + int LA73_0 = input.LA(1); + if ( LA73_0 == Abstract && getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0) ) { + alt73=1; + } + else if ( LA73_0 == Root && getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1) ) { + alt73=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 73, 0, input); + throw nvae; } + switch (alt73) { + case 1 : + // InternalSolverLanguageParser.g:10498:3: ({...}? => ( ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) ) ) + { + // InternalSolverLanguageParser.g:10498:3: ({...}? => ( ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) ) ) + // InternalSolverLanguageParser.g:10499:4: {...}? => ( ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0) ) { + throw new FailedPredicateException(input, "rule__ClassDeclaration__UnorderedGroup_0__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0)"); + } + // InternalSolverLanguageParser.g:10499:112: ( ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) ) + // InternalSolverLanguageParser.g:10500:5: ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) + { - } - catch (RecognitionException re) { - reportError(re); - recover(input,re); - } - finally { + getUnorderedGroupHelper().select(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0); + - restoreStackSize(stackSize); + selected = true; + + // InternalSolverLanguageParser.g:10506:5: ( ( rule__ClassDeclaration__AbstractAssignment_0_0 ) ) + // InternalSolverLanguageParser.g:10507:6: ( rule__ClassDeclaration__AbstractAssignment_0_0 ) + { + before(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0_0()); + // InternalSolverLanguageParser.g:10508:6: ( rule__ClassDeclaration__AbstractAssignment_0_0 ) + // InternalSolverLanguageParser.g:10508:7: rule__ClassDeclaration__AbstractAssignment_0_0 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__AbstractAssignment_0_0(); - } - return ; - } - // $ANTLR end "rule__Real__Group_1__1" + state._fsp--; - // $ANTLR start "rule__Real__Group_1__1__Impl" - // InternalSolverLanguageParser.g:9019:1: rule__Real__Group_1__1__Impl : ( RULE_INT ) ; - public final void rule__Real__Group_1__1__Impl() throws RecognitionException { + } - int stackSize = keepStackSize(); - - try { - // InternalSolverLanguageParser.g:9023:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:9024:1: ( RULE_INT ) - { - // InternalSolverLanguageParser.g:9024:1: ( RULE_INT ) - // InternalSolverLanguageParser.g:9025:2: RULE_INT - { - before(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1()); - match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1()); + after(grammarAccess.getClassDeclarationAccess().getAbstractAssignment_0_0()); + + } + + + } + + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:10513:3: ({...}? => ( ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) ) ) + { + // InternalSolverLanguageParser.g:10513:3: ({...}? => ( ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) ) ) + // InternalSolverLanguageParser.g:10514:4: {...}? => ( ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1) ) { + throw new FailedPredicateException(input, "rule__ClassDeclaration__UnorderedGroup_0__Impl", "getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1)"); + } + // InternalSolverLanguageParser.g:10514:112: ( ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) ) + // InternalSolverLanguageParser.g:10515:5: ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) + { + + getUnorderedGroupHelper().select(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1); + + + selected = true; + + // InternalSolverLanguageParser.g:10521:5: ( ( rule__ClassDeclaration__RootAssignment_0_1 ) ) + // InternalSolverLanguageParser.g:10522:6: ( rule__ClassDeclaration__RootAssignment_0_1 ) + { + before(grammarAccess.getClassDeclarationAccess().getRootAssignment_0_1()); + // InternalSolverLanguageParser.g:10523:6: ( rule__ClassDeclaration__RootAssignment_0_1 ) + // InternalSolverLanguageParser.g:10523:7: rule__ClassDeclaration__RootAssignment_0_1 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__RootAssignment_0_1(); + + state._fsp--; + + + } + + after(grammarAccess.getClassDeclarationAccess().getRootAssignment_0_1()); + + } + + + } + + + } + + + } + break; } @@ -27714,33 +32294,55 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } finally { + if (selected) + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); restoreStackSize(stackSize); } return ; } - // $ANTLR end "rule__Real__Group_1__1__Impl" + // $ANTLR end "rule__ClassDeclaration__UnorderedGroup_0__Impl" - // $ANTLR start "rule__QualifiedName__Group_0__0" - // InternalSolverLanguageParser.g:9035:1: rule__QualifiedName__Group_0__0 : rule__QualifiedName__Group_0__0__Impl rule__QualifiedName__Group_0__1 ; - public final void rule__QualifiedName__Group_0__0() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__UnorderedGroup_0__0" + // InternalSolverLanguageParser.g:10536:1: rule__ClassDeclaration__UnorderedGroup_0__0 : rule__ClassDeclaration__UnorderedGroup_0__Impl ( rule__ClassDeclaration__UnorderedGroup_0__1 )? ; + public final void rule__ClassDeclaration__UnorderedGroup_0__0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9039:1: ( rule__QualifiedName__Group_0__0__Impl rule__QualifiedName__Group_0__1 ) - // InternalSolverLanguageParser.g:9040:2: rule__QualifiedName__Group_0__0__Impl rule__QualifiedName__Group_0__1 + // InternalSolverLanguageParser.g:10540:1: ( rule__ClassDeclaration__UnorderedGroup_0__Impl ( rule__ClassDeclaration__UnorderedGroup_0__1 )? ) + // InternalSolverLanguageParser.g:10541:2: rule__ClassDeclaration__UnorderedGroup_0__Impl ( rule__ClassDeclaration__UnorderedGroup_0__1 )? { - pushFollow(FOLLOW_64); - rule__QualifiedName__Group_0__0__Impl(); + pushFollow(FOLLOW_76); + rule__ClassDeclaration__UnorderedGroup_0__Impl(); state._fsp--; - pushFollow(FOLLOW_2); - rule__QualifiedName__Group_0__1(); + // InternalSolverLanguageParser.g:10542:2: ( rule__ClassDeclaration__UnorderedGroup_0__1 )? + int alt74=2; + int LA74_0 = input.LA(1); - state._fsp--; + if ( LA74_0 == Abstract && getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0) ) { + alt74=1; + } + else if ( LA74_0 == Root && getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1) ) { + alt74=1; + } + switch (alt74) { + case 1 : + // InternalSolverLanguageParser.g:10542:2: rule__ClassDeclaration__UnorderedGroup_0__1 + { + pushFollow(FOLLOW_2); + rule__ClassDeclaration__UnorderedGroup_0__1(); + + state._fsp--; + + + } + break; + + } } @@ -27757,27 +32359,23 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Group_0__0" + // $ANTLR end "rule__ClassDeclaration__UnorderedGroup_0__0" - // $ANTLR start "rule__QualifiedName__Group_0__0__Impl" - // InternalSolverLanguageParser.g:9047:1: rule__QualifiedName__Group_0__0__Impl : ( RULE_ID ) ; - public final void rule__QualifiedName__Group_0__0__Impl() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__UnorderedGroup_0__1" + // InternalSolverLanguageParser.g:10548:1: rule__ClassDeclaration__UnorderedGroup_0__1 : rule__ClassDeclaration__UnorderedGroup_0__Impl ; + public final void rule__ClassDeclaration__UnorderedGroup_0__1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9051:1: ( ( RULE_ID ) ) - // InternalSolverLanguageParser.g:9052:1: ( RULE_ID ) + // InternalSolverLanguageParser.g:10552:1: ( rule__ClassDeclaration__UnorderedGroup_0__Impl ) + // InternalSolverLanguageParser.g:10553:2: rule__ClassDeclaration__UnorderedGroup_0__Impl { - // InternalSolverLanguageParser.g:9052:1: ( RULE_ID ) - // InternalSolverLanguageParser.g:9053:2: RULE_ID - { - before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_0()); - match(input,RULE_ID,FOLLOW_2); - after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_0()); + pushFollow(FOLLOW_2); + rule__ClassDeclaration__UnorderedGroup_0__Impl(); - } + state._fsp--; } @@ -27794,24 +32392,32 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Group_0__0__Impl" + // $ANTLR end "rule__ClassDeclaration__UnorderedGroup_0__1" - // $ANTLR start "rule__QualifiedName__Group_0__1" - // InternalSolverLanguageParser.g:9062:1: rule__QualifiedName__Group_0__1 : rule__QualifiedName__Group_0__1__Impl ; - public final void rule__QualifiedName__Group_0__1() throws RecognitionException { + // $ANTLR start "rule__Problem__NameAssignment_0_1" + // InternalSolverLanguageParser.g:10560:1: rule__Problem__NameAssignment_0_1 : ( ruleQualifiedName ) ; + public final void rule__Problem__NameAssignment_0_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9066:1: ( rule__QualifiedName__Group_0__1__Impl ) - // InternalSolverLanguageParser.g:9067:2: rule__QualifiedName__Group_0__1__Impl + // InternalSolverLanguageParser.g:10564:1: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:10565:2: ( ruleQualifiedName ) + { + // InternalSolverLanguageParser.g:10565:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10566:3: ruleQualifiedName { + before(grammarAccess.getProblemAccess().getNameQualifiedNameParserRuleCall_0_1_0()); pushFollow(FOLLOW_2); - rule__QualifiedName__Group_0__1__Impl(); + ruleQualifiedName(); state._fsp--; + after(grammarAccess.getProblemAccess().getNameQualifiedNameParserRuleCall_0_1_0()); + + } + } @@ -27827,53 +32433,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Group_0__1" + // $ANTLR end "rule__Problem__NameAssignment_0_1" - // $ANTLR start "rule__QualifiedName__Group_0__1__Impl" - // InternalSolverLanguageParser.g:9073:1: rule__QualifiedName__Group_0__1__Impl : ( ( rule__QualifiedName__Group_0_1__0 )* ) ; - public final void rule__QualifiedName__Group_0__1__Impl() throws RecognitionException { + // $ANTLR start "rule__Problem__ImportsAssignment_1" + // InternalSolverLanguageParser.g:10575:1: rule__Problem__ImportsAssignment_1 : ( ruleImport ) ; + public final void rule__Problem__ImportsAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9077:1: ( ( ( rule__QualifiedName__Group_0_1__0 )* ) ) - // InternalSolverLanguageParser.g:9078:1: ( ( rule__QualifiedName__Group_0_1__0 )* ) + // InternalSolverLanguageParser.g:10579:1: ( ( ruleImport ) ) + // InternalSolverLanguageParser.g:10580:2: ( ruleImport ) { - // InternalSolverLanguageParser.g:9078:1: ( ( rule__QualifiedName__Group_0_1__0 )* ) - // InternalSolverLanguageParser.g:9079:2: ( rule__QualifiedName__Group_0_1__0 )* + // InternalSolverLanguageParser.g:10580:2: ( ruleImport ) + // InternalSolverLanguageParser.g:10581:3: ruleImport { - before(grammarAccess.getQualifiedNameAccess().getGroup_0_1()); - // InternalSolverLanguageParser.g:9080:2: ( rule__QualifiedName__Group_0_1__0 )* - loop62: - do { - int alt62=2; - int LA62_0 = input.LA(1); - - if ( (LA62_0==FullStop) ) { - alt62=1; - } - - - switch (alt62) { - case 1 : - // InternalSolverLanguageParser.g:9080:3: rule__QualifiedName__Group_0_1__0 - { - pushFollow(FOLLOW_65); - rule__QualifiedName__Group_0_1__0(); - - state._fsp--; - - - } - break; + before(grammarAccess.getProblemAccess().getImportsImportParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleImport(); - default : - break loop62; - } - } while (true); + state._fsp--; - after(grammarAccess.getQualifiedNameAccess().getGroup_0_1()); + after(grammarAccess.getProblemAccess().getImportsImportParserRuleCall_1_0()); } @@ -27892,28 +32474,31 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Group_0__1__Impl" + // $ANTLR end "rule__Problem__ImportsAssignment_1" - // $ANTLR start "rule__QualifiedName__Group_0_1__0" - // InternalSolverLanguageParser.g:9089:1: rule__QualifiedName__Group_0_1__0 : rule__QualifiedName__Group_0_1__0__Impl rule__QualifiedName__Group_0_1__1 ; - public final void rule__QualifiedName__Group_0_1__0() throws RecognitionException { + // $ANTLR start "rule__Problem__StatementsAssignment_2" + // InternalSolverLanguageParser.g:10590:1: rule__Problem__StatementsAssignment_2 : ( ruleStatement ) ; + public final void rule__Problem__StatementsAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9093:1: ( rule__QualifiedName__Group_0_1__0__Impl rule__QualifiedName__Group_0_1__1 ) - // InternalSolverLanguageParser.g:9094:2: rule__QualifiedName__Group_0_1__0__Impl rule__QualifiedName__Group_0_1__1 + // InternalSolverLanguageParser.g:10594:1: ( ( ruleStatement ) ) + // InternalSolverLanguageParser.g:10595:2: ( ruleStatement ) { - pushFollow(FOLLOW_21); - rule__QualifiedName__Group_0_1__0__Impl(); + // InternalSolverLanguageParser.g:10595:2: ( ruleStatement ) + // InternalSolverLanguageParser.g:10596:3: ruleStatement + { + before(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_2_0()); + pushFollow(FOLLOW_2); + ruleStatement(); state._fsp--; - pushFollow(FOLLOW_2); - rule__QualifiedName__Group_0_1__1(); + after(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_2_0()); - state._fsp--; + } } @@ -27930,25 +32515,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Group_0_1__0" + // $ANTLR end "rule__Problem__StatementsAssignment_2" - // $ANTLR start "rule__QualifiedName__Group_0_1__0__Impl" - // InternalSolverLanguageParser.g:9101:1: rule__QualifiedName__Group_0_1__0__Impl : ( FullStop ) ; - public final void rule__QualifiedName__Group_0_1__0__Impl() throws RecognitionException { + // $ANTLR start "rule__UriImport__UriAssignment_1" + // InternalSolverLanguageParser.g:10605:1: rule__UriImport__UriAssignment_1 : ( RULE_STRING ) ; + public final void rule__UriImport__UriAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9105:1: ( ( FullStop ) ) - // InternalSolverLanguageParser.g:9106:1: ( FullStop ) + // InternalSolverLanguageParser.g:10609:1: ( ( RULE_STRING ) ) + // InternalSolverLanguageParser.g:10610:2: ( RULE_STRING ) { - // InternalSolverLanguageParser.g:9106:1: ( FullStop ) - // InternalSolverLanguageParser.g:9107:2: FullStop + // InternalSolverLanguageParser.g:10610:2: ( RULE_STRING ) + // InternalSolverLanguageParser.g:10611:3: RULE_STRING { - before(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_0_1_0()); - match(input,FullStop,FOLLOW_2); - after(grammarAccess.getQualifiedNameAccess().getFullStopKeyword_0_1_0()); + before(grammarAccess.getUriImportAccess().getUriSTRINGTerminalRuleCall_1_0()); + match(input,RULE_STRING,FOLLOW_2); + after(grammarAccess.getUriImportAccess().getUriSTRINGTerminalRuleCall_1_0()); } @@ -27967,24 +32552,32 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Group_0_1__0__Impl" + // $ANTLR end "rule__UriImport__UriAssignment_1" - // $ANTLR start "rule__QualifiedName__Group_0_1__1" - // InternalSolverLanguageParser.g:9116:1: rule__QualifiedName__Group_0_1__1 : rule__QualifiedName__Group_0_1__1__Impl ; - public final void rule__QualifiedName__Group_0_1__1() throws RecognitionException { + // $ANTLR start "rule__UriImport__AliasAssignment_2_1" + // InternalSolverLanguageParser.g:10620:1: rule__UriImport__AliasAssignment_2_1 : ( ruleQualifiedName ) ; + public final void rule__UriImport__AliasAssignment_2_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9120:1: ( rule__QualifiedName__Group_0_1__1__Impl ) - // InternalSolverLanguageParser.g:9121:2: rule__QualifiedName__Group_0_1__1__Impl + // InternalSolverLanguageParser.g:10624:1: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:10625:2: ( ruleQualifiedName ) + { + // InternalSolverLanguageParser.g:10625:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10626:3: ruleQualifiedName { + before(grammarAccess.getUriImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); pushFollow(FOLLOW_2); - rule__QualifiedName__Group_0_1__1__Impl(); + ruleQualifiedName(); state._fsp--; + after(grammarAccess.getUriImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); + + } + } @@ -28000,25 +32593,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Group_0_1__1" + // $ANTLR end "rule__UriImport__AliasAssignment_2_1" - // $ANTLR start "rule__QualifiedName__Group_0_1__1__Impl" - // InternalSolverLanguageParser.g:9127:1: rule__QualifiedName__Group_0_1__1__Impl : ( RULE_ID ) ; - public final void rule__QualifiedName__Group_0_1__1__Impl() throws RecognitionException { + // $ANTLR start "rule__NamespaceImport__ImportedNamespaceAssignment_1" + // InternalSolverLanguageParser.g:10635:1: rule__NamespaceImport__ImportedNamespaceAssignment_1 : ( ruleQualifiedName ) ; + public final void rule__NamespaceImport__ImportedNamespaceAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9131:1: ( ( RULE_ID ) ) - // InternalSolverLanguageParser.g:9132:1: ( RULE_ID ) + // InternalSolverLanguageParser.g:10639:1: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:10640:2: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:9132:1: ( RULE_ID ) - // InternalSolverLanguageParser.g:9133:2: RULE_ID + // InternalSolverLanguageParser.g:10640:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10641:3: ruleQualifiedName { - before(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_1_1()); - match(input,RULE_ID,FOLLOW_2); - after(grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_1_1()); + before(grammarAccess.getNamespaceImportAccess().getImportedNamespaceQualifiedNameParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleQualifiedName(); + + state._fsp--; + + after(grammarAccess.getNamespaceImportAccess().getImportedNamespaceQualifiedNameParserRuleCall_1_0()); } @@ -28037,29 +32634,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QualifiedName__Group_0_1__1__Impl" + // $ANTLR end "rule__NamespaceImport__ImportedNamespaceAssignment_1" - // $ANTLR start "rule__Problem__StatementsAssignment" - // InternalSolverLanguageParser.g:9143:1: rule__Problem__StatementsAssignment : ( ruleStatement ) ; - public final void rule__Problem__StatementsAssignment() throws RecognitionException { + // $ANTLR start "rule__NamespaceImport__AliasAssignment_2_1" + // InternalSolverLanguageParser.g:10650:1: rule__NamespaceImport__AliasAssignment_2_1 : ( ruleQualifiedName ) ; + public final void rule__NamespaceImport__AliasAssignment_2_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9147:1: ( ( ruleStatement ) ) - // InternalSolverLanguageParser.g:9148:2: ( ruleStatement ) + // InternalSolverLanguageParser.g:10654:1: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:10655:2: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:9148:2: ( ruleStatement ) - // InternalSolverLanguageParser.g:9149:3: ruleStatement + // InternalSolverLanguageParser.g:10655:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10656:3: ruleQualifiedName { - before(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0()); + before(grammarAccess.getNamespaceImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); pushFollow(FOLLOW_2); - ruleStatement(); + ruleQualifiedName(); state._fsp--; - after(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0()); + after(grammarAccess.getNamespaceImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); } @@ -28078,29 +32675,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Problem__StatementsAssignment" + // $ANTLR end "rule__NamespaceImport__AliasAssignment_2_1" - // $ANTLR start "rule__AssertionOrDefinition__RangeAssignment_1_0_2" - // InternalSolverLanguageParser.g:9158:1: rule__AssertionOrDefinition__RangeAssignment_1_0_2 : ( ruleExpression ) ; - public final void rule__AssertionOrDefinition__RangeAssignment_1_0_2() throws RecognitionException { + // $ANTLR start "rule__AssertionOrDefinition__RangeAssignment_1_0_1_1" + // InternalSolverLanguageParser.g:10665:1: rule__AssertionOrDefinition__RangeAssignment_1_0_1_1 : ( ruleExpression ) ; + public final void rule__AssertionOrDefinition__RangeAssignment_1_0_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9162:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9163:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10669:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:10670:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9163:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9164:3: ruleExpression + // InternalSolverLanguageParser.g:10670:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10671:3: ruleExpression { - before(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0()); + before(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0()); pushFollow(FOLLOW_2); ruleExpression(); state._fsp--; - after(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0()); + after(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0()); } @@ -28119,21 +32716,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__AssertionOrDefinition__RangeAssignment_1_0_2" + // $ANTLR end "rule__AssertionOrDefinition__RangeAssignment_1_0_1_1" // $ANTLR start "rule__AssertionOrDefinition__BodyAssignment_1_1_2" - // InternalSolverLanguageParser.g:9173:1: rule__AssertionOrDefinition__BodyAssignment_1_1_2 : ( ruleExpression ) ; + // InternalSolverLanguageParser.g:10680:1: rule__AssertionOrDefinition__BodyAssignment_1_1_2 : ( ruleExpression ) ; public final void rule__AssertionOrDefinition__BodyAssignment_1_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9177:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9178:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10684:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:10685:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9178:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9179:3: ruleExpression + // InternalSolverLanguageParser.g:10685:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10686:3: ruleExpression { before(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_1_2_0()); pushFollow(FOLLOW_2); @@ -28164,17 +32761,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__AssertionOrDefinition__BodyAssignment_1_2_2" - // InternalSolverLanguageParser.g:9188:1: rule__AssertionOrDefinition__BodyAssignment_1_2_2 : ( ruleExpression ) ; + // InternalSolverLanguageParser.g:10695:1: rule__AssertionOrDefinition__BodyAssignment_1_2_2 : ( ruleExpression ) ; public final void rule__AssertionOrDefinition__BodyAssignment_1_2_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9192:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9193:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10699:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:10700:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9193:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9194:3: ruleExpression + // InternalSolverLanguageParser.g:10700:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10701:3: ruleExpression { before(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_2_2_0()); pushFollow(FOLLOW_2); @@ -28205,21 +32802,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__PredicateDefinition__FunctionalAssignment_0_0_0" - // InternalSolverLanguageParser.g:9203:1: rule__PredicateDefinition__FunctionalAssignment_0_0_0 : ( ( Functional ) ) ; + // InternalSolverLanguageParser.g:10710:1: rule__PredicateDefinition__FunctionalAssignment_0_0_0 : ( ( Functional ) ) ; public final void rule__PredicateDefinition__FunctionalAssignment_0_0_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9207:1: ( ( ( Functional ) ) ) - // InternalSolverLanguageParser.g:9208:2: ( ( Functional ) ) + // InternalSolverLanguageParser.g:10714:1: ( ( ( Functional ) ) ) + // InternalSolverLanguageParser.g:10715:2: ( ( Functional ) ) { - // InternalSolverLanguageParser.g:9208:2: ( ( Functional ) ) - // InternalSolverLanguageParser.g:9209:3: ( Functional ) + // InternalSolverLanguageParser.g:10715:2: ( ( Functional ) ) + // InternalSolverLanguageParser.g:10716:3: ( Functional ) { before(grammarAccess.getPredicateDefinitionAccess().getFunctionalFunctionalKeyword_0_0_0_0()); - // InternalSolverLanguageParser.g:9210:3: ( Functional ) - // InternalSolverLanguageParser.g:9211:4: Functional + // InternalSolverLanguageParser.g:10717:3: ( Functional ) + // InternalSolverLanguageParser.g:10718:4: Functional { before(grammarAccess.getPredicateDefinitionAccess().getFunctionalFunctionalKeyword_0_0_0_0()); match(input,Functional,FOLLOW_2); @@ -28250,21 +32847,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__PredicateDefinition__ErrorAssignment_0_0_1" - // InternalSolverLanguageParser.g:9222:1: rule__PredicateDefinition__ErrorAssignment_0_0_1 : ( ( Error ) ) ; + // InternalSolverLanguageParser.g:10729:1: rule__PredicateDefinition__ErrorAssignment_0_0_1 : ( ( Error ) ) ; public final void rule__PredicateDefinition__ErrorAssignment_0_0_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9226:1: ( ( ( Error ) ) ) - // InternalSolverLanguageParser.g:9227:2: ( ( Error ) ) + // InternalSolverLanguageParser.g:10733:1: ( ( ( Error ) ) ) + // InternalSolverLanguageParser.g:10734:2: ( ( Error ) ) { - // InternalSolverLanguageParser.g:9227:2: ( ( Error ) ) - // InternalSolverLanguageParser.g:9228:3: ( Error ) + // InternalSolverLanguageParser.g:10734:2: ( ( Error ) ) + // InternalSolverLanguageParser.g:10735:3: ( Error ) { before(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_1_0()); - // InternalSolverLanguageParser.g:9229:3: ( Error ) - // InternalSolverLanguageParser.g:9230:4: Error + // InternalSolverLanguageParser.g:10736:3: ( Error ) + // InternalSolverLanguageParser.g:10737:4: Error { before(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_1_0()); match(input,Error,FOLLOW_2); @@ -28295,21 +32892,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__PredicateDefinition__ErrorAssignment_0_1_0" - // InternalSolverLanguageParser.g:9241:1: rule__PredicateDefinition__ErrorAssignment_0_1_0 : ( ( Error ) ) ; + // InternalSolverLanguageParser.g:10748:1: rule__PredicateDefinition__ErrorAssignment_0_1_0 : ( ( Error ) ) ; public final void rule__PredicateDefinition__ErrorAssignment_0_1_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9245:1: ( ( ( Error ) ) ) - // InternalSolverLanguageParser.g:9246:2: ( ( Error ) ) + // InternalSolverLanguageParser.g:10752:1: ( ( ( Error ) ) ) + // InternalSolverLanguageParser.g:10753:2: ( ( Error ) ) { - // InternalSolverLanguageParser.g:9246:2: ( ( Error ) ) - // InternalSolverLanguageParser.g:9247:3: ( Error ) + // InternalSolverLanguageParser.g:10753:2: ( ( Error ) ) + // InternalSolverLanguageParser.g:10754:3: ( Error ) { before(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_1_0_0()); - // InternalSolverLanguageParser.g:9248:3: ( Error ) - // InternalSolverLanguageParser.g:9249:4: Error + // InternalSolverLanguageParser.g:10755:3: ( Error ) + // InternalSolverLanguageParser.g:10756:4: Error { before(grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_1_0_0()); match(input,Error,FOLLOW_2); @@ -28340,21 +32937,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__PredicateDefinition__FunctionalAssignment_0_1_1" - // InternalSolverLanguageParser.g:9260:1: rule__PredicateDefinition__FunctionalAssignment_0_1_1 : ( ( Functional ) ) ; + // InternalSolverLanguageParser.g:10767:1: rule__PredicateDefinition__FunctionalAssignment_0_1_1 : ( ( Functional ) ) ; public final void rule__PredicateDefinition__FunctionalAssignment_0_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9264:1: ( ( ( Functional ) ) ) - // InternalSolverLanguageParser.g:9265:2: ( ( Functional ) ) + // InternalSolverLanguageParser.g:10771:1: ( ( ( Functional ) ) ) + // InternalSolverLanguageParser.g:10772:2: ( ( Functional ) ) { - // InternalSolverLanguageParser.g:9265:2: ( ( Functional ) ) - // InternalSolverLanguageParser.g:9266:3: ( Functional ) + // InternalSolverLanguageParser.g:10772:2: ( ( Functional ) ) + // InternalSolverLanguageParser.g:10773:3: ( Functional ) { before(grammarAccess.getPredicateDefinitionAccess().getFunctionalFunctionalKeyword_0_1_1_0()); - // InternalSolverLanguageParser.g:9267:3: ( Functional ) - // InternalSolverLanguageParser.g:9268:4: Functional + // InternalSolverLanguageParser.g:10774:3: ( Functional ) + // InternalSolverLanguageParser.g:10775:4: Functional { before(grammarAccess.getPredicateDefinitionAccess().getFunctionalFunctionalKeyword_0_1_1_0()); match(input,Functional,FOLLOW_2); @@ -28385,17 +32982,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__PredicateDefinition__HeadAssignment_1" - // InternalSolverLanguageParser.g:9279:1: rule__PredicateDefinition__HeadAssignment_1 : ( ruleCall ) ; + // InternalSolverLanguageParser.g:10786:1: rule__PredicateDefinition__HeadAssignment_1 : ( ruleCall ) ; public final void rule__PredicateDefinition__HeadAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9283:1: ( ( ruleCall ) ) - // InternalSolverLanguageParser.g:9284:2: ( ruleCall ) + // InternalSolverLanguageParser.g:10790:1: ( ( ruleCall ) ) + // InternalSolverLanguageParser.g:10791:2: ( ruleCall ) { - // InternalSolverLanguageParser.g:9284:2: ( ruleCall ) - // InternalSolverLanguageParser.g:9285:3: ruleCall + // InternalSolverLanguageParser.g:10791:2: ( ruleCall ) + // InternalSolverLanguageParser.g:10792:3: ruleCall { before(grammarAccess.getPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0()); pushFollow(FOLLOW_2); @@ -28426,17 +33023,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__PredicateDefinition__BodyAssignment_3" - // InternalSolverLanguageParser.g:9294:1: rule__PredicateDefinition__BodyAssignment_3 : ( ruleExpression ) ; + // InternalSolverLanguageParser.g:10801:1: rule__PredicateDefinition__BodyAssignment_3 : ( ruleExpression ) ; public final void rule__PredicateDefinition__BodyAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9298:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9299:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10805:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:10806:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9299:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9300:3: ruleExpression + // InternalSolverLanguageParser.g:10806:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10807:3: ruleExpression { before(grammarAccess.getPredicateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); pushFollow(FOLLOW_2); @@ -28466,26 +33063,26 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__PredicateDefinition__BodyAssignment_3" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1" - // InternalSolverLanguageParser.g:9309:1: rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1 : ( ruleArgumentList ) ; - public final void rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1() throws RecognitionException { + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1" + // InternalSolverLanguageParser.g:10816:1: rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1 : ( ruleArgumentList ) ; + public final void rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9313:1: ( ( ruleArgumentList ) ) - // InternalSolverLanguageParser.g:9314:2: ( ruleArgumentList ) + // InternalSolverLanguageParser.g:10820:1: ( ( ruleArgumentList ) ) + // InternalSolverLanguageParser.g:10821:2: ( ruleArgumentList ) { - // InternalSolverLanguageParser.g:9314:2: ( ruleArgumentList ) - // InternalSolverLanguageParser.g:9315:3: ruleArgumentList + // InternalSolverLanguageParser.g:10821:2: ( ruleArgumentList ) + // InternalSolverLanguageParser.g:10822:3: ruleArgumentList { - before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0()); + before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListArgumentListParserRuleCall_1_0()); pushFollow(FOLLOW_2); ruleArgumentList(); state._fsp--; - after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0()); + after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListArgumentListParserRuleCall_1_0()); } @@ -28504,29 +33101,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__ArgumentListAssignment_1" + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__ArgumentListAssignment_1" - // $ANTLR start "rule__UnnamedErrorPrediateDefinition__BodyAssignment_3" - // InternalSolverLanguageParser.g:9324:1: rule__UnnamedErrorPrediateDefinition__BodyAssignment_3 : ( ruleExpression ) ; - public final void rule__UnnamedErrorPrediateDefinition__BodyAssignment_3() throws RecognitionException { + // $ANTLR start "rule__UnnamedErrorPredicateDefintion__BodyAssignment_3" + // InternalSolverLanguageParser.g:10831:1: rule__UnnamedErrorPredicateDefintion__BodyAssignment_3 : ( ruleExpression ) ; + public final void rule__UnnamedErrorPredicateDefintion__BodyAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9328:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9329:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10835:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:10836:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9329:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9330:3: ruleExpression + // InternalSolverLanguageParser.g:10836:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10837:3: ruleExpression { - before(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + before(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyExpressionParserRuleCall_3_0()); pushFollow(FOLLOW_2); ruleExpression(); state._fsp--; - after(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + after(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyExpressionParserRuleCall_3_0()); } @@ -28545,29 +33142,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__UnnamedErrorPrediateDefinition__BodyAssignment_3" + // $ANTLR end "rule__UnnamedErrorPredicateDefintion__BodyAssignment_3" - // $ANTLR start "rule__DefaultDefinition__HeadAssignment_1" - // InternalSolverLanguageParser.g:9339:1: rule__DefaultDefinition__HeadAssignment_1 : ( ruleCall ) ; - public final void rule__DefaultDefinition__HeadAssignment_1() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__ExpressionAssignment_1" + // InternalSolverLanguageParser.g:10846:1: rule__DefaultAssertion__ExpressionAssignment_1 : ( ruleCall ) ; + public final void rule__DefaultAssertion__ExpressionAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9343:1: ( ( ruleCall ) ) - // InternalSolverLanguageParser.g:9344:2: ( ruleCall ) + // InternalSolverLanguageParser.g:10850:1: ( ( ruleCall ) ) + // InternalSolverLanguageParser.g:10851:2: ( ruleCall ) { - // InternalSolverLanguageParser.g:9344:2: ( ruleCall ) - // InternalSolverLanguageParser.g:9345:3: ruleCall + // InternalSolverLanguageParser.g:10851:2: ( ruleCall ) + // InternalSolverLanguageParser.g:10852:3: ruleCall { - before(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0()); + before(grammarAccess.getDefaultAssertionAccess().getExpressionCallParserRuleCall_1_0()); pushFollow(FOLLOW_2); ruleCall(); state._fsp--; - after(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0()); + after(grammarAccess.getDefaultAssertionAccess().getExpressionCallParserRuleCall_1_0()); } @@ -28586,29 +33183,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__HeadAssignment_1" + // $ANTLR end "rule__DefaultAssertion__ExpressionAssignment_1" - // $ANTLR start "rule__DefaultDefinition__RangeAssignment_3" - // InternalSolverLanguageParser.g:9354:1: rule__DefaultDefinition__RangeAssignment_3 : ( ruleExpression ) ; - public final void rule__DefaultDefinition__RangeAssignment_3() throws RecognitionException { + // $ANTLR start "rule__DefaultAssertion__RangeAssignment_2_1" + // InternalSolverLanguageParser.g:10861:1: rule__DefaultAssertion__RangeAssignment_2_1 : ( ruleExpression ) ; + public final void rule__DefaultAssertion__RangeAssignment_2_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9358:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9359:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10865:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:10866:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9359:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9360:3: ruleExpression + // InternalSolverLanguageParser.g:10866:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10867:3: ruleExpression { - before(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0()); + before(grammarAccess.getDefaultAssertionAccess().getRangeExpressionParserRuleCall_2_1_0()); pushFollow(FOLLOW_2); ruleExpression(); state._fsp--; - after(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0()); + after(grammarAccess.getDefaultAssertionAccess().getRangeExpressionParserRuleCall_2_1_0()); } @@ -28627,37 +33224,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__DefaultDefinition__RangeAssignment_3" + // $ANTLR end "rule__DefaultAssertion__RangeAssignment_2_1" - // $ANTLR start "rule__MetricDefinition__TypeAssignment_0" - // InternalSolverLanguageParser.g:9369:1: rule__MetricDefinition__TypeAssignment_0 : ( ( ruleQualifiedName ) ) ; - public final void rule__MetricDefinition__TypeAssignment_0() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__ResultTypeAssignment_0" + // InternalSolverLanguageParser.g:10876:1: rule__FunctionDefinition__ResultTypeAssignment_0 : ( ( ruleQualifiedName ) ) ; + public final void rule__FunctionDefinition__ResultTypeAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9373:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:9374:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:10880:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:10881:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:9374:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9375:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10881:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:10882:3: ( ruleQualifiedName ) { - before(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0()); - // InternalSolverLanguageParser.g:9376:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9377:4: ruleQualifiedName + before(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolCrossReference_0_0()); + // InternalSolverLanguageParser.g:10883:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10884:4: ruleQualifiedName { - before(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); + before(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolQualifiedNameParserRuleCall_0_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); + after(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolQualifiedNameParserRuleCall_0_0_1()); } - after(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0()); + after(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolCrossReference_0_0()); } @@ -28676,29 +33273,119 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__TypeAssignment_0" + // $ANTLR end "rule__FunctionDefinition__ResultTypeAssignment_0" - // $ANTLR start "rule__MetricDefinition__HeadAssignment_1" - // InternalSolverLanguageParser.g:9388:1: rule__MetricDefinition__HeadAssignment_1 : ( ruleCall ) ; - public final void rule__MetricDefinition__HeadAssignment_1() throws RecognitionException { + // $ANTLR start "rule__FunctionDefinition__HeadAssignment_1" + // InternalSolverLanguageParser.g:10895:1: rule__FunctionDefinition__HeadAssignment_1 : ( ruleCall ) ; + public final void rule__FunctionDefinition__HeadAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9392:1: ( ( ruleCall ) ) - // InternalSolverLanguageParser.g:9393:2: ( ruleCall ) + // InternalSolverLanguageParser.g:10899:1: ( ( ruleCall ) ) + // InternalSolverLanguageParser.g:10900:2: ( ruleCall ) { - // InternalSolverLanguageParser.g:9393:2: ( ruleCall ) - // InternalSolverLanguageParser.g:9394:3: ruleCall + // InternalSolverLanguageParser.g:10900:2: ( ruleCall ) + // InternalSolverLanguageParser.g:10901:3: ruleCall { - before(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0()); + before(grammarAccess.getFunctionDefinitionAccess().getHeadCallParserRuleCall_1_0()); pushFollow(FOLLOW_2); ruleCall(); - state._fsp--; + state._fsp--; + + after(grammarAccess.getFunctionDefinitionAccess().getHeadCallParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinition__HeadAssignment_1" + + + // $ANTLR start "rule__FunctionDefinition__BodyAssignment_3" + // InternalSolverLanguageParser.g:10910:1: rule__FunctionDefinition__BodyAssignment_3 : ( ruleExpression ) ; + public final void rule__FunctionDefinition__BodyAssignment_3() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:10914:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:10915:2: ( ruleExpression ) + { + // InternalSolverLanguageParser.g:10915:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10916:3: ruleExpression + { + before(grammarAccess.getFunctionDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + pushFollow(FOLLOW_2); + ruleExpression(); + + state._fsp--; + + after(grammarAccess.getFunctionDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__FunctionDefinition__BodyAssignment_3" + + + // $ANTLR start "rule__TypeReference__TypeAssignment_0" + // InternalSolverLanguageParser.g:10925:1: rule__TypeReference__TypeAssignment_0 : ( ( ruleQualifiedName ) ) ; + public final void rule__TypeReference__TypeAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:10929:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:10930:2: ( ( ruleQualifiedName ) ) + { + // InternalSolverLanguageParser.g:10930:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:10931:3: ( ruleQualifiedName ) + { + before(grammarAccess.getTypeReferenceAccess().getTypeSymbolCrossReference_0_0()); + // InternalSolverLanguageParser.g:10932:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10933:4: ruleQualifiedName + { + before(grammarAccess.getTypeReferenceAccess().getTypeSymbolQualifiedNameParserRuleCall_0_0_1()); + pushFollow(FOLLOW_2); + ruleQualifiedName(); + + state._fsp--; + + after(grammarAccess.getTypeReferenceAccess().getTypeSymbolQualifiedNameParserRuleCall_0_0_1()); + + } - after(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0()); + after(grammarAccess.getTypeReferenceAccess().getTypeSymbolCrossReference_0_0()); } @@ -28717,29 +33404,33 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__HeadAssignment_1" + // $ANTLR end "rule__TypeReference__TypeAssignment_0" - // $ANTLR start "rule__MetricDefinition__BodyAssignment_3" - // InternalSolverLanguageParser.g:9403:1: rule__MetricDefinition__BodyAssignment_3 : ( ruleExpression ) ; - public final void rule__MetricDefinition__BodyAssignment_3() throws RecognitionException { + // $ANTLR start "rule__TypeReference__ForceObjectTypeAssignment_1" + // InternalSolverLanguageParser.g:10944:1: rule__TypeReference__ForceObjectTypeAssignment_1 : ( ( Object ) ) ; + public final void rule__TypeReference__ForceObjectTypeAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9407:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9408:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:10948:1: ( ( ( Object ) ) ) + // InternalSolverLanguageParser.g:10949:2: ( ( Object ) ) { - // InternalSolverLanguageParser.g:9408:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9409:3: ruleExpression + // InternalSolverLanguageParser.g:10949:2: ( ( Object ) ) + // InternalSolverLanguageParser.g:10950:3: ( Object ) { - before(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); - pushFollow(FOLLOW_2); - ruleExpression(); + before(grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); + // InternalSolverLanguageParser.g:10951:3: ( Object ) + // InternalSolverLanguageParser.g:10952:4: Object + { + before(grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); + match(input,Object,FOLLOW_2); + after(grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); - state._fsp--; + } - after(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + after(grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); } @@ -28758,29 +33449,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MetricDefinition__BodyAssignment_3" + // $ANTLR end "rule__TypeReference__ForceObjectTypeAssignment_1" - // $ANTLR start "rule__ExternPredicateDefinition__NameAssignment_1" - // InternalSolverLanguageParser.g:9418:1: rule__ExternPredicateDefinition__NameAssignment_1 : ( ruleQualifiedName ) ; - public final void rule__ExternPredicateDefinition__NameAssignment_1() throws RecognitionException { + // $ANTLR start "rule__Attribute__KindAssignment_0" + // InternalSolverLanguageParser.g:10963:1: rule__Attribute__KindAssignment_0 : ( ruleAttributeKind ) ; + public final void rule__Attribute__KindAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9422:1: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9423:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10967:1: ( ( ruleAttributeKind ) ) + // InternalSolverLanguageParser.g:10968:2: ( ruleAttributeKind ) { - // InternalSolverLanguageParser.g:9423:2: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9424:3: ruleQualifiedName + // InternalSolverLanguageParser.g:10968:2: ( ruleAttributeKind ) + // InternalSolverLanguageParser.g:10969:3: ruleAttributeKind { - before(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0()); + before(grammarAccess.getAttributeAccess().getKindAttributeKindEnumRuleCall_0_0()); pushFollow(FOLLOW_2); - ruleQualifiedName(); + ruleAttributeKind(); state._fsp--; - after(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0()); + after(grammarAccess.getAttributeAccess().getKindAttributeKindEnumRuleCall_0_0()); } @@ -28799,29 +33490,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternPredicateDefinition__NameAssignment_1" + // $ANTLR end "rule__Attribute__KindAssignment_0" - // $ANTLR start "rule__ExternPredicateDefinition__ArgumentListAssignment_2" - // InternalSolverLanguageParser.g:9433:1: rule__ExternPredicateDefinition__ArgumentListAssignment_2 : ( ruleArgumentList ) ; - public final void rule__ExternPredicateDefinition__ArgumentListAssignment_2() throws RecognitionException { + // $ANTLR start "rule__Attribute__TargetAssignment_1" + // InternalSolverLanguageParser.g:10978:1: rule__Attribute__TargetAssignment_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__Attribute__TargetAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9437:1: ( ( ruleArgumentList ) ) - // InternalSolverLanguageParser.g:9438:2: ( ruleArgumentList ) + // InternalSolverLanguageParser.g:10982:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:10983:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:9438:2: ( ruleArgumentList ) - // InternalSolverLanguageParser.g:9439:3: ruleArgumentList + // InternalSolverLanguageParser.g:10983:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:10984:3: ( ruleQualifiedName ) { - before(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0()); + before(grammarAccess.getAttributeAccess().getTargetSymbolCrossReference_1_0()); + // InternalSolverLanguageParser.g:10985:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:10986:4: ruleQualifiedName + { + before(grammarAccess.getAttributeAccess().getTargetSymbolQualifiedNameParserRuleCall_1_0_1()); pushFollow(FOLLOW_2); - ruleArgumentList(); + ruleQualifiedName(); state._fsp--; - after(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0()); + after(grammarAccess.getAttributeAccess().getTargetSymbolQualifiedNameParserRuleCall_1_0_1()); + + } + + after(grammarAccess.getAttributeAccess().getTargetSymbolCrossReference_1_0()); } @@ -28840,37 +33539,33 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternPredicateDefinition__ArgumentListAssignment_2" + // $ANTLR end "rule__Attribute__TargetAssignment_1" - // $ANTLR start "rule__ExternMetricDefinition__TypeAssignment_1" - // InternalSolverLanguageParser.g:9448:1: rule__ExternMetricDefinition__TypeAssignment_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__ExternMetricDefinition__TypeAssignment_1() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__FunctionalAssignment_1_0" + // InternalSolverLanguageParser.g:10997:1: rule__ExternPredicateDeclaration__FunctionalAssignment_1_0 : ( ( Functional ) ) ; + public final void rule__ExternPredicateDeclaration__FunctionalAssignment_1_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9452:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:9453:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11001:1: ( ( ( Functional ) ) ) + // InternalSolverLanguageParser.g:11002:2: ( ( Functional ) ) { - // InternalSolverLanguageParser.g:9453:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9454:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11002:2: ( ( Functional ) ) + // InternalSolverLanguageParser.g:11003:3: ( Functional ) { - before(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0()); - // InternalSolverLanguageParser.g:9455:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9456:4: ruleQualifiedName + before(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); + // InternalSolverLanguageParser.g:11004:3: ( Functional ) + // InternalSolverLanguageParser.g:11005:4: Functional { - before(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); - pushFollow(FOLLOW_2); - ruleQualifiedName(); - - state._fsp--; - - after(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); + before(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); + match(input,Functional,FOLLOW_2); + after(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); } - after(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + after(grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); } @@ -28889,29 +33584,33 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__TypeAssignment_1" + // $ANTLR end "rule__ExternPredicateDeclaration__FunctionalAssignment_1_0" - // $ANTLR start "rule__ExternMetricDefinition__NameAssignment_2" - // InternalSolverLanguageParser.g:9467:1: rule__ExternMetricDefinition__NameAssignment_2 : ( ruleQualifiedName ) ; - public final void rule__ExternMetricDefinition__NameAssignment_2() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__ErrorAssignment_1_1" + // InternalSolverLanguageParser.g:11016:1: rule__ExternPredicateDeclaration__ErrorAssignment_1_1 : ( ( Error ) ) ; + public final void rule__ExternPredicateDeclaration__ErrorAssignment_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9471:1: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9472:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11020:1: ( ( ( Error ) ) ) + // InternalSolverLanguageParser.g:11021:2: ( ( Error ) ) { - // InternalSolverLanguageParser.g:9472:2: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9473:3: ruleQualifiedName + // InternalSolverLanguageParser.g:11021:2: ( ( Error ) ) + // InternalSolverLanguageParser.g:11022:3: ( Error ) { - before(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); - pushFollow(FOLLOW_2); - ruleQualifiedName(); + before(grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); + // InternalSolverLanguageParser.g:11023:3: ( Error ) + // InternalSolverLanguageParser.g:11024:4: Error + { + before(grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); + match(input,Error,FOLLOW_2); + after(grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); - state._fsp--; + } - after(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + after(grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); } @@ -28930,29 +33629,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__NameAssignment_2" + // $ANTLR end "rule__ExternPredicateDeclaration__ErrorAssignment_1_1" - // $ANTLR start "rule__ExternMetricDefinition__ArgumentListAssignment_3" - // InternalSolverLanguageParser.g:9482:1: rule__ExternMetricDefinition__ArgumentListAssignment_3 : ( ruleArgumentList ) ; - public final void rule__ExternMetricDefinition__ArgumentListAssignment_3() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__NameAssignment_2" + // InternalSolverLanguageParser.g:11035:1: rule__ExternPredicateDeclaration__NameAssignment_2 : ( ruleQualifiedName ) ; + public final void rule__ExternPredicateDeclaration__NameAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9486:1: ( ( ruleArgumentList ) ) - // InternalSolverLanguageParser.g:9487:2: ( ruleArgumentList ) + // InternalSolverLanguageParser.g:11039:1: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11040:2: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:9487:2: ( ruleArgumentList ) - // InternalSolverLanguageParser.g:9488:3: ruleArgumentList + // InternalSolverLanguageParser.g:11040:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11041:3: ruleQualifiedName { - before(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0()); + before(grammarAccess.getExternPredicateDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); pushFollow(FOLLOW_2); - ruleArgumentList(); + ruleQualifiedName(); state._fsp--; - after(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0()); + after(grammarAccess.getExternPredicateDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } @@ -28971,37 +33670,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternMetricDefinition__ArgumentListAssignment_3" + // $ANTLR end "rule__ExternPredicateDeclaration__NameAssignment_2" - // $ANTLR start "rule__ExternAggregatorDefinition__TypeAssignment_1" - // InternalSolverLanguageParser.g:9497:1: rule__ExternAggregatorDefinition__TypeAssignment_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__ExternAggregatorDefinition__TypeAssignment_1() throws RecognitionException { + // $ANTLR start "rule__ExternPredicateDeclaration__ArgumentListAssignment_3" + // InternalSolverLanguageParser.g:11050:1: rule__ExternPredicateDeclaration__ArgumentListAssignment_3 : ( ruleArgumentList ) ; + public final void rule__ExternPredicateDeclaration__ArgumentListAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9501:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:9502:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11054:1: ( ( ruleArgumentList ) ) + // InternalSolverLanguageParser.g:11055:2: ( ruleArgumentList ) { - // InternalSolverLanguageParser.g:9502:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9503:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11055:2: ( ruleArgumentList ) + // InternalSolverLanguageParser.g:11056:3: ruleArgumentList { - before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0()); - // InternalSolverLanguageParser.g:9504:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9505:4: ruleQualifiedName - { - before(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); + before(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); pushFollow(FOLLOW_2); - ruleQualifiedName(); + ruleArgumentList(); state._fsp--; - after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); - - } - - after(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + after(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); } @@ -29020,29 +33711,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__TypeAssignment_1" + // $ANTLR end "rule__ExternPredicateDeclaration__ArgumentListAssignment_3" - // $ANTLR start "rule__ExternAggregatorDefinition__NameAssignment_2" - // InternalSolverLanguageParser.g:9516:1: rule__ExternAggregatorDefinition__NameAssignment_2 : ( ruleQualifiedName ) ; - public final void rule__ExternAggregatorDefinition__NameAssignment_2() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__ResultTypeAssignment_1" + // InternalSolverLanguageParser.g:11065:1: rule__ExternFunctionDeclaration__ResultTypeAssignment_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__ExternFunctionDeclaration__ResultTypeAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9520:1: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9521:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11069:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:11070:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:9521:2: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9522:3: ruleQualifiedName + // InternalSolverLanguageParser.g:11070:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11071:3: ( ruleQualifiedName ) { - before(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + before(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); + // InternalSolverLanguageParser.g:11072:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11073:4: ruleQualifiedName + { + before(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + after(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1()); + + } + + after(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); } @@ -29061,37 +33760,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__NameAssignment_2" + // $ANTLR end "rule__ExternFunctionDeclaration__ResultTypeAssignment_1" - // $ANTLR start "rule__ExternAggregatorDefinition__InputTypeAssignment_4" - // InternalSolverLanguageParser.g:9531:1: rule__ExternAggregatorDefinition__InputTypeAssignment_4 : ( ( ruleQualifiedName ) ) ; - public final void rule__ExternAggregatorDefinition__InputTypeAssignment_4() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__NameAssignment_2" + // InternalSolverLanguageParser.g:11084:1: rule__ExternFunctionDeclaration__NameAssignment_2 : ( ruleQualifiedName ) ; + public final void rule__ExternFunctionDeclaration__NameAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9535:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:9536:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11088:1: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11089:2: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:9536:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9537:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11089:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11090:3: ruleQualifiedName { - before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0()); - // InternalSolverLanguageParser.g:9538:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9539:4: ruleQualifiedName - { - before(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1()); + before(grammarAccess.getExternFunctionDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1()); - - } - - after(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0()); + after(grammarAccess.getExternFunctionDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } @@ -29110,29 +33801,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternAggregatorDefinition__InputTypeAssignment_4" + // $ANTLR end "rule__ExternFunctionDeclaration__NameAssignment_2" - // $ANTLR start "rule__ExternDatatypeDefinition__NameAssignment_2" - // InternalSolverLanguageParser.g:9550:1: rule__ExternDatatypeDefinition__NameAssignment_2 : ( ruleQualifiedName ) ; - public final void rule__ExternDatatypeDefinition__NameAssignment_2() throws RecognitionException { + // $ANTLR start "rule__ExternFunctionDeclaration__ArgumentListAssignment_3" + // InternalSolverLanguageParser.g:11099:1: rule__ExternFunctionDeclaration__ArgumentListAssignment_3 : ( ruleArgumentList ) ; + public final void rule__ExternFunctionDeclaration__ArgumentListAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9554:1: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9555:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11103:1: ( ( ruleArgumentList ) ) + // InternalSolverLanguageParser.g:11104:2: ( ruleArgumentList ) { - // InternalSolverLanguageParser.g:9555:2: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9556:3: ruleQualifiedName + // InternalSolverLanguageParser.g:11104:2: ( ruleArgumentList ) + // InternalSolverLanguageParser.g:11105:3: ruleArgumentList { - before(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + before(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); pushFollow(FOLLOW_2); - ruleQualifiedName(); + ruleArgumentList(); state._fsp--; - after(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + after(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); } @@ -29151,37 +33842,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__NameAssignment_2" + // $ANTLR end "rule__ExternFunctionDeclaration__ArgumentListAssignment_3" - // $ANTLR start "rule__ExternDatatypeDefinition__SupertypesAssignment_3_1" - // InternalSolverLanguageParser.g:9565:1: rule__ExternDatatypeDefinition__SupertypesAssignment_3_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__ExternDatatypeDefinition__SupertypesAssignment_3_1() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1" + // InternalSolverLanguageParser.g:11114:1: rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9569:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:9570:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11118:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:11119:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:9570:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9571:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11119:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11120:3: ( ruleQualifiedName ) { - before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0()); - // InternalSolverLanguageParser.g:9572:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9573:4: ruleQualifiedName + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); + // InternalSolverLanguageParser.g:11121:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11122:4: ruleQualifiedName { - before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } - after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); } @@ -29200,37 +33891,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__SupertypesAssignment_3_1" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__ResultTypeAssignment_1" - // $ANTLR start "rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1" - // InternalSolverLanguageParser.g:9584:1: rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__NameAssignment_2" + // InternalSolverLanguageParser.g:11133:1: rule__ExternAggregationOperatorDeclaration__NameAssignment_2 : ( ruleQualifiedName ) ; + public final void rule__ExternAggregationOperatorDeclaration__NameAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9588:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:9589:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11137:1: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11138:2: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:9589:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9590:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11138:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11139:3: ruleQualifiedName { - before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0()); - // InternalSolverLanguageParser.g:9591:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9592:4: ruleQualifiedName - { - before(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); - - } - - after(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } @@ -29249,37 +33932,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExternDatatypeDefinition__SupertypesAssignment_3_2_1" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__NameAssignment_2" - // $ANTLR start "rule__Variable__TypeAssignment_0" - // InternalSolverLanguageParser.g:9603:1: rule__Variable__TypeAssignment_0 : ( ( ruleQualifiedName ) ) ; - public final void rule__Variable__TypeAssignment_0() throws RecognitionException { + // $ANTLR start "rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4" + // InternalSolverLanguageParser.g:11148:1: rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4 : ( ( ruleQualifiedName ) ) ; + public final void rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9607:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:9608:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11152:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:11153:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:9608:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:9609:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11153:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11154:3: ( ruleQualifiedName ) { - before(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0()); - // InternalSolverLanguageParser.g:9610:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:9611:4: ruleQualifiedName + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolCrossReference_4_0()); + // InternalSolverLanguageParser.g:11155:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11156:4: ruleQualifiedName { - before(grammarAccess.getVariableAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); + before(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolQualifiedNameParserRuleCall_4_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getVariableAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolQualifiedNameParserRuleCall_4_0_1()); } - after(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0()); + after(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolCrossReference_4_0()); } @@ -29298,25 +33981,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Variable__TypeAssignment_0" + // $ANTLR end "rule__ExternAggregationOperatorDeclaration__ArgumentTypeAssignment_4" - // $ANTLR start "rule__Variable__NameAssignment_1" - // InternalSolverLanguageParser.g:9622:1: rule__Variable__NameAssignment_1 : ( RULE_ID ) ; - public final void rule__Variable__NameAssignment_1() throws RecognitionException { + // $ANTLR start "rule__ExternDatatypeDeclaration__NameAssignment_2" + // InternalSolverLanguageParser.g:11167:1: rule__ExternDatatypeDeclaration__NameAssignment_2 : ( ruleQualifiedName ) ; + public final void rule__ExternDatatypeDeclaration__NameAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9626:1: ( ( RULE_ID ) ) - // InternalSolverLanguageParser.g:9627:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:11171:1: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11172:2: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:9627:2: ( RULE_ID ) - // InternalSolverLanguageParser.g:9628:3: RULE_ID + // InternalSolverLanguageParser.g:11172:2: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11173:3: ruleQualifiedName { - before(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0()); - match(input,RULE_ID,FOLLOW_2); - after(grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0()); + before(grammarAccess.getExternDatatypeDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); + pushFollow(FOLLOW_2); + ruleQualifiedName(); + + state._fsp--; + + after(grammarAccess.getExternDatatypeDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } @@ -29335,29 +34022,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Variable__NameAssignment_1" + // $ANTLR end "rule__ExternDatatypeDeclaration__NameAssignment_2" - // $ANTLR start "rule__IfElse__ConditionAssignment_1" - // InternalSolverLanguageParser.g:9637:1: rule__IfElse__ConditionAssignment_1 : ( ruleExpression ) ; - public final void rule__IfElse__ConditionAssignment_1() throws RecognitionException { + // $ANTLR start "rule__Expression__BodyAssignment_2_1_2" + // InternalSolverLanguageParser.g:11182:1: rule__Expression__BodyAssignment_2_1_2 : ( ruleDisjunctiveExpression ) ; + public final void rule__Expression__BodyAssignment_2_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9641:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9642:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11186:1: ( ( ruleDisjunctiveExpression ) ) + // InternalSolverLanguageParser.g:11187:2: ( ruleDisjunctiveExpression ) { - // InternalSolverLanguageParser.g:9642:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9643:3: ruleExpression + // InternalSolverLanguageParser.g:11187:2: ( ruleDisjunctiveExpression ) + // InternalSolverLanguageParser.g:11188:3: ruleDisjunctiveExpression { - before(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0()); + before(grammarAccess.getExpressionAccess().getBodyDisjunctiveExpressionParserRuleCall_2_1_2_0()); pushFollow(FOLLOW_2); - ruleExpression(); + ruleDisjunctiveExpression(); state._fsp--; - after(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0()); + after(grammarAccess.getExpressionAccess().getBodyDisjunctiveExpressionParserRuleCall_2_1_2_0()); } @@ -29376,29 +34063,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__ConditionAssignment_1" + // $ANTLR end "rule__Expression__BodyAssignment_2_1_2" - // $ANTLR start "rule__IfElse__ThenAssignment_3" - // InternalSolverLanguageParser.g:9652:1: rule__IfElse__ThenAssignment_3 : ( ruleExpression ) ; - public final void rule__IfElse__ThenAssignment_3() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__ConditionAssignment_1" + // InternalSolverLanguageParser.g:11197:1: rule__ConditionalExpression__ConditionAssignment_1 : ( ruleDisjunctiveExpression ) ; + public final void rule__ConditionalExpression__ConditionAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9656:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9657:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11201:1: ( ( ruleDisjunctiveExpression ) ) + // InternalSolverLanguageParser.g:11202:2: ( ruleDisjunctiveExpression ) { - // InternalSolverLanguageParser.g:9657:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9658:3: ruleExpression + // InternalSolverLanguageParser.g:11202:2: ( ruleDisjunctiveExpression ) + // InternalSolverLanguageParser.g:11203:3: ruleDisjunctiveExpression { - before(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0()); + before(grammarAccess.getConditionalExpressionAccess().getConditionDisjunctiveExpressionParserRuleCall_1_0()); pushFollow(FOLLOW_2); - ruleExpression(); + ruleDisjunctiveExpression(); state._fsp--; - after(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0()); + after(grammarAccess.getConditionalExpressionAccess().getConditionDisjunctiveExpressionParserRuleCall_1_0()); } @@ -29417,29 +34104,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__ThenAssignment_3" + // $ANTLR end "rule__ConditionalExpression__ConditionAssignment_1" - // $ANTLR start "rule__IfElse__ElseAssignment_5" - // InternalSolverLanguageParser.g:9667:1: rule__IfElse__ElseAssignment_5 : ( ruleExpression ) ; - public final void rule__IfElse__ElseAssignment_5() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__ThenAssignment_3" + // InternalSolverLanguageParser.g:11212:1: rule__ConditionalExpression__ThenAssignment_3 : ( ruleExpression ) ; + public final void rule__ConditionalExpression__ThenAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9671:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9672:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11216:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:11217:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9672:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9673:3: ruleExpression + // InternalSolverLanguageParser.g:11217:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11218:3: ruleExpression { - before(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0()); + before(grammarAccess.getConditionalExpressionAccess().getThenExpressionParserRuleCall_3_0()); pushFollow(FOLLOW_2); ruleExpression(); state._fsp--; - after(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0()); + after(grammarAccess.getConditionalExpressionAccess().getThenExpressionParserRuleCall_3_0()); } @@ -29458,29 +34145,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__IfElse__ElseAssignment_5" + // $ANTLR end "rule__ConditionalExpression__ThenAssignment_3" - // $ANTLR start "rule__Let__BindingsAssignment_1" - // InternalSolverLanguageParser.g:9682:1: rule__Let__BindingsAssignment_1 : ( ruleLetBinding ) ; - public final void rule__Let__BindingsAssignment_1() throws RecognitionException { + // $ANTLR start "rule__ConditionalExpression__ElseAssignment_5" + // InternalSolverLanguageParser.g:11227:1: rule__ConditionalExpression__ElseAssignment_5 : ( ruleExpression ) ; + public final void rule__ConditionalExpression__ElseAssignment_5() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9686:1: ( ( ruleLetBinding ) ) - // InternalSolverLanguageParser.g:9687:2: ( ruleLetBinding ) + // InternalSolverLanguageParser.g:11231:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:11232:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9687:2: ( ruleLetBinding ) - // InternalSolverLanguageParser.g:9688:3: ruleLetBinding + // InternalSolverLanguageParser.g:11232:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11233:3: ruleExpression { - before(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0()); + before(grammarAccess.getConditionalExpressionAccess().getElseExpressionParserRuleCall_5_0()); pushFollow(FOLLOW_2); - ruleLetBinding(); + ruleExpression(); state._fsp--; - after(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0()); + after(grammarAccess.getConditionalExpressionAccess().getElseExpressionParserRuleCall_5_0()); } @@ -29499,29 +34186,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__BindingsAssignment_1" + // $ANTLR end "rule__ConditionalExpression__ElseAssignment_5" - // $ANTLR start "rule__Let__BindingsAssignment_2_1" - // InternalSolverLanguageParser.g:9697:1: rule__Let__BindingsAssignment_2_1 : ( ruleLetBinding ) ; - public final void rule__Let__BindingsAssignment_2_1() throws RecognitionException { + // $ANTLR start "rule__LetExpression__BindingsAssignment_1" + // InternalSolverLanguageParser.g:11242:1: rule__LetExpression__BindingsAssignment_1 : ( ruleLetBinding ) ; + public final void rule__LetExpression__BindingsAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9701:1: ( ( ruleLetBinding ) ) - // InternalSolverLanguageParser.g:9702:2: ( ruleLetBinding ) + // InternalSolverLanguageParser.g:11246:1: ( ( ruleLetBinding ) ) + // InternalSolverLanguageParser.g:11247:2: ( ruleLetBinding ) { - // InternalSolverLanguageParser.g:9702:2: ( ruleLetBinding ) - // InternalSolverLanguageParser.g:9703:3: ruleLetBinding + // InternalSolverLanguageParser.g:11247:2: ( ruleLetBinding ) + // InternalSolverLanguageParser.g:11248:3: ruleLetBinding { - before(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0()); + before(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_1_0()); pushFollow(FOLLOW_2); ruleLetBinding(); state._fsp--; - after(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0()); + after(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_1_0()); } @@ -29540,29 +34227,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__BindingsAssignment_2_1" + // $ANTLR end "rule__LetExpression__BindingsAssignment_1" - // $ANTLR start "rule__Let__BodyAssignment_4" - // InternalSolverLanguageParser.g:9712:1: rule__Let__BodyAssignment_4 : ( ruleExpression ) ; - public final void rule__Let__BodyAssignment_4() throws RecognitionException { + // $ANTLR start "rule__LetExpression__BindingsAssignment_2_1" + // InternalSolverLanguageParser.g:11257:1: rule__LetExpression__BindingsAssignment_2_1 : ( ruleLetBinding ) ; + public final void rule__LetExpression__BindingsAssignment_2_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9716:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:9717:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11261:1: ( ( ruleLetBinding ) ) + // InternalSolverLanguageParser.g:11262:2: ( ruleLetBinding ) { - // InternalSolverLanguageParser.g:9717:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:9718:3: ruleExpression + // InternalSolverLanguageParser.g:11262:2: ( ruleLetBinding ) + // InternalSolverLanguageParser.g:11263:3: ruleLetBinding { - before(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0()); + before(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_2_1_0()); pushFollow(FOLLOW_2); - ruleExpression(); + ruleLetBinding(); state._fsp--; - after(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0()); + after(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_2_1_0()); } @@ -29581,29 +34268,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Let__BodyAssignment_4" + // $ANTLR end "rule__LetExpression__BindingsAssignment_2_1" - // $ANTLR start "rule__LetBinding__VariableAssignment_0" - // InternalSolverLanguageParser.g:9727:1: rule__LetBinding__VariableAssignment_0 : ( ruleVariable ) ; - public final void rule__LetBinding__VariableAssignment_0() throws RecognitionException { + // $ANTLR start "rule__LetExpression__BodyAssignment_4" + // InternalSolverLanguageParser.g:11272:1: rule__LetExpression__BodyAssignment_4 : ( ruleExpression ) ; + public final void rule__LetExpression__BodyAssignment_4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9731:1: ( ( ruleVariable ) ) - // InternalSolverLanguageParser.g:9732:2: ( ruleVariable ) + // InternalSolverLanguageParser.g:11276:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:11277:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:9732:2: ( ruleVariable ) - // InternalSolverLanguageParser.g:9733:3: ruleVariable + // InternalSolverLanguageParser.g:11277:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11278:3: ruleExpression { - before(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0()); + before(grammarAccess.getLetExpressionAccess().getBodyExpressionParserRuleCall_4_0()); pushFollow(FOLLOW_2); - ruleVariable(); + ruleExpression(); state._fsp--; - after(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0()); + after(grammarAccess.getLetExpressionAccess().getBodyExpressionParserRuleCall_4_0()); } @@ -29622,29 +34309,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LetBinding__VariableAssignment_0" + // $ANTLR end "rule__LetExpression__BodyAssignment_4" - // $ANTLR start "rule__LetBinding__ValueAssignment_2" - // InternalSolverLanguageParser.g:9742:1: rule__LetBinding__ValueAssignment_2 : ( ruleAdditiveExpression ) ; - public final void rule__LetBinding__ValueAssignment_2() throws RecognitionException { + // $ANTLR start "rule__LetBinding__TypeAssignment_0" + // InternalSolverLanguageParser.g:11287:1: rule__LetBinding__TypeAssignment_0 : ( ( ruleQualifiedName ) ) ; + public final void rule__LetBinding__TypeAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9746:1: ( ( ruleAdditiveExpression ) ) - // InternalSolverLanguageParser.g:9747:2: ( ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:11291:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:11292:2: ( ( ruleQualifiedName ) ) + { + // InternalSolverLanguageParser.g:11292:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11293:3: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:9747:2: ( ruleAdditiveExpression ) - // InternalSolverLanguageParser.g:9748:3: ruleAdditiveExpression + before(grammarAccess.getLetBindingAccess().getTypeSymbolCrossReference_0_0()); + // InternalSolverLanguageParser.g:11294:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11295:4: ruleQualifiedName { - before(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0()); + before(grammarAccess.getLetBindingAccess().getTypeSymbolQualifiedNameParserRuleCall_0_0_1()); pushFollow(FOLLOW_2); - ruleAdditiveExpression(); + ruleQualifiedName(); state._fsp--; - after(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0()); + after(grammarAccess.getLetBindingAccess().getTypeSymbolQualifiedNameParserRuleCall_0_0_1()); + + } + + after(grammarAccess.getLetBindingAccess().getTypeSymbolCrossReference_0_0()); } @@ -29663,29 +34358,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LetBinding__ValueAssignment_2" + // $ANTLR end "rule__LetBinding__TypeAssignment_0" - // $ANTLR start "rule__ImplicationExpression__OpAssignment_1_1" - // InternalSolverLanguageParser.g:9757:1: rule__ImplicationExpression__OpAssignment_1_1 : ( ruleImplicationOperator ) ; - public final void rule__ImplicationExpression__OpAssignment_1_1() throws RecognitionException { + // $ANTLR start "rule__LetBinding__NameAssignment_1" + // InternalSolverLanguageParser.g:11306:1: rule__LetBinding__NameAssignment_1 : ( RULE_ID ) ; + public final void rule__LetBinding__NameAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9761:1: ( ( ruleImplicationOperator ) ) - // InternalSolverLanguageParser.g:9762:2: ( ruleImplicationOperator ) + // InternalSolverLanguageParser.g:11310:1: ( ( RULE_ID ) ) + // InternalSolverLanguageParser.g:11311:2: ( RULE_ID ) { - // InternalSolverLanguageParser.g:9762:2: ( ruleImplicationOperator ) - // InternalSolverLanguageParser.g:9763:3: ruleImplicationOperator + // InternalSolverLanguageParser.g:11311:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:11312:3: RULE_ID { - before(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0()); - pushFollow(FOLLOW_2); - ruleImplicationOperator(); - - state._fsp--; - - after(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0()); + before(grammarAccess.getLetBindingAccess().getNameIDTerminalRuleCall_1_0()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getLetBindingAccess().getNameIDTerminalRuleCall_1_0()); } @@ -29704,29 +34395,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__OpAssignment_1_1" + // $ANTLR end "rule__LetBinding__NameAssignment_1" - // $ANTLR start "rule__ImplicationExpression__RightAssignment_1_2" - // InternalSolverLanguageParser.g:9772:1: rule__ImplicationExpression__RightAssignment_1_2 : ( ruleImplicationExpression ) ; - public final void rule__ImplicationExpression__RightAssignment_1_2() throws RecognitionException { + // $ANTLR start "rule__LetBinding__ValueAssignment_3" + // InternalSolverLanguageParser.g:11321:1: rule__LetBinding__ValueAssignment_3 : ( ruleAdditiveExpression ) ; + public final void rule__LetBinding__ValueAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9776:1: ( ( ruleImplicationExpression ) ) - // InternalSolverLanguageParser.g:9777:2: ( ruleImplicationExpression ) + // InternalSolverLanguageParser.g:11325:1: ( ( ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:11326:2: ( ruleAdditiveExpression ) { - // InternalSolverLanguageParser.g:9777:2: ( ruleImplicationExpression ) - // InternalSolverLanguageParser.g:9778:3: ruleImplicationExpression + // InternalSolverLanguageParser.g:11326:2: ( ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:11327:3: ruleAdditiveExpression { - before(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0()); + before(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_3_0()); pushFollow(FOLLOW_2); - ruleImplicationExpression(); + ruleAdditiveExpression(); state._fsp--; - after(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0()); + after(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_3_0()); } @@ -29745,21 +34436,21 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ImplicationExpression__RightAssignment_1_2" + // $ANTLR end "rule__LetBinding__ValueAssignment_3" // $ANTLR start "rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1" - // InternalSolverLanguageParser.g:9787:1: rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 : ( ruleConjunctiveExpression ) ; + // InternalSolverLanguageParser.g:11336:1: rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1 : ( ruleConjunctiveExpression ) ; public final void rule__DisjunctiveExpression__ChildrenAssignment_1_0_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9791:1: ( ( ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:9792:2: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:11340:1: ( ( ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:11341:2: ( ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:9792:2: ( ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:9793:3: ruleConjunctiveExpression + // InternalSolverLanguageParser.g:11341:2: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:11342:3: ruleConjunctiveExpression { before(grammarAccess.getDisjunctiveExpressionAccess().getChildrenConjunctiveExpressionParserRuleCall_1_0_1_1_0()); pushFollow(FOLLOW_2); @@ -29790,17 +34481,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__DisjunctiveExpression__BodyAssignment_1_1_2" - // InternalSolverLanguageParser.g:9802:1: rule__DisjunctiveExpression__BodyAssignment_1_1_2 : ( ruleConjunctiveExpression ) ; + // InternalSolverLanguageParser.g:11351:1: rule__DisjunctiveExpression__BodyAssignment_1_1_2 : ( ruleConjunctiveExpression ) ; public final void rule__DisjunctiveExpression__BodyAssignment_1_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9806:1: ( ( ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:9807:2: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:11355:1: ( ( ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:11356:2: ( ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:9807:2: ( ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:9808:3: ruleConjunctiveExpression + // InternalSolverLanguageParser.g:11356:2: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:11357:3: ruleConjunctiveExpression { before(grammarAccess.getDisjunctiveExpressionAccess().getBodyConjunctiveExpressionParserRuleCall_1_1_2_0()); pushFollow(FOLLOW_2); @@ -29831,17 +34522,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__DisjunctiveExpression__CasesAssignment_1_1_4_1" - // InternalSolverLanguageParser.g:9817:1: rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 : ( ruleCase ) ; + // InternalSolverLanguageParser.g:11366:1: rule__DisjunctiveExpression__CasesAssignment_1_1_4_1 : ( ruleCase ) ; public final void rule__DisjunctiveExpression__CasesAssignment_1_1_4_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9821:1: ( ( ruleCase ) ) - // InternalSolverLanguageParser.g:9822:2: ( ruleCase ) + // InternalSolverLanguageParser.g:11370:1: ( ( ruleCase ) ) + // InternalSolverLanguageParser.g:11371:2: ( ruleCase ) { - // InternalSolverLanguageParser.g:9822:2: ( ruleCase ) - // InternalSolverLanguageParser.g:9823:3: ruleCase + // InternalSolverLanguageParser.g:11371:2: ( ruleCase ) + // InternalSolverLanguageParser.g:11372:3: ruleCase { before(grammarAccess.getDisjunctiveExpressionAccess().getCasesCaseParserRuleCall_1_1_4_1_0()); pushFollow(FOLLOW_2); @@ -29872,17 +34563,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__Case__ConditionAssignment_0" - // InternalSolverLanguageParser.g:9832:1: rule__Case__ConditionAssignment_0 : ( ruleConjunctiveExpression ) ; + // InternalSolverLanguageParser.g:11381:1: rule__Case__ConditionAssignment_0 : ( ruleConjunctiveExpression ) ; public final void rule__Case__ConditionAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9836:1: ( ( ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:9837:2: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:11385:1: ( ( ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:11386:2: ( ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:9837:2: ( ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:9838:3: ruleConjunctiveExpression + // InternalSolverLanguageParser.g:11386:2: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:11387:3: ruleConjunctiveExpression { before(grammarAccess.getCaseAccess().getConditionConjunctiveExpressionParserRuleCall_0_0()); pushFollow(FOLLOW_2); @@ -29913,17 +34604,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__Case__BodyAssignment_2" - // InternalSolverLanguageParser.g:9847:1: rule__Case__BodyAssignment_2 : ( ruleConjunctiveExpression ) ; + // InternalSolverLanguageParser.g:11396:1: rule__Case__BodyAssignment_2 : ( ruleConjunctiveExpression ) ; public final void rule__Case__BodyAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9851:1: ( ( ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:9852:2: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:11400:1: ( ( ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:11401:2: ( ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:9852:2: ( ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:9853:3: ruleConjunctiveExpression + // InternalSolverLanguageParser.g:11401:2: ( ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:11402:3: ruleConjunctiveExpression { before(grammarAccess.getCaseAccess().getBodyConjunctiveExpressionParserRuleCall_2_0()); pushFollow(FOLLOW_2); @@ -29954,17 +34645,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__ConjunctiveExpression__ChildrenAssignment_1_1_1" - // InternalSolverLanguageParser.g:9862:1: rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 : ( ruleComparisonExpression ) ; + // InternalSolverLanguageParser.g:11411:1: rule__ConjunctiveExpression__ChildrenAssignment_1_1_1 : ( ruleComparisonExpression ) ; public final void rule__ConjunctiveExpression__ChildrenAssignment_1_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9866:1: ( ( ruleComparisonExpression ) ) - // InternalSolverLanguageParser.g:9867:2: ( ruleComparisonExpression ) + // InternalSolverLanguageParser.g:11415:1: ( ( ruleComparisonExpression ) ) + // InternalSolverLanguageParser.g:11416:2: ( ruleComparisonExpression ) { - // InternalSolverLanguageParser.g:9867:2: ( ruleComparisonExpression ) - // InternalSolverLanguageParser.g:9868:3: ruleComparisonExpression + // InternalSolverLanguageParser.g:11416:2: ( ruleComparisonExpression ) + // InternalSolverLanguageParser.g:11417:3: ruleComparisonExpression { before(grammarAccess.getConjunctiveExpressionAccess().getChildrenComparisonExpressionParserRuleCall_1_1_1_0()); pushFollow(FOLLOW_2); @@ -29995,17 +34686,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__ComparisonExpression__OpAssignment_1_1" - // InternalSolverLanguageParser.g:9877:1: rule__ComparisonExpression__OpAssignment_1_1 : ( ruleComparisonOperator ) ; + // InternalSolverLanguageParser.g:11426:1: rule__ComparisonExpression__OpAssignment_1_1 : ( ruleComparisonOperator ) ; public final void rule__ComparisonExpression__OpAssignment_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9881:1: ( ( ruleComparisonOperator ) ) - // InternalSolverLanguageParser.g:9882:2: ( ruleComparisonOperator ) + // InternalSolverLanguageParser.g:11430:1: ( ( ruleComparisonOperator ) ) + // InternalSolverLanguageParser.g:11431:2: ( ruleComparisonOperator ) { - // InternalSolverLanguageParser.g:9882:2: ( ruleComparisonOperator ) - // InternalSolverLanguageParser.g:9883:3: ruleComparisonOperator + // InternalSolverLanguageParser.g:11431:2: ( ruleComparisonOperator ) + // InternalSolverLanguageParser.g:11432:3: ruleComparisonOperator { before(grammarAccess.getComparisonExpressionAccess().getOpComparisonOperatorEnumRuleCall_1_1_0()); pushFollow(FOLLOW_2); @@ -30036,17 +34727,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__ComparisonExpression__RightAssignment_1_2" - // InternalSolverLanguageParser.g:9892:1: rule__ComparisonExpression__RightAssignment_1_2 : ( ruleAdditiveExpression ) ; + // InternalSolverLanguageParser.g:11441:1: rule__ComparisonExpression__RightAssignment_1_2 : ( ruleAdditiveExpression ) ; public final void rule__ComparisonExpression__RightAssignment_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9896:1: ( ( ruleAdditiveExpression ) ) - // InternalSolverLanguageParser.g:9897:2: ( ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:11445:1: ( ( ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:11446:2: ( ruleAdditiveExpression ) { - // InternalSolverLanguageParser.g:9897:2: ( ruleAdditiveExpression ) - // InternalSolverLanguageParser.g:9898:3: ruleAdditiveExpression + // InternalSolverLanguageParser.g:11446:2: ( ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:11447:3: ruleAdditiveExpression { before(grammarAccess.getComparisonExpressionAccess().getRightAdditiveExpressionParserRuleCall_1_2_0()); pushFollow(FOLLOW_2); @@ -30077,17 +34768,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__AdditiveExpression__OpAssignment_1_1" - // InternalSolverLanguageParser.g:9907:1: rule__AdditiveExpression__OpAssignment_1_1 : ( ruleAdditiveBinaryOperator ) ; + // InternalSolverLanguageParser.g:11456:1: rule__AdditiveExpression__OpAssignment_1_1 : ( ruleAdditiveBinaryOperator ) ; public final void rule__AdditiveExpression__OpAssignment_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9911:1: ( ( ruleAdditiveBinaryOperator ) ) - // InternalSolverLanguageParser.g:9912:2: ( ruleAdditiveBinaryOperator ) + // InternalSolverLanguageParser.g:11460:1: ( ( ruleAdditiveBinaryOperator ) ) + // InternalSolverLanguageParser.g:11461:2: ( ruleAdditiveBinaryOperator ) { - // InternalSolverLanguageParser.g:9912:2: ( ruleAdditiveBinaryOperator ) - // InternalSolverLanguageParser.g:9913:3: ruleAdditiveBinaryOperator + // InternalSolverLanguageParser.g:11461:2: ( ruleAdditiveBinaryOperator ) + // InternalSolverLanguageParser.g:11462:3: ruleAdditiveBinaryOperator { before(grammarAccess.getAdditiveExpressionAccess().getOpAdditiveBinaryOperatorEnumRuleCall_1_1_0()); pushFollow(FOLLOW_2); @@ -30118,17 +34809,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__AdditiveExpression__RightAssignment_1_2" - // InternalSolverLanguageParser.g:9922:1: rule__AdditiveExpression__RightAssignment_1_2 : ( ruleMultiplicativeExpression ) ; + // InternalSolverLanguageParser.g:11471:1: rule__AdditiveExpression__RightAssignment_1_2 : ( ruleMultiplicativeExpression ) ; public final void rule__AdditiveExpression__RightAssignment_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9926:1: ( ( ruleMultiplicativeExpression ) ) - // InternalSolverLanguageParser.g:9927:2: ( ruleMultiplicativeExpression ) + // InternalSolverLanguageParser.g:11475:1: ( ( ruleMultiplicativeExpression ) ) + // InternalSolverLanguageParser.g:11476:2: ( ruleMultiplicativeExpression ) { - // InternalSolverLanguageParser.g:9927:2: ( ruleMultiplicativeExpression ) - // InternalSolverLanguageParser.g:9928:3: ruleMultiplicativeExpression + // InternalSolverLanguageParser.g:11476:2: ( ruleMultiplicativeExpression ) + // InternalSolverLanguageParser.g:11477:3: ruleMultiplicativeExpression { before(grammarAccess.getAdditiveExpressionAccess().getRightMultiplicativeExpressionParserRuleCall_1_2_0()); pushFollow(FOLLOW_2); @@ -30159,17 +34850,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__MultiplicativeExpression__OpAssignment_1_1" - // InternalSolverLanguageParser.g:9937:1: rule__MultiplicativeExpression__OpAssignment_1_1 : ( ruleMultiplicativeBinaryOperator ) ; + // InternalSolverLanguageParser.g:11486:1: rule__MultiplicativeExpression__OpAssignment_1_1 : ( ruleMultiplicativeBinaryOperator ) ; public final void rule__MultiplicativeExpression__OpAssignment_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9941:1: ( ( ruleMultiplicativeBinaryOperator ) ) - // InternalSolverLanguageParser.g:9942:2: ( ruleMultiplicativeBinaryOperator ) + // InternalSolverLanguageParser.g:11490:1: ( ( ruleMultiplicativeBinaryOperator ) ) + // InternalSolverLanguageParser.g:11491:2: ( ruleMultiplicativeBinaryOperator ) { - // InternalSolverLanguageParser.g:9942:2: ( ruleMultiplicativeBinaryOperator ) - // InternalSolverLanguageParser.g:9943:3: ruleMultiplicativeBinaryOperator + // InternalSolverLanguageParser.g:11491:2: ( ruleMultiplicativeBinaryOperator ) + // InternalSolverLanguageParser.g:11492:3: ruleMultiplicativeBinaryOperator { before(grammarAccess.getMultiplicativeExpressionAccess().getOpMultiplicativeBinaryOperatorEnumRuleCall_1_1_0()); pushFollow(FOLLOW_2); @@ -30200,17 +34891,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__MultiplicativeExpression__RightAssignment_1_2" - // InternalSolverLanguageParser.g:9952:1: rule__MultiplicativeExpression__RightAssignment_1_2 : ( ruleExponentialExpression ) ; + // InternalSolverLanguageParser.g:11501:1: rule__MultiplicativeExpression__RightAssignment_1_2 : ( ruleExponentialExpression ) ; public final void rule__MultiplicativeExpression__RightAssignment_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9956:1: ( ( ruleExponentialExpression ) ) - // InternalSolverLanguageParser.g:9957:2: ( ruleExponentialExpression ) + // InternalSolverLanguageParser.g:11505:1: ( ( ruleExponentialExpression ) ) + // InternalSolverLanguageParser.g:11506:2: ( ruleExponentialExpression ) { - // InternalSolverLanguageParser.g:9957:2: ( ruleExponentialExpression ) - // InternalSolverLanguageParser.g:9958:3: ruleExponentialExpression + // InternalSolverLanguageParser.g:11506:2: ( ruleExponentialExpression ) + // InternalSolverLanguageParser.g:11507:3: ruleExponentialExpression { before(grammarAccess.getMultiplicativeExpressionAccess().getRightExponentialExpressionParserRuleCall_1_2_0()); pushFollow(FOLLOW_2); @@ -30241,17 +34932,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__ExponentialExpression__OpAssignment_1_1" - // InternalSolverLanguageParser.g:9967:1: rule__ExponentialExpression__OpAssignment_1_1 : ( ruleExponentialOp ) ; + // InternalSolverLanguageParser.g:11516:1: rule__ExponentialExpression__OpAssignment_1_1 : ( ruleExponentialOp ) ; public final void rule__ExponentialExpression__OpAssignment_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9971:1: ( ( ruleExponentialOp ) ) - // InternalSolverLanguageParser.g:9972:2: ( ruleExponentialOp ) + // InternalSolverLanguageParser.g:11520:1: ( ( ruleExponentialOp ) ) + // InternalSolverLanguageParser.g:11521:2: ( ruleExponentialOp ) { - // InternalSolverLanguageParser.g:9972:2: ( ruleExponentialOp ) - // InternalSolverLanguageParser.g:9973:3: ruleExponentialOp + // InternalSolverLanguageParser.g:11521:2: ( ruleExponentialOp ) + // InternalSolverLanguageParser.g:11522:3: ruleExponentialOp { before(grammarAccess.getExponentialExpressionAccess().getOpExponentialOpEnumRuleCall_1_1_0()); pushFollow(FOLLOW_2); @@ -30282,17 +34973,17 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__ExponentialExpression__RightAssignment_1_2" - // InternalSolverLanguageParser.g:9982:1: rule__ExponentialExpression__RightAssignment_1_2 : ( ruleCastExpression ) ; + // InternalSolverLanguageParser.g:11531:1: rule__ExponentialExpression__RightAssignment_1_2 : ( ruleCastExpression ) ; public final void rule__ExponentialExpression__RightAssignment_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:9986:1: ( ( ruleCastExpression ) ) - // InternalSolverLanguageParser.g:9987:2: ( ruleCastExpression ) + // InternalSolverLanguageParser.g:11535:1: ( ( ruleCastExpression ) ) + // InternalSolverLanguageParser.g:11536:2: ( ruleCastExpression ) { - // InternalSolverLanguageParser.g:9987:2: ( ruleCastExpression ) - // InternalSolverLanguageParser.g:9988:3: ruleCastExpression + // InternalSolverLanguageParser.g:11536:2: ( ruleCastExpression ) + // InternalSolverLanguageParser.g:11537:3: ruleCastExpression { before(grammarAccess.getExponentialExpressionAccess().getRightCastExpressionParserRuleCall_1_2_0()); pushFollow(FOLLOW_2); @@ -30322,34 +35013,34 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__ExponentialExpression__RightAssignment_1_2" - // $ANTLR start "rule__CastExpression__TypeAssignment_1_2" - // InternalSolverLanguageParser.g:9997:1: rule__CastExpression__TypeAssignment_1_2 : ( ( ruleQualifiedName ) ) ; - public final void rule__CastExpression__TypeAssignment_1_2() throws RecognitionException { + // $ANTLR start "rule__CastExpression__TargetTypeAssignment_1_2" + // InternalSolverLanguageParser.g:11546:1: rule__CastExpression__TargetTypeAssignment_1_2 : ( ( ruleQualifiedName ) ) ; + public final void rule__CastExpression__TargetTypeAssignment_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10001:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10002:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11550:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:11551:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10002:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10003:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11551:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11552:3: ( ruleQualifiedName ) { - before(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0()); - // InternalSolverLanguageParser.g:10004:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10005:4: ruleQualifiedName + before(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolCrossReference_1_2_0()); + // InternalSolverLanguageParser.g:11553:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11554:4: ruleQualifiedName { - before(grammarAccess.getCastExpressionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1()); + before(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolQualifiedNameParserRuleCall_1_2_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getCastExpressionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1()); + after(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolQualifiedNameParserRuleCall_1_2_0_1()); } - after(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0()); + after(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolCrossReference_1_2_0()); } @@ -30368,29 +35059,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__CastExpression__TypeAssignment_1_2" + // $ANTLR end "rule__CastExpression__TargetTypeAssignment_1_2" // $ANTLR start "rule__UnaryExpression__OpAssignment_1_1" - // InternalSolverLanguageParser.g:10016:1: rule__UnaryExpression__OpAssignment_1_1 : ( ruleUnaryOp ) ; + // InternalSolverLanguageParser.g:11565:1: rule__UnaryExpression__OpAssignment_1_1 : ( ruleUnaryOperator ) ; public final void rule__UnaryExpression__OpAssignment_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10020:1: ( ( ruleUnaryOp ) ) - // InternalSolverLanguageParser.g:10021:2: ( ruleUnaryOp ) + // InternalSolverLanguageParser.g:11569:1: ( ( ruleUnaryOperator ) ) + // InternalSolverLanguageParser.g:11570:2: ( ruleUnaryOperator ) { - // InternalSolverLanguageParser.g:10021:2: ( ruleUnaryOp ) - // InternalSolverLanguageParser.g:10022:3: ruleUnaryOp + // InternalSolverLanguageParser.g:11570:2: ( ruleUnaryOperator ) + // InternalSolverLanguageParser.g:11571:3: ruleUnaryOperator { - before(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0()); + before(grammarAccess.getUnaryExpressionAccess().getOpUnaryOperatorEnumRuleCall_1_1_0()); pushFollow(FOLLOW_2); - ruleUnaryOp(); + ruleUnaryOperator(); state._fsp--; - after(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0()); + after(grammarAccess.getUnaryExpressionAccess().getOpUnaryOperatorEnumRuleCall_1_1_0()); } @@ -30413,25 +35104,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR start "rule__UnaryExpression__BodyAssignment_1_2" - // InternalSolverLanguageParser.g:10031:1: rule__UnaryExpression__BodyAssignment_1_2 : ( ruleAggregationExpression ) ; + // InternalSolverLanguageParser.g:11580:1: rule__UnaryExpression__BodyAssignment_1_2 : ( ruleBracedAggregateExpression ) ; public final void rule__UnaryExpression__BodyAssignment_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10035:1: ( ( ruleAggregationExpression ) ) - // InternalSolverLanguageParser.g:10036:2: ( ruleAggregationExpression ) + // InternalSolverLanguageParser.g:11584:1: ( ( ruleBracedAggregateExpression ) ) + // InternalSolverLanguageParser.g:11585:2: ( ruleBracedAggregateExpression ) { - // InternalSolverLanguageParser.g:10036:2: ( ruleAggregationExpression ) - // InternalSolverLanguageParser.g:10037:3: ruleAggregationExpression + // InternalSolverLanguageParser.g:11585:2: ( ruleBracedAggregateExpression ) + // InternalSolverLanguageParser.g:11586:3: ruleBracedAggregateExpression { - before(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0()); + before(grammarAccess.getUnaryExpressionAccess().getBodyBracedAggregateExpressionParserRuleCall_1_2_0()); pushFollow(FOLLOW_2); - ruleAggregationExpression(); + ruleBracedAggregateExpression(); state._fsp--; - after(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0()); + after(grammarAccess.getUnaryExpressionAccess().getBodyBracedAggregateExpressionParserRuleCall_1_2_0()); } @@ -30453,26 +35144,34 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP // $ANTLR end "rule__UnaryExpression__BodyAssignment_1_2" - // $ANTLR start "rule__LocalVariables__VariablesAssignment_2_0" - // InternalSolverLanguageParser.g:10046:1: rule__LocalVariables__VariablesAssignment_2_0 : ( ruleVariable ) ; - public final void rule__LocalVariables__VariablesAssignment_2_0() throws RecognitionException { + // $ANTLR start "rule__Aggregation__OpAssignment_0" + // InternalSolverLanguageParser.g:11595:1: rule__Aggregation__OpAssignment_0 : ( ( ruleQualifiedName ) ) ; + public final void rule__Aggregation__OpAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10050:1: ( ( ruleVariable ) ) - // InternalSolverLanguageParser.g:10051:2: ( ruleVariable ) + // InternalSolverLanguageParser.g:11599:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:11600:2: ( ( ruleQualifiedName ) ) + { + // InternalSolverLanguageParser.g:11600:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11601:3: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:10051:2: ( ruleVariable ) - // InternalSolverLanguageParser.g:10052:3: ruleVariable + before(grammarAccess.getAggregationAccess().getOpSymbolCrossReference_0_0()); + // InternalSolverLanguageParser.g:11602:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11603:4: ruleQualifiedName { - before(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0()); + before(grammarAccess.getAggregationAccess().getOpSymbolQualifiedNameParserRuleCall_0_0_1()); pushFollow(FOLLOW_2); - ruleVariable(); + ruleQualifiedName(); state._fsp--; - after(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0()); + after(grammarAccess.getAggregationAccess().getOpSymbolQualifiedNameParserRuleCall_0_0_1()); + + } + + after(grammarAccess.getAggregationAccess().getOpSymbolCrossReference_0_0()); } @@ -30491,29 +35190,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__VariablesAssignment_2_0" + // $ANTLR end "rule__Aggregation__OpAssignment_0" - // $ANTLR start "rule__LocalVariables__VariablesAssignment_2_1_1" - // InternalSolverLanguageParser.g:10061:1: rule__LocalVariables__VariablesAssignment_2_1_1 : ( ruleVariable ) ; - public final void rule__LocalVariables__VariablesAssignment_2_1_1() throws RecognitionException { + // $ANTLR start "rule__Aggregation__ValueAssignment_2" + // InternalSolverLanguageParser.g:11614:1: rule__Aggregation__ValueAssignment_2 : ( ruleExpression ) ; + public final void rule__Aggregation__ValueAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10065:1: ( ( ruleVariable ) ) - // InternalSolverLanguageParser.g:10066:2: ( ruleVariable ) + // InternalSolverLanguageParser.g:11618:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:11619:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:10066:2: ( ruleVariable ) - // InternalSolverLanguageParser.g:10067:3: ruleVariable + // InternalSolverLanguageParser.g:11619:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11620:3: ruleExpression { - before(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0()); + before(grammarAccess.getAggregationAccess().getValueExpressionParserRuleCall_2_0()); pushFollow(FOLLOW_2); - ruleVariable(); + ruleExpression(); state._fsp--; - after(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0()); + after(grammarAccess.getAggregationAccess().getValueExpressionParserRuleCall_2_0()); } @@ -30532,29 +35231,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LocalVariables__VariablesAssignment_2_1_1" + // $ANTLR end "rule__Aggregation__ValueAssignment_2" - // $ANTLR start "rule__QuantifiedExpression__QuantifierAssignment_0" - // InternalSolverLanguageParser.g:10076:1: rule__QuantifiedExpression__QuantifierAssignment_0 : ( ruleQuantifier ) ; - public final void rule__QuantifiedExpression__QuantifierAssignment_0() throws RecognitionException { + // $ANTLR start "rule__Aggregation__ConditionAssignment_4" + // InternalSolverLanguageParser.g:11629:1: rule__Aggregation__ConditionAssignment_4 : ( ruleExpression ) ; + public final void rule__Aggregation__ConditionAssignment_4() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10080:1: ( ( ruleQuantifier ) ) - // InternalSolverLanguageParser.g:10081:2: ( ruleQuantifier ) + // InternalSolverLanguageParser.g:11633:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:11634:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:10081:2: ( ruleQuantifier ) - // InternalSolverLanguageParser.g:10082:3: ruleQuantifier + // InternalSolverLanguageParser.g:11634:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11635:3: ruleExpression { - before(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0()); + before(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); pushFollow(FOLLOW_2); - ruleQuantifier(); + ruleExpression(); state._fsp--; - after(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0()); + after(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); } @@ -30573,29 +35272,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__QuantifierAssignment_0" + // $ANTLR end "rule__Aggregation__ConditionAssignment_4" - // $ANTLR start "rule__QuantifiedExpression__LocalVariablesAssignment_1" - // InternalSolverLanguageParser.g:10091:1: rule__QuantifiedExpression__LocalVariablesAssignment_1 : ( ruleLocalVariables ) ; - public final void rule__QuantifiedExpression__LocalVariablesAssignment_1() throws RecognitionException { + // $ANTLR start "rule__Count__ConditionAssignment_2" + // InternalSolverLanguageParser.g:11644:1: rule__Count__ConditionAssignment_2 : ( ruleExpression ) ; + public final void rule__Count__ConditionAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10095:1: ( ( ruleLocalVariables ) ) - // InternalSolverLanguageParser.g:10096:2: ( ruleLocalVariables ) + // InternalSolverLanguageParser.g:11648:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:11649:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:10096:2: ( ruleLocalVariables ) - // InternalSolverLanguageParser.g:10097:3: ruleLocalVariables + // InternalSolverLanguageParser.g:11649:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11650:3: ruleExpression { - before(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); + before(grammarAccess.getCountAccess().getConditionExpressionParserRuleCall_2_0()); pushFollow(FOLLOW_2); - ruleLocalVariables(); + ruleExpression(); state._fsp--; - after(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); + after(grammarAccess.getCountAccess().getConditionExpressionParserRuleCall_2_0()); } @@ -30614,29 +35313,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__LocalVariablesAssignment_1" + // $ANTLR end "rule__Count__ConditionAssignment_2" - // $ANTLR start "rule__QuantifiedExpression__BodyAssignment_3" - // InternalSolverLanguageParser.g:10106:1: rule__QuantifiedExpression__BodyAssignment_3 : ( ruleExpression ) ; - public final void rule__QuantifiedExpression__BodyAssignment_3() throws RecognitionException { + // $ANTLR start "rule__Call__FunctorAssignment_0" + // InternalSolverLanguageParser.g:11659:1: rule__Call__FunctorAssignment_0 : ( ruleReference ) ; + public final void rule__Call__FunctorAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10110:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:10111:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11663:1: ( ( ruleReference ) ) + // InternalSolverLanguageParser.g:11664:2: ( ruleReference ) { - // InternalSolverLanguageParser.g:10111:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:10112:3: ruleExpression + // InternalSolverLanguageParser.g:11664:2: ( ruleReference ) + // InternalSolverLanguageParser.g:11665:3: ruleReference { - before(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0()); + before(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); pushFollow(FOLLOW_2); - ruleExpression(); + ruleReference(); state._fsp--; - after(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0()); + after(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); } @@ -30655,37 +35354,230 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__QuantifiedExpression__BodyAssignment_3" + // $ANTLR end "rule__Call__FunctorAssignment_0" - // $ANTLR start "rule__Aggregation__OpAssignment_0" - // InternalSolverLanguageParser.g:10121:1: rule__Aggregation__OpAssignment_0 : ( ( ruleQualifiedName ) ) ; - public final void rule__Aggregation__OpAssignment_0() throws RecognitionException { + // $ANTLR start "rule__Call__ArgumentListAssignment_1" + // InternalSolverLanguageParser.g:11674:1: rule__Call__ArgumentListAssignment_1 : ( ruleArgumentList ) ; + public final void rule__Call__ArgumentListAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:11678:1: ( ( ruleArgumentList ) ) + // InternalSolverLanguageParser.g:11679:2: ( ruleArgumentList ) + { + // InternalSolverLanguageParser.g:11679:2: ( ruleArgumentList ) + // InternalSolverLanguageParser.g:11680:3: ruleArgumentList + { + before(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_1_0()); + pushFollow(FOLLOW_2); + ruleArgumentList(); + + state._fsp--; + + after(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__Call__ArgumentListAssignment_1" + + + // $ANTLR start "rule__ArgumentList__ArgumentsAssignment_2_0" + // InternalSolverLanguageParser.g:11689:1: rule__ArgumentList__ArgumentsAssignment_2_0 : ( ruleArgument ) ; + public final void rule__ArgumentList__ArgumentsAssignment_2_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10125:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10126:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11693:1: ( ( ruleArgument ) ) + // InternalSolverLanguageParser.g:11694:2: ( ruleArgument ) { - // InternalSolverLanguageParser.g:10126:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10127:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11694:2: ( ruleArgument ) + // InternalSolverLanguageParser.g:11695:3: ruleArgument { - before(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0()); - // InternalSolverLanguageParser.g:10128:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10129:4: ruleQualifiedName + before(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); + pushFollow(FOLLOW_2); + ruleArgument(); + + state._fsp--; + + after(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArgumentList__ArgumentsAssignment_2_0" + + + // $ANTLR start "rule__ArgumentList__ArgumentsAssignment_2_1_1" + // InternalSolverLanguageParser.g:11704:1: rule__ArgumentList__ArgumentsAssignment_2_1_1 : ( ruleArgument ) ; + public final void rule__ArgumentList__ArgumentsAssignment_2_1_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:11708:1: ( ( ruleArgument ) ) + // InternalSolverLanguageParser.g:11709:2: ( ruleArgument ) { - before(grammarAccess.getAggregationAccess().getOpNamedElementQualifiedNameParserRuleCall_0_0_1()); + // InternalSolverLanguageParser.g:11709:2: ( ruleArgument ) + // InternalSolverLanguageParser.g:11710:3: ruleArgument + { + before(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); pushFollow(FOLLOW_2); - ruleQualifiedName(); + ruleArgument(); + + state._fsp--; + + after(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ArgumentList__ArgumentsAssignment_2_1_1" + + + // $ANTLR start "rule__ExpressionArgument__ExpressionAssignment" + // InternalSolverLanguageParser.g:11719:1: rule__ExpressionArgument__ExpressionAssignment : ( ruleComparisonExpression ) ; + public final void rule__ExpressionArgument__ExpressionAssignment() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:11723:1: ( ( ruleComparisonExpression ) ) + // InternalSolverLanguageParser.g:11724:2: ( ruleComparisonExpression ) + { + // InternalSolverLanguageParser.g:11724:2: ( ruleComparisonExpression ) + // InternalSolverLanguageParser.g:11725:3: ruleComparisonExpression + { + before(grammarAccess.getExpressionArgumentAccess().getExpressionComparisonExpressionParserRuleCall_0()); + pushFollow(FOLLOW_2); + ruleComparisonExpression(); + + state._fsp--; + + after(grammarAccess.getExpressionArgumentAccess().getExpressionComparisonExpressionParserRuleCall_0()); + + } + + + } + + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__ExpressionArgument__ExpressionAssignment" + + + // $ANTLR start "rule__TypedVariableArgument__TypeReferenceAssignment_0" + // InternalSolverLanguageParser.g:11734:1: rule__TypedVariableArgument__TypeReferenceAssignment_0 : ( ruleTypeReference ) ; + public final void rule__TypedVariableArgument__TypeReferenceAssignment_0() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:11738:1: ( ( ruleTypeReference ) ) + // InternalSolverLanguageParser.g:11739:2: ( ruleTypeReference ) + { + // InternalSolverLanguageParser.g:11739:2: ( ruleTypeReference ) + // InternalSolverLanguageParser.g:11740:3: ruleTypeReference + { + before(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); + pushFollow(FOLLOW_2); + ruleTypeReference(); state._fsp--; - after(grammarAccess.getAggregationAccess().getOpNamedElementQualifiedNameParserRuleCall_0_0_1()); + after(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); + + } + } - after(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0()); + } + catch (RecognitionException re) { + reportError(re); + recover(input,re); + } + finally { + + restoreStackSize(stackSize); + + } + return ; + } + // $ANTLR end "rule__TypedVariableArgument__TypeReferenceAssignment_0" + + + // $ANTLR start "rule__TypedVariableArgument__NameAssignment_1" + // InternalSolverLanguageParser.g:11749:1: rule__TypedVariableArgument__NameAssignment_1 : ( RULE_ID ) ; + public final void rule__TypedVariableArgument__NameAssignment_1() throws RecognitionException { + + int stackSize = keepStackSize(); + + try { + // InternalSolverLanguageParser.g:11753:1: ( ( RULE_ID ) ) + // InternalSolverLanguageParser.g:11754:2: ( RULE_ID ) + { + // InternalSolverLanguageParser.g:11754:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:11755:3: RULE_ID + { + before(grammarAccess.getTypedVariableArgumentAccess().getNameIDTerminalRuleCall_1_0()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getTypedVariableArgumentAccess().getNameIDTerminalRuleCall_1_0()); } @@ -30704,29 +35596,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__OpAssignment_0" + // $ANTLR end "rule__TypedVariableArgument__NameAssignment_1" - // $ANTLR start "rule__Aggregation__LocalVariablesAssignment_1" - // InternalSolverLanguageParser.g:10140:1: rule__Aggregation__LocalVariablesAssignment_1 : ( ruleLocalVariables ) ; - public final void rule__Aggregation__LocalVariablesAssignment_1() throws RecognitionException { + // $ANTLR start "rule__TypedStarArgument__TypeReferenceAssignment_0" + // InternalSolverLanguageParser.g:11764:1: rule__TypedStarArgument__TypeReferenceAssignment_0 : ( ruleTypeReference ) ; + public final void rule__TypedStarArgument__TypeReferenceAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10144:1: ( ( ruleLocalVariables ) ) - // InternalSolverLanguageParser.g:10145:2: ( ruleLocalVariables ) + // InternalSolverLanguageParser.g:11768:1: ( ( ruleTypeReference ) ) + // InternalSolverLanguageParser.g:11769:2: ( ruleTypeReference ) { - // InternalSolverLanguageParser.g:10145:2: ( ruleLocalVariables ) - // InternalSolverLanguageParser.g:10146:3: ruleLocalVariables + // InternalSolverLanguageParser.g:11769:2: ( ruleTypeReference ) + // InternalSolverLanguageParser.g:11770:3: ruleTypeReference { - before(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); + before(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); pushFollow(FOLLOW_2); - ruleLocalVariables(); + ruleTypeReference(); state._fsp--; - after(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); + after(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); } @@ -30745,29 +35637,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__LocalVariablesAssignment_1" + // $ANTLR end "rule__TypedStarArgument__TypeReferenceAssignment_0" - // $ANTLR start "rule__Aggregation__BodyAssignment_3" - // InternalSolverLanguageParser.g:10155:1: rule__Aggregation__BodyAssignment_3 : ( ruleExpression ) ; - public final void rule__Aggregation__BodyAssignment_3() throws RecognitionException { + // $ANTLR start "rule__Reference__ComponentsAssignment_0" + // InternalSolverLanguageParser.g:11779:1: rule__Reference__ComponentsAssignment_0 : ( rulePathComponent ) ; + public final void rule__Reference__ComponentsAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10159:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:10160:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11783:1: ( ( rulePathComponent ) ) + // InternalSolverLanguageParser.g:11784:2: ( rulePathComponent ) { - // InternalSolverLanguageParser.g:10160:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:10161:3: ruleExpression + // InternalSolverLanguageParser.g:11784:2: ( rulePathComponent ) + // InternalSolverLanguageParser.g:11785:3: rulePathComponent { - before(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0()); + before(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_0_0()); pushFollow(FOLLOW_2); - ruleExpression(); + rulePathComponent(); state._fsp--; - after(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0()); + after(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_0_0()); } @@ -30786,29 +35678,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__BodyAssignment_3" + // $ANTLR end "rule__Reference__ComponentsAssignment_0" - // $ANTLR start "rule__Aggregation__ConditionAssignment_4_1" - // InternalSolverLanguageParser.g:10170:1: rule__Aggregation__ConditionAssignment_4_1 : ( ruleExpression ) ; - public final void rule__Aggregation__ConditionAssignment_4_1() throws RecognitionException { + // $ANTLR start "rule__Reference__ComponentsAssignment_1_1" + // InternalSolverLanguageParser.g:11794:1: rule__Reference__ComponentsAssignment_1_1 : ( rulePathComponent ) ; + public final void rule__Reference__ComponentsAssignment_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10174:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:10175:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11798:1: ( ( rulePathComponent ) ) + // InternalSolverLanguageParser.g:11799:2: ( rulePathComponent ) { - // InternalSolverLanguageParser.g:10175:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:10176:3: ruleExpression + // InternalSolverLanguageParser.g:11799:2: ( rulePathComponent ) + // InternalSolverLanguageParser.g:11800:3: rulePathComponent { - before(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0()); + before(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_1_1_0()); pushFollow(FOLLOW_2); - ruleExpression(); + rulePathComponent(); state._fsp--; - after(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0()); + after(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_1_1_0()); } @@ -30827,29 +35719,33 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Aggregation__ConditionAssignment_4_1" + // $ANTLR end "rule__Reference__ComponentsAssignment_1_1" - // $ANTLR start "rule__Call__FunctorAssignment_0" - // InternalSolverLanguageParser.g:10185:1: rule__Call__FunctorAssignment_0 : ( ruleReference ) ; - public final void rule__Call__FunctorAssignment_0() throws RecognitionException { + // $ANTLR start "rule__PathComponent__InverseAssignment_0" + // InternalSolverLanguageParser.g:11809:1: rule__PathComponent__InverseAssignment_0 : ( ( Tilde ) ) ; + public final void rule__PathComponent__InverseAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10189:1: ( ( ruleReference ) ) - // InternalSolverLanguageParser.g:10190:2: ( ruleReference ) + // InternalSolverLanguageParser.g:11813:1: ( ( ( Tilde ) ) ) + // InternalSolverLanguageParser.g:11814:2: ( ( Tilde ) ) { - // InternalSolverLanguageParser.g:10190:2: ( ruleReference ) - // InternalSolverLanguageParser.g:10191:3: ruleReference + // InternalSolverLanguageParser.g:11814:2: ( ( Tilde ) ) + // InternalSolverLanguageParser.g:11815:3: ( Tilde ) { - before(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); - pushFollow(FOLLOW_2); - ruleReference(); + before(grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); + // InternalSolverLanguageParser.g:11816:3: ( Tilde ) + // InternalSolverLanguageParser.g:11817:4: Tilde + { + before(grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); + match(input,Tilde,FOLLOW_2); + after(grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); - state._fsp--; + } - after(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); + after(grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); } @@ -30868,25 +35764,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__FunctorAssignment_0" + // $ANTLR end "rule__PathComponent__InverseAssignment_0" - // $ANTLR start "rule__Call__TransitiveClosureAssignment_1_0" - // InternalSolverLanguageParser.g:10200:1: rule__Call__TransitiveClosureAssignment_1_0 : ( RULE_TRANSITIVE_CLOSURE ) ; - public final void rule__Call__TransitiveClosureAssignment_1_0() throws RecognitionException { + // $ANTLR start "rule__PathComponent__SymbolAssignment_1" + // InternalSolverLanguageParser.g:11828:1: rule__PathComponent__SymbolAssignment_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__PathComponent__SymbolAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10204:1: ( ( RULE_TRANSITIVE_CLOSURE ) ) - // InternalSolverLanguageParser.g:10205:2: ( RULE_TRANSITIVE_CLOSURE ) + // InternalSolverLanguageParser.g:11832:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:11833:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10205:2: ( RULE_TRANSITIVE_CLOSURE ) - // InternalSolverLanguageParser.g:10206:3: RULE_TRANSITIVE_CLOSURE + // InternalSolverLanguageParser.g:11833:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11834:3: ( ruleQualifiedName ) { - before(grammarAccess.getCallAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0()); - match(input,RULE_TRANSITIVE_CLOSURE,FOLLOW_2); - after(grammarAccess.getCallAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0()); + before(grammarAccess.getPathComponentAccess().getSymbolSymbolCrossReference_1_0()); + // InternalSolverLanguageParser.g:11835:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11836:4: ruleQualifiedName + { + before(grammarAccess.getPathComponentAccess().getSymbolSymbolQualifiedNameParserRuleCall_1_0_1()); + pushFollow(FOLLOW_2); + ruleQualifiedName(); + + state._fsp--; + + after(grammarAccess.getPathComponentAccess().getSymbolSymbolQualifiedNameParserRuleCall_1_0_1()); + + } + + after(grammarAccess.getPathComponentAccess().getSymbolSymbolCrossReference_1_0()); } @@ -30905,25 +35813,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__TransitiveClosureAssignment_1_0" + // $ANTLR end "rule__PathComponent__SymbolAssignment_1" - // $ANTLR start "rule__Call__ReflexiveTransitiveClosureAssignment_1_1" - // InternalSolverLanguageParser.g:10215:1: rule__Call__ReflexiveTransitiveClosureAssignment_1_1 : ( RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ; - public final void rule__Call__ReflexiveTransitiveClosureAssignment_1_1() throws RecognitionException { + // $ANTLR start "rule__PathComponent__TransitiveClosureAssignment_2_0" + // InternalSolverLanguageParser.g:11847:1: rule__PathComponent__TransitiveClosureAssignment_2_0 : ( RULE_TRANSITIVE_CLOSURE ) ; + public final void rule__PathComponent__TransitiveClosureAssignment_2_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10219:1: ( ( RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) - // InternalSolverLanguageParser.g:10220:2: ( RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) + // InternalSolverLanguageParser.g:11851:1: ( ( RULE_TRANSITIVE_CLOSURE ) ) + // InternalSolverLanguageParser.g:11852:2: ( RULE_TRANSITIVE_CLOSURE ) { - // InternalSolverLanguageParser.g:10220:2: ( RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) - // InternalSolverLanguageParser.g:10221:3: RULE_REFLEXIVE_TRANSITIVE_CLOSURE + // InternalSolverLanguageParser.g:11852:2: ( RULE_TRANSITIVE_CLOSURE ) + // InternalSolverLanguageParser.g:11853:3: RULE_TRANSITIVE_CLOSURE { - before(grammarAccess.getCallAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0()); - match(input,RULE_REFLEXIVE_TRANSITIVE_CLOSURE,FOLLOW_2); - after(grammarAccess.getCallAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0()); + before(grammarAccess.getPathComponentAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0()); + match(input,RULE_TRANSITIVE_CLOSURE,FOLLOW_2); + after(grammarAccess.getPathComponentAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0()); } @@ -30942,29 +35850,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__ReflexiveTransitiveClosureAssignment_1_1" + // $ANTLR end "rule__PathComponent__TransitiveClosureAssignment_2_0" - // $ANTLR start "rule__Call__ArgumentListAssignment_2" - // InternalSolverLanguageParser.g:10230:1: rule__Call__ArgumentListAssignment_2 : ( ruleArgumentList ) ; - public final void rule__Call__ArgumentListAssignment_2() throws RecognitionException { + // $ANTLR start "rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1" + // InternalSolverLanguageParser.g:11862:1: rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1 : ( RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ; + public final void rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10234:1: ( ( ruleArgumentList ) ) - // InternalSolverLanguageParser.g:10235:2: ( ruleArgumentList ) + // InternalSolverLanguageParser.g:11866:1: ( ( RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) + // InternalSolverLanguageParser.g:11867:2: ( RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) { - // InternalSolverLanguageParser.g:10235:2: ( ruleArgumentList ) - // InternalSolverLanguageParser.g:10236:3: ruleArgumentList + // InternalSolverLanguageParser.g:11867:2: ( RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) + // InternalSolverLanguageParser.g:11868:3: RULE_REFLEXIVE_TRANSITIVE_CLOSURE { - before(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_2_0()); - pushFollow(FOLLOW_2); - ruleArgumentList(); - - state._fsp--; - - after(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_2_0()); + before(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0()); + match(input,RULE_REFLEXIVE_TRANSITIVE_CLOSURE,FOLLOW_2); + after(grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0()); } @@ -30983,29 +35887,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Call__ArgumentListAssignment_2" + // $ANTLR end "rule__PathComponent__ReflexiveTransitiveClosureAssignment_2_1" - // $ANTLR start "rule__ArgumentList__ArgumentsAssignment_2_0" - // InternalSolverLanguageParser.g:10245:1: rule__ArgumentList__ArgumentsAssignment_2_0 : ( ruleArgument ) ; - public final void rule__ArgumentList__ArgumentsAssignment_2_0() throws RecognitionException { + // $ANTLR start "rule__Interval__LowerBoundAssignment_1" + // InternalSolverLanguageParser.g:11877:1: rule__Interval__LowerBoundAssignment_1 : ( ruleAdditiveExpression ) ; + public final void rule__Interval__LowerBoundAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10249:1: ( ( ruleArgument ) ) - // InternalSolverLanguageParser.g:10250:2: ( ruleArgument ) + // InternalSolverLanguageParser.g:11881:1: ( ( ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:11882:2: ( ruleAdditiveExpression ) { - // InternalSolverLanguageParser.g:10250:2: ( ruleArgument ) - // InternalSolverLanguageParser.g:10251:3: ruleArgument + // InternalSolverLanguageParser.g:11882:2: ( ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:11883:3: ruleAdditiveExpression { - before(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); + before(grammarAccess.getIntervalAccess().getLowerBoundAdditiveExpressionParserRuleCall_1_0()); pushFollow(FOLLOW_2); - ruleArgument(); + ruleAdditiveExpression(); state._fsp--; - after(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); + after(grammarAccess.getIntervalAccess().getLowerBoundAdditiveExpressionParserRuleCall_1_0()); } @@ -31024,29 +35928,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__ArgumentsAssignment_2_0" + // $ANTLR end "rule__Interval__LowerBoundAssignment_1" - // $ANTLR start "rule__ArgumentList__ArgumentsAssignment_2_1_1" - // InternalSolverLanguageParser.g:10260:1: rule__ArgumentList__ArgumentsAssignment_2_1_1 : ( ruleArgument ) ; - public final void rule__ArgumentList__ArgumentsAssignment_2_1_1() throws RecognitionException { + // $ANTLR start "rule__Interval__UpperBoundAssignment_3" + // InternalSolverLanguageParser.g:11892:1: rule__Interval__UpperBoundAssignment_3 : ( ruleAdditiveExpression ) ; + public final void rule__Interval__UpperBoundAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10264:1: ( ( ruleArgument ) ) - // InternalSolverLanguageParser.g:10265:2: ( ruleArgument ) + // InternalSolverLanguageParser.g:11896:1: ( ( ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:11897:2: ( ruleAdditiveExpression ) { - // InternalSolverLanguageParser.g:10265:2: ( ruleArgument ) - // InternalSolverLanguageParser.g:10266:3: ruleArgument + // InternalSolverLanguageParser.g:11897:2: ( ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:11898:3: ruleAdditiveExpression { - before(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); + before(grammarAccess.getIntervalAccess().getUpperBoundAdditiveExpressionParserRuleCall_3_0()); pushFollow(FOLLOW_2); - ruleArgument(); + ruleAdditiveExpression(); state._fsp--; - after(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); + after(grammarAccess.getIntervalAccess().getUpperBoundAdditiveExpressionParserRuleCall_3_0()); } @@ -31065,29 +35969,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ArgumentList__ArgumentsAssignment_2_1_1" + // $ANTLR end "rule__Interval__UpperBoundAssignment_3" - // $ANTLR start "rule__ExpressionArgument__BodyAssignment" - // InternalSolverLanguageParser.g:10275:1: rule__ExpressionArgument__BodyAssignment : ( ruleComparisonExpression ) ; - public final void rule__ExpressionArgument__BodyAssignment() throws RecognitionException { + // $ANTLR start "rule__LogicLiteral__ValueAssignment" + // InternalSolverLanguageParser.g:11907:1: rule__LogicLiteral__ValueAssignment : ( ruleLogicValue ) ; + public final void rule__LogicLiteral__ValueAssignment() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10279:1: ( ( ruleComparisonExpression ) ) - // InternalSolverLanguageParser.g:10280:2: ( ruleComparisonExpression ) + // InternalSolverLanguageParser.g:11911:1: ( ( ruleLogicValue ) ) + // InternalSolverLanguageParser.g:11912:2: ( ruleLogicValue ) { - // InternalSolverLanguageParser.g:10280:2: ( ruleComparisonExpression ) - // InternalSolverLanguageParser.g:10281:3: ruleComparisonExpression + // InternalSolverLanguageParser.g:11912:2: ( ruleLogicValue ) + // InternalSolverLanguageParser.g:11913:3: ruleLogicValue { - before(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0()); + before(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); pushFollow(FOLLOW_2); - ruleComparisonExpression(); + ruleLogicValue(); state._fsp--; - after(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0()); + after(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); } @@ -31106,37 +36010,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExpressionArgument__BodyAssignment" + // $ANTLR end "rule__LogicLiteral__ValueAssignment" - // $ANTLR start "rule__TypedArgument__TypeAssignment_0" - // InternalSolverLanguageParser.g:10290:1: rule__TypedArgument__TypeAssignment_0 : ( ( ruleQualifiedName ) ) ; - public final void rule__TypedArgument__TypeAssignment_0() throws RecognitionException { + // $ANTLR start "rule__IntLiteral__ValueAssignment" + // InternalSolverLanguageParser.g:11922:1: rule__IntLiteral__ValueAssignment : ( RULE_INT ) ; + public final void rule__IntLiteral__ValueAssignment() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10294:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10295:2: ( ( ruleQualifiedName ) ) - { - // InternalSolverLanguageParser.g:10295:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10296:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11926:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:11927:2: ( RULE_INT ) { - before(grammarAccess.getTypedArgumentAccess().getTypeNamedElementCrossReference_0_0()); - // InternalSolverLanguageParser.g:10297:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10298:4: ruleQualifiedName + // InternalSolverLanguageParser.g:11927:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:11928:3: RULE_INT { - before(grammarAccess.getTypedArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); - pushFollow(FOLLOW_2); - ruleQualifiedName(); - - state._fsp--; - - after(grammarAccess.getTypedArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); - - } - - after(grammarAccess.getTypedArgumentAccess().getTypeNamedElementCrossReference_0_0()); + before(grammarAccess.getIntLiteralAccess().getValueINTTerminalRuleCall_0()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getIntLiteralAccess().getValueINTTerminalRuleCall_0()); } @@ -31155,37 +36047,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedArgument__TypeAssignment_0" + // $ANTLR end "rule__IntLiteral__ValueAssignment" - // $ANTLR start "rule__TypedArgument__VariableAssignment_1" - // InternalSolverLanguageParser.g:10309:1: rule__TypedArgument__VariableAssignment_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__TypedArgument__VariableAssignment_1() throws RecognitionException { + // $ANTLR start "rule__RealLiteral__ValueAssignment" + // InternalSolverLanguageParser.g:11937:1: rule__RealLiteral__ValueAssignment : ( ruleReal ) ; + public final void rule__RealLiteral__ValueAssignment() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10313:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10314:2: ( ( ruleQualifiedName ) ) - { - // InternalSolverLanguageParser.g:10314:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10315:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11941:1: ( ( ruleReal ) ) + // InternalSolverLanguageParser.g:11942:2: ( ruleReal ) { - before(grammarAccess.getTypedArgumentAccess().getVariableNamedElementCrossReference_1_0()); - // InternalSolverLanguageParser.g:10316:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10317:4: ruleQualifiedName + // InternalSolverLanguageParser.g:11942:2: ( ruleReal ) + // InternalSolverLanguageParser.g:11943:3: ruleReal { - before(grammarAccess.getTypedArgumentAccess().getVariableNamedElementQualifiedNameParserRuleCall_1_0_1()); + before(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_0()); pushFollow(FOLLOW_2); - ruleQualifiedName(); + ruleReal(); state._fsp--; - after(grammarAccess.getTypedArgumentAccess().getVariableNamedElementQualifiedNameParserRuleCall_1_0_1()); - - } - - after(grammarAccess.getTypedArgumentAccess().getVariableNamedElementCrossReference_1_0()); + after(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_0()); } @@ -31204,37 +36088,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedArgument__VariableAssignment_1" + // $ANTLR end "rule__RealLiteral__ValueAssignment" - // $ANTLR start "rule__TypedStarArgument__TypeAssignment_0" - // InternalSolverLanguageParser.g:10328:1: rule__TypedStarArgument__TypeAssignment_0 : ( ( ruleQualifiedName ) ) ; - public final void rule__TypedStarArgument__TypeAssignment_0() throws RecognitionException { + // $ANTLR start "rule__StringLiteral__ValueAssignment" + // InternalSolverLanguageParser.g:11952:1: rule__StringLiteral__ValueAssignment : ( RULE_STRING ) ; + public final void rule__StringLiteral__ValueAssignment() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10332:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10333:2: ( ( ruleQualifiedName ) ) - { - // InternalSolverLanguageParser.g:10333:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10334:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11956:1: ( ( RULE_STRING ) ) + // InternalSolverLanguageParser.g:11957:2: ( RULE_STRING ) { - before(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementCrossReference_0_0()); - // InternalSolverLanguageParser.g:10335:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10336:4: ruleQualifiedName + // InternalSolverLanguageParser.g:11957:2: ( RULE_STRING ) + // InternalSolverLanguageParser.g:11958:3: RULE_STRING { - before(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); - pushFollow(FOLLOW_2); - ruleQualifiedName(); - - state._fsp--; - - after(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1()); - - } - - after(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementCrossReference_0_0()); + before(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_0()); + match(input,RULE_STRING,FOLLOW_2); + after(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_0()); } @@ -31253,37 +36125,33 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__TypedStarArgument__TypeAssignment_0" + // $ANTLR end "rule__StringLiteral__ValueAssignment" - // $ANTLR start "rule__Reference__ReferredAssignment" - // InternalSolverLanguageParser.g:10347:1: rule__Reference__ReferredAssignment : ( ( ruleQualifiedName ) ) ; - public final void rule__Reference__ReferredAssignment() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__AbstractAssignment_0_0" + // InternalSolverLanguageParser.g:11967:1: rule__ClassDeclaration__AbstractAssignment_0_0 : ( ( Abstract ) ) ; + public final void rule__ClassDeclaration__AbstractAssignment_0_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10351:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10352:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:11971:1: ( ( ( Abstract ) ) ) + // InternalSolverLanguageParser.g:11972:2: ( ( Abstract ) ) { - // InternalSolverLanguageParser.g:10352:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10353:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:11972:2: ( ( Abstract ) ) + // InternalSolverLanguageParser.g:11973:3: ( Abstract ) { - before(grammarAccess.getReferenceAccess().getReferredNamedElementCrossReference_0()); - // InternalSolverLanguageParser.g:10354:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10355:4: ruleQualifiedName + before(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); + // InternalSolverLanguageParser.g:11974:3: ( Abstract ) + // InternalSolverLanguageParser.g:11975:4: Abstract { - before(grammarAccess.getReferenceAccess().getReferredNamedElementQualifiedNameParserRuleCall_0_1()); - pushFollow(FOLLOW_2); - ruleQualifiedName(); - - state._fsp--; - - after(grammarAccess.getReferenceAccess().getReferredNamedElementQualifiedNameParserRuleCall_0_1()); + before(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); + match(input,Abstract,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); } - after(grammarAccess.getReferenceAccess().getReferredNamedElementCrossReference_0()); + after(grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); } @@ -31302,29 +36170,33 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Reference__ReferredAssignment" + // $ANTLR end "rule__ClassDeclaration__AbstractAssignment_0_0" - // $ANTLR start "rule__Interval__LowerBoundAssignment_1" - // InternalSolverLanguageParser.g:10366:1: rule__Interval__LowerBoundAssignment_1 : ( ruleExpression ) ; - public final void rule__Interval__LowerBoundAssignment_1() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__RootAssignment_0_1" + // InternalSolverLanguageParser.g:11986:1: rule__ClassDeclaration__RootAssignment_0_1 : ( ( Root ) ) ; + public final void rule__ClassDeclaration__RootAssignment_0_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10370:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:10371:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:11990:1: ( ( ( Root ) ) ) + // InternalSolverLanguageParser.g:11991:2: ( ( Root ) ) { - // InternalSolverLanguageParser.g:10371:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:10372:3: ruleExpression + // InternalSolverLanguageParser.g:11991:2: ( ( Root ) ) + // InternalSolverLanguageParser.g:11992:3: ( Root ) { - before(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0()); - pushFollow(FOLLOW_2); - ruleExpression(); + before(grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); + // InternalSolverLanguageParser.g:11993:3: ( Root ) + // InternalSolverLanguageParser.g:11994:4: Root + { + before(grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); + match(input,Root,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); - state._fsp--; + } - after(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0()); + after(grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); } @@ -31343,29 +36215,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__LowerBoundAssignment_1" + // $ANTLR end "rule__ClassDeclaration__RootAssignment_0_1" - // $ANTLR start "rule__Interval__UpperBoundAssignment_3" - // InternalSolverLanguageParser.g:10381:1: rule__Interval__UpperBoundAssignment_3 : ( ruleExpression ) ; - public final void rule__Interval__UpperBoundAssignment_3() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__NameAssignment_2" + // InternalSolverLanguageParser.g:12005:1: rule__ClassDeclaration__NameAssignment_2 : ( RULE_ID ) ; + public final void rule__ClassDeclaration__NameAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10385:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:10386:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:12009:1: ( ( RULE_ID ) ) + // InternalSolverLanguageParser.g:12010:2: ( RULE_ID ) { - // InternalSolverLanguageParser.g:10386:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:10387:3: ruleExpression + // InternalSolverLanguageParser.g:12010:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:12011:3: RULE_ID { - before(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0()); - pushFollow(FOLLOW_2); - ruleExpression(); - - state._fsp--; - - after(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0()); + before(grammarAccess.getClassDeclarationAccess().getNameIDTerminalRuleCall_2_0()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getClassDeclarationAccess().getNameIDTerminalRuleCall_2_0()); } @@ -31384,29 +36252,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__Interval__UpperBoundAssignment_3" + // $ANTLR end "rule__ClassDeclaration__NameAssignment_2" - // $ANTLR start "rule__LogicLiteral__ValueAssignment" - // InternalSolverLanguageParser.g:10396:1: rule__LogicLiteral__ValueAssignment : ( ruleLogicValue ) ; - public final void rule__LogicLiteral__ValueAssignment() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__SupertypesAssignment_3_1" + // InternalSolverLanguageParser.g:12020:1: rule__ClassDeclaration__SupertypesAssignment_3_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__ClassDeclaration__SupertypesAssignment_3_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10400:1: ( ( ruleLogicValue ) ) - // InternalSolverLanguageParser.g:10401:2: ( ruleLogicValue ) + // InternalSolverLanguageParser.g:12024:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12025:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10401:2: ( ruleLogicValue ) - // InternalSolverLanguageParser.g:10402:3: ruleLogicValue + // InternalSolverLanguageParser.g:12025:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12026:3: ( ruleQualifiedName ) { - before(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); + before(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_1_0()); + // InternalSolverLanguageParser.g:12027:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12028:4: ruleQualifiedName + { + before(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolQualifiedNameParserRuleCall_3_1_0_1()); pushFollow(FOLLOW_2); - ruleLogicValue(); + ruleQualifiedName(); state._fsp--; - after(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); + after(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolQualifiedNameParserRuleCall_3_1_0_1()); + + } + + after(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_1_0()); } @@ -31425,29 +36301,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LogicLiteral__ValueAssignment" + // $ANTLR end "rule__ClassDeclaration__SupertypesAssignment_3_1" - // $ANTLR start "rule__NumericLiteral__ValueAssignment" - // InternalSolverLanguageParser.g:10411:1: rule__NumericLiteral__ValueAssignment : ( ruleReal ) ; - public final void rule__NumericLiteral__ValueAssignment() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__SupertypesAssignment_3_2_1" + // InternalSolverLanguageParser.g:12039:1: rule__ClassDeclaration__SupertypesAssignment_3_2_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__ClassDeclaration__SupertypesAssignment_3_2_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10415:1: ( ( ruleReal ) ) - // InternalSolverLanguageParser.g:10416:2: ( ruleReal ) + // InternalSolverLanguageParser.g:12043:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12044:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10416:2: ( ruleReal ) - // InternalSolverLanguageParser.g:10417:3: ruleReal + // InternalSolverLanguageParser.g:12044:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12045:3: ( ruleQualifiedName ) { - before(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0()); + before(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_2_1_0()); + // InternalSolverLanguageParser.g:12046:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12047:4: ruleQualifiedName + { + before(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolQualifiedNameParserRuleCall_3_2_1_0_1()); pushFollow(FOLLOW_2); - ruleReal(); + ruleQualifiedName(); state._fsp--; - after(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0()); + after(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolQualifiedNameParserRuleCall_3_2_1_0_1()); + + } + + after(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_2_1_0()); } @@ -31466,25 +36350,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__NumericLiteral__ValueAssignment" + // $ANTLR end "rule__ClassDeclaration__SupertypesAssignment_3_2_1" - // $ANTLR start "rule__StringLiteral__ValueAssignment" - // InternalSolverLanguageParser.g:10426:1: rule__StringLiteral__ValueAssignment : ( RULE_STRING ) ; - public final void rule__StringLiteral__ValueAssignment() throws RecognitionException { + // $ANTLR start "rule__ClassDeclaration__FieldsAssignment_4_0_1" + // InternalSolverLanguageParser.g:12058:1: rule__ClassDeclaration__FieldsAssignment_4_0_1 : ( ruleField ) ; + public final void rule__ClassDeclaration__FieldsAssignment_4_0_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10430:1: ( ( RULE_STRING ) ) - // InternalSolverLanguageParser.g:10431:2: ( RULE_STRING ) + // InternalSolverLanguageParser.g:12062:1: ( ( ruleField ) ) + // InternalSolverLanguageParser.g:12063:2: ( ruleField ) { - // InternalSolverLanguageParser.g:10431:2: ( RULE_STRING ) - // InternalSolverLanguageParser.g:10432:3: RULE_STRING + // InternalSolverLanguageParser.g:12063:2: ( ruleField ) + // InternalSolverLanguageParser.g:12064:3: ruleField { - before(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_0()); - match(input,RULE_STRING,FOLLOW_2); - after(grammarAccess.getStringLiteralAccess().getValueSTRINGTerminalRuleCall_0()); + before(grammarAccess.getClassDeclarationAccess().getFieldsFieldParserRuleCall_4_0_1_0()); + pushFollow(FOLLOW_2); + ruleField(); + + state._fsp--; + + after(grammarAccess.getClassDeclarationAccess().getFieldsFieldParserRuleCall_4_0_1_0()); } @@ -31503,33 +36391,33 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__StringLiteral__ValueAssignment" + // $ANTLR end "rule__ClassDeclaration__FieldsAssignment_4_0_1" - // $ANTLR start "rule__ClassDefinition__AbstractAssignment_0" - // InternalSolverLanguageParser.g:10441:1: rule__ClassDefinition__AbstractAssignment_0 : ( ( Abstract ) ) ; - public final void rule__ClassDefinition__AbstractAssignment_0() throws RecognitionException { + // $ANTLR start "rule__Field__ContainmentAssignment_0_0" + // InternalSolverLanguageParser.g:12073:1: rule__Field__ContainmentAssignment_0_0 : ( ( Contains ) ) ; + public final void rule__Field__ContainmentAssignment_0_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10445:1: ( ( ( Abstract ) ) ) - // InternalSolverLanguageParser.g:10446:2: ( ( Abstract ) ) + // InternalSolverLanguageParser.g:12077:1: ( ( ( Contains ) ) ) + // InternalSolverLanguageParser.g:12078:2: ( ( Contains ) ) { - // InternalSolverLanguageParser.g:10446:2: ( ( Abstract ) ) - // InternalSolverLanguageParser.g:10447:3: ( Abstract ) + // InternalSolverLanguageParser.g:12078:2: ( ( Contains ) ) + // InternalSolverLanguageParser.g:12079:3: ( Contains ) { - before(grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); - // InternalSolverLanguageParser.g:10448:3: ( Abstract ) - // InternalSolverLanguageParser.g:10449:4: Abstract + before(grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); + // InternalSolverLanguageParser.g:12080:3: ( Contains ) + // InternalSolverLanguageParser.g:12081:4: Contains { - before(grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); - match(input,Abstract,FOLLOW_2); - after(grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); + before(grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); + match(input,Contains,FOLLOW_2); + after(grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); } - after(grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); + after(grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); } @@ -31548,25 +36436,33 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__AbstractAssignment_0" + // $ANTLR end "rule__Field__ContainmentAssignment_0_0" - // $ANTLR start "rule__ClassDefinition__NameAssignment_2" - // InternalSolverLanguageParser.g:10460:1: rule__ClassDefinition__NameAssignment_2 : ( RULE_ID ) ; - public final void rule__ClassDefinition__NameAssignment_2() throws RecognitionException { + // $ANTLR start "rule__Field__CrossReferenceAssignment_0_1" + // InternalSolverLanguageParser.g:12092:1: rule__Field__CrossReferenceAssignment_0_1 : ( ( Refers ) ) ; + public final void rule__Field__CrossReferenceAssignment_0_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10464:1: ( ( RULE_ID ) ) - // InternalSolverLanguageParser.g:10465:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:12096:1: ( ( ( Refers ) ) ) + // InternalSolverLanguageParser.g:12097:2: ( ( Refers ) ) { - // InternalSolverLanguageParser.g:10465:2: ( RULE_ID ) - // InternalSolverLanguageParser.g:10466:3: RULE_ID + // InternalSolverLanguageParser.g:12097:2: ( ( Refers ) ) + // InternalSolverLanguageParser.g:12098:3: ( Refers ) { - before(grammarAccess.getClassDefinitionAccess().getNameIDTerminalRuleCall_2_0()); - match(input,RULE_ID,FOLLOW_2); - after(grammarAccess.getClassDefinitionAccess().getNameIDTerminalRuleCall_2_0()); + before(grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); + // InternalSolverLanguageParser.g:12099:3: ( Refers ) + // InternalSolverLanguageParser.g:12100:4: Refers + { + before(grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); + match(input,Refers,FOLLOW_2); + after(grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); + + } + + after(grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); } @@ -31585,37 +36481,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__NameAssignment_2" + // $ANTLR end "rule__Field__CrossReferenceAssignment_0_1" - // $ANTLR start "rule__ClassDefinition__SuperclassesAssignment_3_1" - // InternalSolverLanguageParser.g:10475:1: rule__ClassDefinition__SuperclassesAssignment_3_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__ClassDefinition__SuperclassesAssignment_3_1() throws RecognitionException { + // $ANTLR start "rule__Field__TypeAssignment_1" + // InternalSolverLanguageParser.g:12111:1: rule__Field__TypeAssignment_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__Field__TypeAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10479:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10480:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12115:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12116:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10480:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10481:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12116:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12117:3: ( ruleQualifiedName ) { - before(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_1_0()); - // InternalSolverLanguageParser.g:10482:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10483:4: ruleQualifiedName + before(grammarAccess.getFieldAccess().getTypeSymbolCrossReference_1_0()); + // InternalSolverLanguageParser.g:12118:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12119:4: ruleQualifiedName { - before(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); + before(grammarAccess.getFieldAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementQualifiedNameParserRuleCall_3_1_0_1()); + after(grammarAccess.getFieldAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } - after(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_1_0()); + after(grammarAccess.getFieldAccess().getTypeSymbolCrossReference_1_0()); } @@ -31634,37 +36530,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__SuperclassesAssignment_3_1" + // $ANTLR end "rule__Field__TypeAssignment_1" - // $ANTLR start "rule__ClassDefinition__SuperclassesAssignment_3_2_1" - // InternalSolverLanguageParser.g:10494:1: rule__ClassDefinition__SuperclassesAssignment_3_2_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__ClassDefinition__SuperclassesAssignment_3_2_1() throws RecognitionException { + // $ANTLR start "rule__Field__MultiplicityAssignment_2" + // InternalSolverLanguageParser.g:12130:1: rule__Field__MultiplicityAssignment_2 : ( ruleMultiplicity ) ; + public final void rule__Field__MultiplicityAssignment_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10498:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10499:2: ( ( ruleQualifiedName ) ) - { - // InternalSolverLanguageParser.g:10499:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10500:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12134:1: ( ( ruleMultiplicity ) ) + // InternalSolverLanguageParser.g:12135:2: ( ruleMultiplicity ) { - before(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_2_1_0()); - // InternalSolverLanguageParser.g:10501:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10502:4: ruleQualifiedName + // InternalSolverLanguageParser.g:12135:2: ( ruleMultiplicity ) + // InternalSolverLanguageParser.g:12136:3: ruleMultiplicity { - before(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); + before(grammarAccess.getFieldAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); pushFollow(FOLLOW_2); - ruleQualifiedName(); + ruleMultiplicity(); state._fsp--; - after(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1()); - - } - - after(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_2_1_0()); + after(grammarAccess.getFieldAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); } @@ -31683,29 +36571,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__SuperclassesAssignment_3_2_1" + // $ANTLR end "rule__Field__MultiplicityAssignment_2" - // $ANTLR start "rule__ClassDefinition__MembersAssignment_5" - // InternalSolverLanguageParser.g:10513:1: rule__ClassDefinition__MembersAssignment_5 : ( ruleMemberDefinition ) ; - public final void rule__ClassDefinition__MembersAssignment_5() throws RecognitionException { + // $ANTLR start "rule__Field__NameAssignment_3" + // InternalSolverLanguageParser.g:12145:1: rule__Field__NameAssignment_3 : ( RULE_ID ) ; + public final void rule__Field__NameAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10517:1: ( ( ruleMemberDefinition ) ) - // InternalSolverLanguageParser.g:10518:2: ( ruleMemberDefinition ) + // InternalSolverLanguageParser.g:12149:1: ( ( RULE_ID ) ) + // InternalSolverLanguageParser.g:12150:2: ( RULE_ID ) { - // InternalSolverLanguageParser.g:10518:2: ( ruleMemberDefinition ) - // InternalSolverLanguageParser.g:10519:3: ruleMemberDefinition + // InternalSolverLanguageParser.g:12150:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:12151:3: RULE_ID { - before(grammarAccess.getClassDefinitionAccess().getMembersMemberDefinitionParserRuleCall_5_0()); - pushFollow(FOLLOW_2); - ruleMemberDefinition(); - - state._fsp--; - - after(grammarAccess.getClassDefinitionAccess().getMembersMemberDefinitionParserRuleCall_5_0()); + before(grammarAccess.getFieldAccess().getNameIDTerminalRuleCall_3_0()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getFieldAccess().getNameIDTerminalRuleCall_3_0()); } @@ -31724,33 +36608,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ClassDefinition__MembersAssignment_5" + // $ANTLR end "rule__Field__NameAssignment_3" - // $ANTLR start "rule__MemberDefinition__ContainmentAssignment_0" - // InternalSolverLanguageParser.g:10528:1: rule__MemberDefinition__ContainmentAssignment_0 : ( ( Contains ) ) ; - public final void rule__MemberDefinition__ContainmentAssignment_0() throws RecognitionException { + // $ANTLR start "rule__Field__OppositeAssignment_4_1" + // InternalSolverLanguageParser.g:12160:1: rule__Field__OppositeAssignment_4_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__Field__OppositeAssignment_4_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10532:1: ( ( ( Contains ) ) ) - // InternalSolverLanguageParser.g:10533:2: ( ( Contains ) ) + // InternalSolverLanguageParser.g:12164:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12165:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10533:2: ( ( Contains ) ) - // InternalSolverLanguageParser.g:10534:3: ( Contains ) + // InternalSolverLanguageParser.g:12165:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12166:3: ( ruleQualifiedName ) { - before(grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); - // InternalSolverLanguageParser.g:10535:3: ( Contains ) - // InternalSolverLanguageParser.g:10536:4: Contains + before(grammarAccess.getFieldAccess().getOppositeSymbolCrossReference_4_1_0()); + // InternalSolverLanguageParser.g:12167:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12168:4: ruleQualifiedName { - before(grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); - match(input,Contains,FOLLOW_2); - after(grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); + before(grammarAccess.getFieldAccess().getOppositeSymbolQualifiedNameParserRuleCall_4_1_0_1()); + pushFollow(FOLLOW_2); + ruleQualifiedName(); + + state._fsp--; + + after(grammarAccess.getFieldAccess().getOppositeSymbolQualifiedNameParserRuleCall_4_1_0_1()); } - after(grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); + after(grammarAccess.getFieldAccess().getOppositeSymbolCrossReference_4_1_0()); } @@ -31769,37 +36657,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__ContainmentAssignment_0" + // $ANTLR end "rule__Field__OppositeAssignment_4_1" - // $ANTLR start "rule__MemberDefinition__TypeAssignment_1" - // InternalSolverLanguageParser.g:10547:1: rule__MemberDefinition__TypeAssignment_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__MemberDefinition__TypeAssignment_1() throws RecognitionException { + // $ANTLR start "rule__ExactMultiplicity__ValueAssignment_1" + // InternalSolverLanguageParser.g:12179:1: rule__ExactMultiplicity__ValueAssignment_1 : ( ruleUpperMultiplicty ) ; + public final void rule__ExactMultiplicity__ValueAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10551:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10552:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12183:1: ( ( ruleUpperMultiplicty ) ) + // InternalSolverLanguageParser.g:12184:2: ( ruleUpperMultiplicty ) { - // InternalSolverLanguageParser.g:10552:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10553:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12184:2: ( ruleUpperMultiplicty ) + // InternalSolverLanguageParser.g:12185:3: ruleUpperMultiplicty { - before(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementCrossReference_1_0()); - // InternalSolverLanguageParser.g:10554:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10555:4: ruleQualifiedName - { - before(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); + before(grammarAccess.getExactMultiplicityAccess().getValueUpperMultiplictyParserRuleCall_1_0()); pushFollow(FOLLOW_2); - ruleQualifiedName(); + ruleUpperMultiplicty(); state._fsp--; - after(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); - - } - - after(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + after(grammarAccess.getExactMultiplicityAccess().getValueUpperMultiplictyParserRuleCall_1_0()); } @@ -31818,29 +36698,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__TypeAssignment_1" + // $ANTLR end "rule__ExactMultiplicity__ValueAssignment_1" - // $ANTLR start "rule__MemberDefinition__MultiplicityAssignment_2" - // InternalSolverLanguageParser.g:10566:1: rule__MemberDefinition__MultiplicityAssignment_2 : ( ruleMultiplicity ) ; - public final void rule__MemberDefinition__MultiplicityAssignment_2() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__LowerBoundAssignment_1" + // InternalSolverLanguageParser.g:12194:1: rule__BoundedMultiplicity__LowerBoundAssignment_1 : ( RULE_INT ) ; + public final void rule__BoundedMultiplicity__LowerBoundAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10570:1: ( ( ruleMultiplicity ) ) - // InternalSolverLanguageParser.g:10571:2: ( ruleMultiplicity ) + // InternalSolverLanguageParser.g:12198:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:12199:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:10571:2: ( ruleMultiplicity ) - // InternalSolverLanguageParser.g:10572:3: ruleMultiplicity + // InternalSolverLanguageParser.g:12199:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12200:3: RULE_INT { - before(grammarAccess.getMemberDefinitionAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); - pushFollow(FOLLOW_2); - ruleMultiplicity(); - - state._fsp--; - - after(grammarAccess.getMemberDefinitionAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); + before(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundINTTerminalRuleCall_1_0()); + match(input,RULE_INT,FOLLOW_2); + after(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundINTTerminalRuleCall_1_0()); } @@ -31859,25 +36735,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__MultiplicityAssignment_2" + // $ANTLR end "rule__BoundedMultiplicity__LowerBoundAssignment_1" - // $ANTLR start "rule__MemberDefinition__NameAssignment_3" - // InternalSolverLanguageParser.g:10581:1: rule__MemberDefinition__NameAssignment_3 : ( RULE_ID ) ; - public final void rule__MemberDefinition__NameAssignment_3() throws RecognitionException { + // $ANTLR start "rule__BoundedMultiplicity__UpperBoundAssignment_3" + // InternalSolverLanguageParser.g:12209:1: rule__BoundedMultiplicity__UpperBoundAssignment_3 : ( ruleUpperMultiplicty ) ; + public final void rule__BoundedMultiplicity__UpperBoundAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10585:1: ( ( RULE_ID ) ) - // InternalSolverLanguageParser.g:10586:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:12213:1: ( ( ruleUpperMultiplicty ) ) + // InternalSolverLanguageParser.g:12214:2: ( ruleUpperMultiplicty ) { - // InternalSolverLanguageParser.g:10586:2: ( RULE_ID ) - // InternalSolverLanguageParser.g:10587:3: RULE_ID + // InternalSolverLanguageParser.g:12214:2: ( ruleUpperMultiplicty ) + // InternalSolverLanguageParser.g:12215:3: ruleUpperMultiplicty { - before(grammarAccess.getMemberDefinitionAccess().getNameIDTerminalRuleCall_3_0()); - match(input,RULE_ID,FOLLOW_2); - after(grammarAccess.getMemberDefinitionAccess().getNameIDTerminalRuleCall_3_0()); + before(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundUpperMultiplictyParserRuleCall_3_0()); + pushFollow(FOLLOW_2); + ruleUpperMultiplicty(); + + state._fsp--; + + after(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundUpperMultiplictyParserRuleCall_3_0()); } @@ -31896,37 +36776,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__NameAssignment_3" + // $ANTLR end "rule__BoundedMultiplicity__UpperBoundAssignment_3" - // $ANTLR start "rule__MemberDefinition__OppositeAssignment_4_1" - // InternalSolverLanguageParser.g:10596:1: rule__MemberDefinition__OppositeAssignment_4_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__MemberDefinition__OppositeAssignment_4_1() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__NameAssignment_1" + // InternalSolverLanguageParser.g:12224:1: rule__EnumDeclaration__NameAssignment_1 : ( RULE_ID ) ; + public final void rule__EnumDeclaration__NameAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10600:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10601:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12228:1: ( ( RULE_ID ) ) + // InternalSolverLanguageParser.g:12229:2: ( RULE_ID ) { - // InternalSolverLanguageParser.g:10601:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10602:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12229:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:12230:3: RULE_ID { - before(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementCrossReference_4_1_0()); - // InternalSolverLanguageParser.g:10603:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10604:4: ruleQualifiedName - { - before(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementQualifiedNameParserRuleCall_4_1_0_1()); - pushFollow(FOLLOW_2); - ruleQualifiedName(); - - state._fsp--; - - after(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementQualifiedNameParserRuleCall_4_1_0_1()); - - } - - after(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementCrossReference_4_1_0()); + before(grammarAccess.getEnumDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getEnumDeclarationAccess().getNameIDTerminalRuleCall_1_0()); } @@ -31945,29 +36813,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__MemberDefinition__OppositeAssignment_4_1" + // $ANTLR end "rule__EnumDeclaration__NameAssignment_1" - // $ANTLR start "rule__ExactMultiplicity__MultiplicityAssignment_1" - // InternalSolverLanguageParser.g:10615:1: rule__ExactMultiplicity__MultiplicityAssignment_1 : ( ruleUpperMultiplicty ) ; - public final void rule__ExactMultiplicity__MultiplicityAssignment_1() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__LiteralsAssignment_2_0_1_0" + // InternalSolverLanguageParser.g:12239:1: rule__EnumDeclaration__LiteralsAssignment_2_0_1_0 : ( ruleEnumLiteral ) ; + public final void rule__EnumDeclaration__LiteralsAssignment_2_0_1_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10619:1: ( ( ruleUpperMultiplicty ) ) - // InternalSolverLanguageParser.g:10620:2: ( ruleUpperMultiplicty ) + // InternalSolverLanguageParser.g:12243:1: ( ( ruleEnumLiteral ) ) + // InternalSolverLanguageParser.g:12244:2: ( ruleEnumLiteral ) { - // InternalSolverLanguageParser.g:10620:2: ( ruleUpperMultiplicty ) - // InternalSolverLanguageParser.g:10621:3: ruleUpperMultiplicty + // InternalSolverLanguageParser.g:12244:2: ( ruleEnumLiteral ) + // InternalSolverLanguageParser.g:12245:3: ruleEnumLiteral { - before(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0()); + before(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0()); pushFollow(FOLLOW_2); - ruleUpperMultiplicty(); + ruleEnumLiteral(); state._fsp--; - after(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0()); + after(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0()); } @@ -31986,25 +36854,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactMultiplicity__MultiplicityAssignment_1" + // $ANTLR end "rule__EnumDeclaration__LiteralsAssignment_2_0_1_0" - // $ANTLR start "rule__BoundedMultiplicity__LowerBoundAssignment_1" - // InternalSolverLanguageParser.g:10630:1: rule__BoundedMultiplicity__LowerBoundAssignment_1 : ( RULE_INT ) ; - public final void rule__BoundedMultiplicity__LowerBoundAssignment_1() throws RecognitionException { + // $ANTLR start "rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1" + // InternalSolverLanguageParser.g:12254:1: rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1 : ( ruleEnumLiteral ) ; + public final void rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10634:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:10635:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12258:1: ( ( ruleEnumLiteral ) ) + // InternalSolverLanguageParser.g:12259:2: ( ruleEnumLiteral ) { - // InternalSolverLanguageParser.g:10635:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:10636:3: RULE_INT + // InternalSolverLanguageParser.g:12259:2: ( ruleEnumLiteral ) + // InternalSolverLanguageParser.g:12260:3: ruleEnumLiteral { - before(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundINTTerminalRuleCall_1_0()); - match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getBoundedMultiplicityAccess().getLowerBoundINTTerminalRuleCall_1_0()); + before(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0()); + pushFollow(FOLLOW_2); + ruleEnumLiteral(); + + state._fsp--; + + after(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0()); } @@ -32023,29 +36895,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__LowerBoundAssignment_1" + // $ANTLR end "rule__EnumDeclaration__LiteralsAssignment_2_0_1_1_1" - // $ANTLR start "rule__BoundedMultiplicity__UpperBoundAssignment_3" - // InternalSolverLanguageParser.g:10645:1: rule__BoundedMultiplicity__UpperBoundAssignment_3 : ( ruleUpperMultiplicty ) ; - public final void rule__BoundedMultiplicity__UpperBoundAssignment_3() throws RecognitionException { + // $ANTLR start "rule__EnumLiteral__NameAssignment" + // InternalSolverLanguageParser.g:12269:1: rule__EnumLiteral__NameAssignment : ( RULE_ID ) ; + public final void rule__EnumLiteral__NameAssignment() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10649:1: ( ( ruleUpperMultiplicty ) ) - // InternalSolverLanguageParser.g:10650:2: ( ruleUpperMultiplicty ) + // InternalSolverLanguageParser.g:12273:1: ( ( RULE_ID ) ) + // InternalSolverLanguageParser.g:12274:2: ( RULE_ID ) { - // InternalSolverLanguageParser.g:10650:2: ( ruleUpperMultiplicty ) - // InternalSolverLanguageParser.g:10651:3: ruleUpperMultiplicty + // InternalSolverLanguageParser.g:12274:2: ( RULE_ID ) + // InternalSolverLanguageParser.g:12275:3: RULE_ID { - before(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundUpperMultiplictyParserRuleCall_3_0()); - pushFollow(FOLLOW_2); - ruleUpperMultiplicty(); - - state._fsp--; - - after(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundUpperMultiplictyParserRuleCall_3_0()); + before(grammarAccess.getEnumLiteralAccess().getNameIDTerminalRuleCall_0()); + match(input,RULE_ID,FOLLOW_2); + after(grammarAccess.getEnumLiteralAccess().getNameIDTerminalRuleCall_0()); } @@ -32064,37 +36932,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedMultiplicity__UpperBoundAssignment_3" + // $ANTLR end "rule__EnumLiteral__NameAssignment" - // $ANTLR start "rule__ExactScopeDefinition__TypeAssignment_1" - // InternalSolverLanguageParser.g:10660:1: rule__ExactScopeDefinition__TypeAssignment_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__ExactScopeDefinition__TypeAssignment_1() throws RecognitionException { + // $ANTLR start "rule__ExactScope__TypeAssignment_1" + // InternalSolverLanguageParser.g:12284:1: rule__ExactScope__TypeAssignment_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__ExactScope__TypeAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10664:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10665:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12288:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12289:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10665:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10666:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12289:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12290:3: ( ruleQualifiedName ) { - before(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0()); - // InternalSolverLanguageParser.g:10667:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10668:4: ruleQualifiedName + before(grammarAccess.getExactScopeAccess().getTypeSymbolCrossReference_1_0()); + // InternalSolverLanguageParser.g:12291:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12292:4: ruleQualifiedName { - before(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); + before(grammarAccess.getExactScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1()); + after(grammarAccess.getExactScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1()); } - after(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + after(grammarAccess.getExactScopeAccess().getTypeSymbolCrossReference_1_0()); } @@ -32113,25 +36981,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__TypeAssignment_1" + // $ANTLR end "rule__ExactScope__TypeAssignment_1" - // $ANTLR start "rule__ExactScopeDefinition__ExactScopeAssignment_3" - // InternalSolverLanguageParser.g:10679:1: rule__ExactScopeDefinition__ExactScopeAssignment_3 : ( RULE_INT ) ; - public final void rule__ExactScopeDefinition__ExactScopeAssignment_3() throws RecognitionException { + // $ANTLR start "rule__ExactScope__SizeAssignment_3" + // InternalSolverLanguageParser.g:12303:1: rule__ExactScope__SizeAssignment_3 : ( RULE_INT ) ; + public final void rule__ExactScope__SizeAssignment_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10683:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:10684:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12307:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:12308:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:10684:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:10685:3: RULE_INT + // InternalSolverLanguageParser.g:12308:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12309:3: RULE_INT { - before(grammarAccess.getExactScopeDefinitionAccess().getExactScopeINTTerminalRuleCall_3_0()); + before(grammarAccess.getExactScopeAccess().getSizeINTTerminalRuleCall_3_0()); match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getExactScopeDefinitionAccess().getExactScopeINTTerminalRuleCall_3_0()); + after(grammarAccess.getExactScopeAccess().getSizeINTTerminalRuleCall_3_0()); } @@ -32150,25 +37018,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ExactScopeDefinition__ExactScopeAssignment_3" + // $ANTLR end "rule__ExactScope__SizeAssignment_3" - // $ANTLR start "rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0" - // InternalSolverLanguageParser.g:10694:1: rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0 : ( RULE_INT ) ; - public final void rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__LowerBoundAssignment_1_0_0_0" + // InternalSolverLanguageParser.g:12318:1: rule__BoundedScope__LowerBoundAssignment_1_0_0_0 : ( RULE_INT ) ; + public final void rule__BoundedScope__LowerBoundAssignment_1_0_0_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10698:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:10699:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12322:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:12323:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:10699:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:10700:3: RULE_INT + // InternalSolverLanguageParser.g:12323:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12324:3: RULE_INT { - before(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); + before(grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); + after(grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); } @@ -32187,37 +37055,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__LowerBoundAssignment_1_0_0_0" + // $ANTLR end "rule__BoundedScope__LowerBoundAssignment_1_0_0_0" - // $ANTLR start "rule__BoundedScopeDefinition__TypeAssignment_1_0_1" - // InternalSolverLanguageParser.g:10709:1: rule__BoundedScopeDefinition__TypeAssignment_1_0_1 : ( ( ruleQualifiedName ) ) ; - public final void rule__BoundedScopeDefinition__TypeAssignment_1_0_1() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__TypeAssignment_1_0_1" + // InternalSolverLanguageParser.g:12333:1: rule__BoundedScope__TypeAssignment_1_0_1 : ( ( ruleQualifiedName ) ) ; + public final void rule__BoundedScope__TypeAssignment_1_0_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10713:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10714:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12337:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12338:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10714:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10715:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12338:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12339:3: ( ruleQualifiedName ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_1_0()); - // InternalSolverLanguageParser.g:10716:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10717:4: ruleQualifiedName + before(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_0_1_0()); + // InternalSolverLanguageParser.g:12340:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12341:4: ruleQualifiedName { - before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1_0_1()); + before(grammarAccess.getBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1_0_1()); + after(grammarAccess.getBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1_0_1()); } - after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_1_0()); + after(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_0_1_0()); } @@ -32236,25 +37104,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__TypeAssignment_1_0_1" + // $ANTLR end "rule__BoundedScope__TypeAssignment_1_0_1" - // $ANTLR start "rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3" - // InternalSolverLanguageParser.g:10728:1: rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3 : ( RULE_INT ) ; - public final void rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__UpperBoundAssignment_1_0_3" + // InternalSolverLanguageParser.g:12352:1: rule__BoundedScope__UpperBoundAssignment_1_0_3 : ( RULE_INT ) ; + public final void rule__BoundedScope__UpperBoundAssignment_1_0_3() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10732:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:10733:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12356:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:12357:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:10733:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:10734:3: RULE_INT + // InternalSolverLanguageParser.g:12357:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12358:3: RULE_INT { - before(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); + before(grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); + after(grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); } @@ -32273,25 +37141,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__UpperBoundAssignment_1_0_3" + // $ANTLR end "rule__BoundedScope__UpperBoundAssignment_1_0_3" - // $ANTLR start "rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0" - // InternalSolverLanguageParser.g:10743:1: rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0 : ( RULE_INT ) ; - public final void rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__UpperBoundAssignment_1_1_0" + // InternalSolverLanguageParser.g:12367:1: rule__BoundedScope__UpperBoundAssignment_1_1_0 : ( RULE_INT ) ; + public final void rule__BoundedScope__UpperBoundAssignment_1_1_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10747:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:10748:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12371:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:12372:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:10748:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:10749:3: RULE_INT + // InternalSolverLanguageParser.g:12372:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12373:3: RULE_INT { - before(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); + before(grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); + after(grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); } @@ -32310,37 +37178,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__UpperBoundAssignment_1_1_0" + // $ANTLR end "rule__BoundedScope__UpperBoundAssignment_1_1_0" - // $ANTLR start "rule__BoundedScopeDefinition__TypeAssignment_1_1_2" - // InternalSolverLanguageParser.g:10758:1: rule__BoundedScopeDefinition__TypeAssignment_1_1_2 : ( ( ruleQualifiedName ) ) ; - public final void rule__BoundedScopeDefinition__TypeAssignment_1_1_2() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__TypeAssignment_1_1_2" + // InternalSolverLanguageParser.g:12382:1: rule__BoundedScope__TypeAssignment_1_1_2 : ( ( ruleQualifiedName ) ) ; + public final void rule__BoundedScope__TypeAssignment_1_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10762:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10763:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12386:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12387:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10763:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10764:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12387:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12388:3: ( ruleQualifiedName ) { - before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_2_0()); - // InternalSolverLanguageParser.g:10765:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10766:4: ruleQualifiedName + before(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_1_2_0()); + // InternalSolverLanguageParser.g:12389:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12390:4: ruleQualifiedName { - before(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_1_2_0_1()); + before(grammarAccess.getBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_1_2_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_1_2_0_1()); + after(grammarAccess.getBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_1_2_0_1()); } - after(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_2_0()); + after(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_1_2_0()); } @@ -32359,25 +37227,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__TypeAssignment_1_1_2" + // $ANTLR end "rule__BoundedScope__TypeAssignment_1_1_2" - // $ANTLR start "rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1" - // InternalSolverLanguageParser.g:10777:1: rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1 : ( RULE_INT ) ; - public final void rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1() throws RecognitionException { + // $ANTLR start "rule__BoundedScope__LowerBoundAssignment_1_1_3_1" + // InternalSolverLanguageParser.g:12401:1: rule__BoundedScope__LowerBoundAssignment_1_1_3_1 : ( RULE_INT ) ; + public final void rule__BoundedScope__LowerBoundAssignment_1_1_3_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10781:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:10782:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12405:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:12406:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:10782:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:10783:3: RULE_INT + // InternalSolverLanguageParser.g:12406:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12407:3: RULE_INT { - before(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); + before(grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); + after(grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); } @@ -32396,25 +37264,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__BoundedScopeDefinition__LowerBoundAssignment_1_1_3_1" + // $ANTLR end "rule__BoundedScope__LowerBoundAssignment_1_1_3_1" - // $ANTLR start "rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0" - // InternalSolverLanguageParser.g:10792:1: rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0 : ( RULE_INT ) ; - public final void rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__LowerBoundAssignment_1_0_0" + // InternalSolverLanguageParser.g:12416:1: rule__LowerBoundedScope__LowerBoundAssignment_1_0_0 : ( RULE_INT ) ; + public final void rule__LowerBoundedScope__LowerBoundAssignment_1_0_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10796:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:10797:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12420:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:12421:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:10797:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:10798:3: RULE_INT + // InternalSolverLanguageParser.g:12421:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12422:3: RULE_INT { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); + before(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); + after(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); } @@ -32433,37 +37301,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_0_0" + // $ANTLR end "rule__LowerBoundedScope__LowerBoundAssignment_1_0_0" - // $ANTLR start "rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2" - // InternalSolverLanguageParser.g:10807:1: rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2 : ( ( ruleQualifiedName ) ) ; - public final void rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__TypeAssignment_1_0_2" + // InternalSolverLanguageParser.g:12431:1: rule__LowerBoundedScope__TypeAssignment_1_0_2 : ( ( ruleQualifiedName ) ) ; + public final void rule__LowerBoundedScope__TypeAssignment_1_0_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10811:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10812:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12435:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12436:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10812:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10813:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12436:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12437:3: ( ruleQualifiedName ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_2_0()); - // InternalSolverLanguageParser.g:10814:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10815:4: ruleQualifiedName + before(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_0_2_0()); + // InternalSolverLanguageParser.g:12438:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12439:4: ruleQualifiedName { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_2_0_1()); + before(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_2_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_2_0_1()); + after(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_2_0_1()); } - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_2_0()); + after(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_0_2_0()); } @@ -32482,37 +37350,37 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__TypeAssignment_1_0_2" + // $ANTLR end "rule__LowerBoundedScope__TypeAssignment_1_0_2" - // $ANTLR start "rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0" - // InternalSolverLanguageParser.g:10826:1: rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0 : ( ( ruleQualifiedName ) ) ; - public final void rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__TypeAssignment_1_1_0" + // InternalSolverLanguageParser.g:12450:1: rule__LowerBoundedScope__TypeAssignment_1_1_0 : ( ( ruleQualifiedName ) ) ; + public final void rule__LowerBoundedScope__TypeAssignment_1_1_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10830:1: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:10831:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12454:1: ( ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:12455:2: ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:10831:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:10832:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12455:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:12456:3: ( ruleQualifiedName ) { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_0_0()); - // InternalSolverLanguageParser.g:10833:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:10834:4: ruleQualifiedName + before(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_1_0_0()); + // InternalSolverLanguageParser.g:12457:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:12458:4: ruleQualifiedName { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_1_0_0_1()); + before(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_1_0_0_1()); pushFollow(FOLLOW_2); ruleQualifiedName(); state._fsp--; - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_1_0_0_1()); + after(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_1_0_0_1()); } - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_0_0()); + after(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_1_0_0()); } @@ -32531,25 +37399,25 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__TypeAssignment_1_1_0" + // $ANTLR end "rule__LowerBoundedScope__TypeAssignment_1_1_0" - // $ANTLR start "rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2" - // InternalSolverLanguageParser.g:10845:1: rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2 : ( RULE_INT ) ; - public final void rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2() throws RecognitionException { + // $ANTLR start "rule__LowerBoundedScope__LowerBoundAssignment_1_1_2" + // InternalSolverLanguageParser.g:12469:1: rule__LowerBoundedScope__LowerBoundAssignment_1_1_2 : ( RULE_INT ) ; + public final void rule__LowerBoundedScope__LowerBoundAssignment_1_1_2() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10849:1: ( ( RULE_INT ) ) - // InternalSolverLanguageParser.g:10850:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12473:1: ( ( RULE_INT ) ) + // InternalSolverLanguageParser.g:12474:2: ( RULE_INT ) { - // InternalSolverLanguageParser.g:10850:2: ( RULE_INT ) - // InternalSolverLanguageParser.g:10851:3: RULE_INT + // InternalSolverLanguageParser.g:12474:2: ( RULE_INT ) + // InternalSolverLanguageParser.g:12475:3: RULE_INT { - before(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); + before(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); match(input,RULE_INT,FOLLOW_2); - after(grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); + after(grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); } @@ -32568,29 +37436,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__LowerBoundedScopeDefinition__LowerBoundAssignment_1_1_2" + // $ANTLR end "rule__LowerBoundedScope__LowerBoundAssignment_1_1_2" - // $ANTLR start "rule__ObjectiveDefinition__KindAssignment_0" - // InternalSolverLanguageParser.g:10860:1: rule__ObjectiveDefinition__KindAssignment_0 : ( ruleObjectiveKind ) ; - public final void rule__ObjectiveDefinition__KindAssignment_0() throws RecognitionException { + // $ANTLR start "rule__ObjectiveDeclaration__KindAssignment_0" + // InternalSolverLanguageParser.g:12484:1: rule__ObjectiveDeclaration__KindAssignment_0 : ( ruleObjectiveKind ) ; + public final void rule__ObjectiveDeclaration__KindAssignment_0() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10864:1: ( ( ruleObjectiveKind ) ) - // InternalSolverLanguageParser.g:10865:2: ( ruleObjectiveKind ) + // InternalSolverLanguageParser.g:12488:1: ( ( ruleObjectiveKind ) ) + // InternalSolverLanguageParser.g:12489:2: ( ruleObjectiveKind ) { - // InternalSolverLanguageParser.g:10865:2: ( ruleObjectiveKind ) - // InternalSolverLanguageParser.g:10866:3: ruleObjectiveKind + // InternalSolverLanguageParser.g:12489:2: ( ruleObjectiveKind ) + // InternalSolverLanguageParser.g:12490:3: ruleObjectiveKind { - before(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0()); + before(grammarAccess.getObjectiveDeclarationAccess().getKindObjectiveKindEnumRuleCall_0_0()); pushFollow(FOLLOW_2); ruleObjectiveKind(); state._fsp--; - after(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0()); + after(grammarAccess.getObjectiveDeclarationAccess().getKindObjectiveKindEnumRuleCall_0_0()); } @@ -32609,29 +37477,29 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ObjectiveDefinition__KindAssignment_0" + // $ANTLR end "rule__ObjectiveDeclaration__KindAssignment_0" - // $ANTLR start "rule__ObjectiveDefinition__ObjectiveAssignment_1" - // InternalSolverLanguageParser.g:10875:1: rule__ObjectiveDefinition__ObjectiveAssignment_1 : ( ruleExpression ) ; - public final void rule__ObjectiveDefinition__ObjectiveAssignment_1() throws RecognitionException { + // $ANTLR start "rule__ObjectiveDeclaration__ObjectiveAssignment_1" + // InternalSolverLanguageParser.g:12499:1: rule__ObjectiveDeclaration__ObjectiveAssignment_1 : ( ruleExpression ) ; + public final void rule__ObjectiveDeclaration__ObjectiveAssignment_1() throws RecognitionException { int stackSize = keepStackSize(); try { - // InternalSolverLanguageParser.g:10879:1: ( ( ruleExpression ) ) - // InternalSolverLanguageParser.g:10880:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:12503:1: ( ( ruleExpression ) ) + // InternalSolverLanguageParser.g:12504:2: ( ruleExpression ) { - // InternalSolverLanguageParser.g:10880:2: ( ruleExpression ) - // InternalSolverLanguageParser.g:10881:3: ruleExpression + // InternalSolverLanguageParser.g:12504:2: ( ruleExpression ) + // InternalSolverLanguageParser.g:12505:3: ruleExpression { - before(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0()); + before(grammarAccess.getObjectiveDeclarationAccess().getObjectiveExpressionParserRuleCall_1_0()); pushFollow(FOLLOW_2); ruleExpression(); state._fsp--; - after(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0()); + after(grammarAccess.getObjectiveDeclarationAccess().getObjectiveExpressionParserRuleCall_1_0()); } @@ -32650,49 +37518,52 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP } return ; } - // $ANTLR end "rule__ObjectiveDefinition__ObjectiveAssignment_1" + // $ANTLR end "rule__ObjectiveDeclaration__ObjectiveAssignment_1" // Delegated rules - protected DFA2 dfa2 = new DFA2(this); - protected DFA8 dfa8 = new DFA8(this); + protected DFA1 dfa1 = new DFA1(this); + protected DFA5 dfa5 = new DFA5(this); protected DFA9 dfa9 = new DFA9(this); + protected DFA10 dfa10 = new DFA10(this); protected DFA11 dfa11 = new DFA11(this); - protected DFA14 dfa14 = new DFA14(this); - static final String dfa_1s = "\33\uffff"; - static final String dfa_2s = "\1\4\1\uffff\2\40\1\4\2\uffff\1\7\3\uffff\1\105\2\uffff\2\54\1\uffff\1\40\1\105\1\uffff\3\54\1\105\2\uffff\1\54"; - static final String dfa_3s = "\1\106\1\uffff\3\105\2\uffff\1\105\3\uffff\1\105\2\uffff\2\105\1\uffff\2\105\1\uffff\2\74\2\105\2\uffff\1\74"; - static final String dfa_4s = "\1\uffff\1\1\3\uffff\1\2\1\4\1\uffff\1\12\1\13\1\14\1\uffff\1\5\1\3\2\uffff\1\11\2\uffff\1\6\4\uffff\1\10\1\7\1\uffff"; - static final String dfa_5s = "\33\uffff}>"; + protected DFA18 dfa18 = new DFA18(this); + static final String dfa_1s = "\35\uffff"; + static final String dfa_2s = "\1\4\1\uffff\3\22\1\5\1\22\1\uffff\1\6\6\uffff\1\22\2\uffff\3\45\1\uffff\4\22\3\45"; + static final String dfa_3s = "\1\113\1\uffff\5\112\1\uffff\1\112\6\uffff\1\112\2\uffff\3\111\1\uffff\4\112\3\111"; + static final String dfa_4s = "\1\uffff\1\1\5\uffff\1\4\1\uffff\1\6\1\7\1\10\1\11\1\12\1\13\1\uffff\1\5\1\2\3\uffff\1\3\7\uffff"; + static final String dfa_5s = "\35\uffff}>"; static final String[] dfa_6s = { - "\1\5\1\10\2\uffff\2\12\1\uffff\1\1\1\6\1\uffff\2\1\1\7\1\1\1\10\2\1\1\4\1\1\1\11\1\uffff\1\1\1\uffff\1\1\1\uffff\3\1\11\uffff\1\1\1\uffff\2\1\2\uffff\1\1\1\uffff\1\1\7\uffff\1\1\5\uffff\1\1\1\3\4\uffff\1\2\1\1", + "\1\11\1\6\1\15\2\uffff\2\14\1\uffff\1\7\2\uffff\1\1\1\12\1\uffff\1\4\1\uffff\1\15\2\1\1\5\1\1\1\13\1\uffff\1\16\1\10\1\uffff\1\1\1\uffff\2\1\12\uffff\1\1\1\uffff\2\1\2\uffff\1\1\1\uffff\1\1\7\uffff\2\1\5\uffff\2\1\1\3\4\uffff\1\2\1\1", "", - "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\13\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14", - "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\uffff\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14", - "\1\5\33\uffff\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\15\1\uffff\4\1\1\uffff\6\1\2\uffff\1\1\4\uffff\1\5\3\uffff\1\1\1\5", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\21\14\uffff\1\24\17\uffff\3\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\25\1\uffff\4\1\1\uffff\4\1\1\uffff\1\1\3\uffff\1\1\3\uffff\1\21\1\uffff\1\23\3\uffff\1\1\1\22", + "\1\24\4\uffff\1\21\53\uffff\1\21\1\uffff\1\23\4\uffff\1\22", "", + "\1\15\13\uffff\1\11\1\uffff\1\15\7\uffff\1\15\50\uffff\1\11\4\uffff\1\11", "", - "\1\20\70\uffff\1\17\4\uffff\1\16", "", "", "", - "\1\21", "", "", - "\1\23\5\uffff\1\22\15\uffff\1\25\4\uffff\1\24", - "\1\23\23\uffff\1\25\4\uffff\1\24", + "\1\30\62\uffff\1\27\4\uffff\1\26", "", - "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\13\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14", - "\1\26", "", - "\1\31\5\uffff\1\27\11\uffff\1\30", - "\1\31\17\uffff\1\30", - "\1\23\5\uffff\1\22\15\uffff\1\25\4\uffff\1\24", - "\1\32", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", "", - "", - "\1\31\5\uffff\1\27\11\uffff\1\30" + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\34\62\uffff\1\33\4\uffff\1\32", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11" }; static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); @@ -32702,11 +37573,11 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP static final short[] dfa_5 = DFA.unpackEncodedString(dfa_5s); static final short[][] dfa_6 = unpackEncodedStringArray(dfa_6s); - class DFA2 extends DFA { + class DFA1 extends DFA { - public DFA2(BaseRecognizer recognizer) { + public DFA1(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 2; + this.decisionNumber = 1; this.eot = dfa_1; this.eof = dfa_1; this.min = dfa_2; @@ -32716,249 +37587,345 @@ public class InternalSolverLanguageParser extends AbstractInternalContentAssistP this.transition = dfa_6; } public String getDescription() { - return "1773:1: rule__Statement__Alternatives_0 : ( ( ruleAssertionOrDefinition ) | ( rulePredicateDefinition ) | ( ruleUnnamedErrorPrediateDefinition ) | ( ruleDefaultDefinition ) | ( ruleMetricDefinition ) | ( ruleExternPredicateDefinition ) | ( ruleExternMetricDefinition ) | ( ruleExternAggregatorDefinition ) | ( ruleExternDatatypeDefinition ) | ( ruleClassDefinition ) | ( ruleScopeDefinition ) | ( ruleObjectiveDefinition ) );"; - } - } - static final String dfa_7s = "\10\uffff"; - static final String dfa_8s = "\1\uffff\2\3\4\uffff\1\3"; - static final String dfa_9s = "\1\16\2\30\2\uffff\1\105\1\uffff\1\30"; - static final String dfa_10s = "\1\106\2\104\2\uffff\1\105\1\uffff\1\104"; - static final String dfa_11s = "\3\uffff\1\1\1\2\1\uffff\1\3\1\uffff"; - static final String dfa_12s = "\10\uffff}>"; - static final String[] dfa_13s = { - "\1\3\1\4\1\uffff\1\4\1\uffff\1\4\3\3\4\uffff\1\3\1\uffff\1\3\16\uffff\1\3\14\uffff\1\3\5\uffff\1\3\1\2\4\uffff\1\1\1\3", - "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\5\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3", - "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\uffff\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3", + return "1962:1: rule__Statement__Alternatives : ( ( ruleAssertionOrDefinition ) | ( rulePredicateDefinition ) | ( ruleUnnamedErrorPredicateDefintion ) | ( ruleDefaultAssertion ) | ( ruleFunctionDefinition ) | ( ruleAttribute ) | ( ruleExternDeclaration ) | ( ruleScopeDeclaration ) | ( ruleObjectiveDeclaration ) | ( ruleClassDeclaration ) | ( ruleEnumDeclaration ) );"; + } + } + static final String dfa_7s = "\24\uffff"; + static final String dfa_8s = "\1\20\1\5\1\uffff\3\22\1\uffff\1\22\3\45\4\22\2\uffff\3\45"; + static final String dfa_9s = "\1\20\1\112\1\uffff\3\112\1\uffff\1\112\3\100\4\112\2\uffff\3\100"; + static final String dfa_10s = "\2\uffff\1\4\3\uffff\1\1\10\uffff\1\2\1\3\3\uffff"; + static final String dfa_11s = "\24\uffff}>"; + static final String[] dfa_12s = { + "\1\1", + "\1\6\2\uffff\1\2\11\uffff\1\5\4\uffff\1\6\55\uffff\1\4\4\uffff\1\3", "", + "\1\12\22\uffff\1\7\11\uffff\1\6\25\uffff\1\11\4\uffff\1\10", + "\1\12\22\uffff\1\7\11\uffff\1\6\25\uffff\1\11\4\uffff\1\10", + "\1\12\22\uffff\1\7\11\uffff\1\6\25\uffff\1\11\4\uffff\1\10", "", - "\1\7", + "\1\15\62\uffff\1\14\4\uffff\1\13", + "\1\16\11\uffff\1\17\20\uffff\1\20", + "\1\16\11\uffff\1\17\20\uffff\1\20", + "\1\16\11\uffff\1\17\20\uffff\1\20", + "\1\12\22\uffff\1\7\11\uffff\1\6\25\uffff\1\11\4\uffff\1\10", + "\1\12\22\uffff\1\7\11\uffff\1\6\25\uffff\1\11\4\uffff\1\10", + "\1\12\22\uffff\1\7\11\uffff\1\6\25\uffff\1\11\4\uffff\1\10", + "\1\23\62\uffff\1\22\4\uffff\1\21", "", - "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\5\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3" + "", + "\1\16\11\uffff\1\17\20\uffff\1\20", + "\1\16\11\uffff\1\17\20\uffff\1\20", + "\1\16\11\uffff\1\17\20\uffff\1\20" }; static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s); - static final short[] dfa_8 = DFA.unpackEncodedString(dfa_8s); + static final char[] dfa_8 = DFA.unpackEncodedStringToUnsignedChars(dfa_8s); static final char[] dfa_9 = DFA.unpackEncodedStringToUnsignedChars(dfa_9s); - static final char[] dfa_10 = DFA.unpackEncodedStringToUnsignedChars(dfa_10s); + static final short[] dfa_10 = DFA.unpackEncodedString(dfa_10s); static final short[] dfa_11 = DFA.unpackEncodedString(dfa_11s); - static final short[] dfa_12 = DFA.unpackEncodedString(dfa_12s); - static final short[][] dfa_13 = unpackEncodedStringArray(dfa_13s); + static final short[][] dfa_12 = unpackEncodedStringArray(dfa_12s); - class DFA8 extends DFA { + class DFA5 extends DFA { - public DFA8(BaseRecognizer recognizer) { + public DFA5(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 8; + this.decisionNumber = 5; this.eot = dfa_7; - this.eof = dfa_8; - this.min = dfa_9; - this.max = dfa_10; - this.accept = dfa_11; - this.special = dfa_12; - this.transition = dfa_13; + this.eof = dfa_7; + this.min = dfa_8; + this.max = dfa_9; + this.accept = dfa_10; + this.special = dfa_11; + this.transition = dfa_12; } public String getDescription() { - return "1971:1: rule__AggregationExpression__Alternatives : ( ( ruleAtomicExpression ) | ( ruleQuantifiedExpression ) | ( ruleAggregation ) );"; - } - } - static final String dfa_14s = "\12\uffff"; - static final String dfa_15s = "\1\uffff\2\7\6\uffff\1\7"; - static final String dfa_16s = "\1\16\2\30\3\uffff\1\105\2\uffff\1\30"; - static final String dfa_17s = "\1\106\2\104\3\uffff\1\105\2\uffff\1\104"; - static final String dfa_18s = "\3\uffff\1\3\1\4\1\5\1\uffff\1\1\1\2\1\uffff"; - static final String dfa_19s = "\12\uffff}>"; - static final String[] dfa_20s = { - "\1\4\5\uffff\3\4\4\uffff\1\4\1\uffff\1\4\16\uffff\1\5\14\uffff\1\3\5\uffff\1\4\1\2\4\uffff\1\1\1\4", - "\1\7\1\uffff\1\7\5\uffff\11\7\1\uffff\1\7\1\uffff\1\10\5\7\1\6\6\7\1\uffff\2\7\1\uffff\2\7\3\uffff\2\10\1\7", - "\1\7\1\uffff\1\7\5\uffff\11\7\1\uffff\1\7\1\uffff\1\10\5\7\1\uffff\6\7\1\uffff\2\7\1\uffff\2\7\3\uffff\2\10\1\7", - "", - "", + return "2106:1: rule__ExternDeclaration__Alternatives : ( ( ruleExternPredicateDeclaration ) | ( ruleExternFunctionDeclaration ) | ( ruleExternAggregationOperatorDeclaration ) | ( ruleExternDatatypeDeclaration ) );"; + } + } + static final String dfa_13s = "\13\uffff"; + static final String dfa_14s = "\2\uffff\3\1\3\uffff\3\1"; + static final String dfa_15s = "\1\17\1\uffff\3\32\1\uffff\1\22\1\uffff\3\32"; + static final String dfa_16s = "\1\113\1\uffff\3\111\1\uffff\1\112\1\uffff\3\111"; + static final String dfa_17s = "\1\uffff\1\1\3\uffff\1\3\1\uffff\1\2\3\uffff"; + static final String dfa_18s = "\13\uffff}>"; + static final String[] dfa_19s = { + "\1\1\2\uffff\1\4\2\uffff\1\5\3\1\5\uffff\1\1\1\uffff\1\1\16\uffff\1\1\15\uffff\1\1\5\uffff\2\1\1\3\4\uffff\1\2\1\1", "", - "\1\11", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", "", + "\1\12\62\uffff\1\11\4\uffff\1\10", "", - "\1\7\1\uffff\1\7\5\uffff\11\7\1\uffff\1\7\1\uffff\1\10\5\7\1\6\6\7\1\uffff\2\7\1\uffff\2\7\3\uffff\2\10\1\7" + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1" }; + static final short[] dfa_13 = DFA.unpackEncodedString(dfa_13s); static final short[] dfa_14 = DFA.unpackEncodedString(dfa_14s); - static final short[] dfa_15 = DFA.unpackEncodedString(dfa_15s); + static final char[] dfa_15 = DFA.unpackEncodedStringToUnsignedChars(dfa_15s); static final char[] dfa_16 = DFA.unpackEncodedStringToUnsignedChars(dfa_16s); - static final char[] dfa_17 = DFA.unpackEncodedStringToUnsignedChars(dfa_17s); + static final short[] dfa_17 = DFA.unpackEncodedString(dfa_17s); static final short[] dfa_18 = DFA.unpackEncodedString(dfa_18s); - static final short[] dfa_19 = DFA.unpackEncodedString(dfa_19s); - static final short[][] dfa_20 = unpackEncodedStringArray(dfa_20s); + static final short[][] dfa_19 = unpackEncodedStringArray(dfa_19s); class DFA9 extends DFA { public DFA9(BaseRecognizer recognizer) { this.recognizer = recognizer; this.decisionNumber = 9; - this.eot = dfa_14; - this.eof = dfa_15; - this.min = dfa_16; - this.max = dfa_17; - this.accept = dfa_18; - this.special = dfa_19; - this.transition = dfa_20; + this.eot = dfa_13; + this.eof = dfa_14; + this.min = dfa_15; + this.max = dfa_16; + this.accept = dfa_17; + this.special = dfa_18; + this.transition = dfa_19; } public String getDescription() { - return "1998:1: rule__AtomicExpression__Alternatives : ( ( ruleReference ) | ( ruleCall ) | ( ruleInterval ) | ( ruleLiteral ) | ( ( rule__AtomicExpression__Group_4__0 ) ) );"; - } - } - static final String dfa_21s = "\1\uffff\2\3\4\uffff\1\11\1\3\1\uffff"; - static final String dfa_22s = "\1\13\2\40\2\uffff\1\105\1\uffff\1\13\1\40\1\uffff"; - static final String dfa_23s = "\1\106\2\105\2\uffff\1\105\1\uffff\1\106\1\105\1\uffff"; - static final String dfa_24s = "\3\uffff\1\1\1\2\1\uffff\1\3\2\uffff\1\4"; - static final String[] dfa_25s = { - "\1\3\2\uffff\2\3\1\uffff\1\3\1\uffff\4\3\2\uffff\1\3\1\uffff\1\3\1\uffff\1\3\1\uffff\1\3\13\uffff\2\3\1\uffff\1\4\1\3\1\uffff\1\3\7\uffff\1\3\5\uffff\1\3\1\2\4\uffff\1\1\1\3", - "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\7\3\3\1\5\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\6\1\uffff\2\3\1\uffff\1\6", - "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\7\3\3\1\uffff\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\6\1\uffff\2\3\1\uffff\1\6", + return "2208:1: rule__BracedAggregateExpression__Alternatives : ( ( ruleAtomicExpression ) | ( ruleAggregation ) | ( ruleCount ) );"; + } + } + static final String dfa_20s = "\33\uffff"; + static final String dfa_21s = "\2\uffff\3\15\4\uffff\2\15\3\uffff\3\15\1\uffff\3\15\1\uffff\5\15"; + static final String dfa_22s = "\1\17\1\22\3\32\3\uffff\1\22\2\32\1\22\2\uffff\3\32\1\22\3\32\1\22\5\32"; + static final String dfa_23s = "\1\113\1\112\3\111\3\uffff\1\112\2\111\1\112\2\uffff\3\111\1\112\3\111\1\112\5\111"; + static final String dfa_24s = "\5\uffff\1\3\1\4\1\5\4\uffff\1\2\1\1\15\uffff"; + static final String dfa_25s = "\33\uffff}>"; + static final String[] dfa_26s = { + "\1\6\2\uffff\1\4\3\uffff\3\6\5\uffff\1\6\1\uffff\1\6\16\uffff\1\7\15\uffff\1\5\5\uffff\1\1\1\6\1\3\4\uffff\1\2\1\6", + "\1\4\62\uffff\1\3\4\uffff\1\2", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\10\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\11\1\12\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\10\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\11\1\12\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\10\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\11\1\12\1\15", "", "", - "\1\10", "", - "\1\3\2\uffff\2\3\1\uffff\1\3\1\uffff\4\3\2\uffff\1\3\1\uffff\1\3\1\uffff\1\3\1\uffff\1\3\13\uffff\2\3\1\11\1\uffff\1\3\1\11\1\3\7\uffff\1\3\5\uffff\2\3\4\uffff\2\3", - "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\7\3\3\1\5\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\6\1\uffff\2\3\1\uffff\1\6", - "" + "\1\20\62\uffff\1\17\4\uffff\1\16", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\uffff\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\6\uffff\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\uffff\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\6\uffff\1\15", + "\1\24\60\uffff\1\21\1\uffff\1\23\4\uffff\1\22", + "", + "", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\10\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\11\1\12\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\10\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\11\1\12\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\10\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\11\1\12\1\15", + "\1\24\62\uffff\1\23\4\uffff\1\22", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\25\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\26\1\27\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\25\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\26\1\27\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\25\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\26\1\27\1\15", + "\1\32\62\uffff\1\31\4\uffff\1\30", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\uffff\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\6\uffff\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\uffff\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\6\uffff\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\25\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\26\1\27\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\25\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\26\1\27\1\15", + "\1\15\2\uffff\1\15\4\uffff\3\15\1\25\6\15\1\uffff\1\15\1\uffff\1\14\5\15\1\13\4\15\1\uffff\1\15\2\uffff\2\15\1\uffff\2\15\4\uffff\1\26\1\27\1\15" }; + + static final short[] dfa_20 = DFA.unpackEncodedString(dfa_20s); static final short[] dfa_21 = DFA.unpackEncodedString(dfa_21s); static final char[] dfa_22 = DFA.unpackEncodedStringToUnsignedChars(dfa_22s); static final char[] dfa_23 = DFA.unpackEncodedStringToUnsignedChars(dfa_23s); static final short[] dfa_24 = DFA.unpackEncodedString(dfa_24s); - static final short[][] dfa_25 = unpackEncodedStringArray(dfa_25s); + static final short[] dfa_25 = DFA.unpackEncodedString(dfa_25s); + static final short[][] dfa_26 = unpackEncodedStringArray(dfa_26s); - class DFA11 extends DFA { + class DFA10 extends DFA { - public DFA11(BaseRecognizer recognizer) { + public DFA10(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 11; - this.eot = dfa_14; + this.decisionNumber = 10; + this.eot = dfa_20; this.eof = dfa_21; this.min = dfa_22; this.max = dfa_23; this.accept = dfa_24; - this.special = dfa_19; - this.transition = dfa_25; + this.special = dfa_25; + this.transition = dfa_26; } public String getDescription() { - return "2058:1: rule__Argument__Alternatives : ( ( ruleExpressionArgument ) | ( ruleStarArgument ) | ( ruleTypedArgument ) | ( ruleTypedStarArgument ) );"; + return "2235:1: rule__AtomicExpression__Alternatives : ( ( ruleReference ) | ( ruleCall ) | ( ruleInterval ) | ( ruleLiteral ) | ( ( rule__AtomicExpression__Group_4__0 ) ) );"; } } - static final String dfa_26s = "\17\uffff"; - static final String dfa_27s = "\13\uffff\2\6\1\uffff\1\6"; - static final String dfa_28s = "\1\27\1\100\3\44\1\105\3\uffff\1\100\3\44\1\105\1\44"; - static final String dfa_29s = "\1\27\1\106\1\62\2\47\1\105\3\uffff\1\105\1\62\2\104\1\105\1\104"; - static final String dfa_30s = "\6\uffff\1\3\1\2\1\1\6\uffff"; - static final String dfa_31s = "\17\uffff}>"; - static final String[] dfa_32s = { - "\1\1", - "\1\3\4\uffff\1\2\1\4", - "\1\7\1\10\1\uffff\1\6\12\uffff\1\5", - "\1\7\1\10\1\uffff\1\6", - "\1\11\2\uffff\1\7", - "\1\12", + static final String dfa_27s = "\16\uffff"; + static final String dfa_28s = "\2\uffff\3\1\4\uffff\1\15\3\1\1\uffff"; + static final String dfa_29s = "\1\17\1\uffff\3\22\1\uffff\1\22\1\61\1\uffff\1\17\3\22\1\uffff"; + static final String dfa_30s = "\1\113\1\uffff\3\112\1\uffff\2\112\1\uffff\1\113\3\112\1\uffff"; + static final String dfa_31s = "\1\uffff\1\1\3\uffff\1\2\2\uffff\1\3\4\uffff\1\4"; + static final String dfa_32s = "\16\uffff}>"; + static final String[] dfa_33s = { + "\1\1\2\uffff\1\4\2\uffff\4\1\5\uffff\1\1\1\uffff\1\1\15\uffff\2\1\1\uffff\1\5\1\1\1\uffff\1\1\7\uffff\2\1\5\uffff\2\1\1\3\4\uffff\1\2\1\1", "", + "\1\7\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\11\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\10", + "\1\7\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\11\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\10", + "\1\7\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\11\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\10", "", + "\1\14\62\uffff\1\13\4\uffff\1\12", + "\1\15\30\uffff\1\10", "", - "\1\14\4\uffff\1\13", - "\1\7\1\10\1\uffff\1\6\12\uffff\1\5", - "\1\7\15\uffff\1\15\21\uffff\1\6", - "\1\7\37\uffff\1\6", - "\1\16", - "\1\7\15\uffff\1\15\21\uffff\1\6" + "\1\1\2\uffff\1\1\2\uffff\4\1\5\uffff\1\1\1\uffff\1\1\15\uffff\2\1\1\15\1\uffff\1\1\1\15\1\1\7\uffff\2\1\5\uffff\3\1\4\uffff\2\1", + "\1\7\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\11\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\10", + "\1\7\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\11\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\10", + "\1\7\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\11\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\10", + "" }; - static final short[] dfa_26 = DFA.unpackEncodedString(dfa_26s); static final short[] dfa_27 = DFA.unpackEncodedString(dfa_27s); - static final char[] dfa_28 = DFA.unpackEncodedStringToUnsignedChars(dfa_28s); + static final short[] dfa_28 = DFA.unpackEncodedString(dfa_28s); static final char[] dfa_29 = DFA.unpackEncodedStringToUnsignedChars(dfa_29s); - static final short[] dfa_30 = DFA.unpackEncodedString(dfa_30s); + static final char[] dfa_30 = DFA.unpackEncodedStringToUnsignedChars(dfa_30s); static final short[] dfa_31 = DFA.unpackEncodedString(dfa_31s); - static final short[][] dfa_32 = unpackEncodedStringArray(dfa_32s); + static final short[] dfa_32 = DFA.unpackEncodedString(dfa_32s); + static final short[][] dfa_33 = unpackEncodedStringArray(dfa_33s); + + class DFA11 extends DFA { + + public DFA11(BaseRecognizer recognizer) { + this.recognizer = recognizer; + this.decisionNumber = 11; + this.eot = dfa_27; + this.eof = dfa_28; + this.min = dfa_29; + this.max = dfa_30; + this.accept = dfa_31; + this.special = dfa_32; + this.transition = dfa_33; + } + public String getDescription() { + return "2274:1: rule__Argument__Alternatives : ( ( ruleExpressionArgument ) | ( ruleStarArgument ) | ( ruleTypedVariableArgument ) | ( ruleTypedStarArgument ) );"; + } + } + static final String dfa_34s = "\25\uffff"; + static final String dfa_35s = "\1\31\1\22\1\47\3\45\1\22\1\uffff\1\22\2\uffff\6\45\1\22\3\45"; + static final String dfa_36s = "\1\31\1\113\4\52\1\112\1\uffff\1\112\2\uffff\3\111\3\52\1\112\3\111"; + static final String dfa_37s = "\7\uffff\1\2\1\uffff\1\1\1\3\12\uffff"; + static final String dfa_38s = "\25\uffff}>"; + static final String[] dfa_39s = { + "\1\1", + "\1\5\62\uffff\1\4\4\uffff\1\3\1\2", + "\1\6\2\uffff\1\7", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\15\62\uffff\1\14\4\uffff\1\13", + "", + "\1\20\62\uffff\1\17\4\uffff\1\16", + "", + "", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\24\62\uffff\1\23\4\uffff\1\22", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\21\1\uffff\1\7\41\uffff\1\12" + }; + + static final short[] dfa_34 = DFA.unpackEncodedString(dfa_34s); + static final char[] dfa_35 = DFA.unpackEncodedStringToUnsignedChars(dfa_35s); + static final char[] dfa_36 = DFA.unpackEncodedStringToUnsignedChars(dfa_36s); + static final short[] dfa_37 = DFA.unpackEncodedString(dfa_37s); + static final short[] dfa_38 = DFA.unpackEncodedString(dfa_38s); + static final short[][] dfa_39 = unpackEncodedStringArray(dfa_39s); - class DFA14 extends DFA { + class DFA18 extends DFA { - public DFA14(BaseRecognizer recognizer) { + public DFA18(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 14; - this.eot = dfa_26; - this.eof = dfa_27; - this.min = dfa_28; - this.max = dfa_29; - this.accept = dfa_30; - this.special = dfa_31; - this.transition = dfa_32; + this.decisionNumber = 18; + this.eot = dfa_34; + this.eof = dfa_34; + this.min = dfa_35; + this.max = dfa_36; + this.accept = dfa_37; + this.special = dfa_38; + this.transition = dfa_39; } public String getDescription() { - return "2157:1: rule__ScopeDefinition__Alternatives : ( ( ruleExactScopeDefinition ) | ( ruleBoundedScopeDefinition ) | ( ruleLowerBoundedScopeDefinition ) );"; + return "2463:1: rule__ScopeDeclaration__Alternatives : ( ( ruleExactScope ) | ( ruleBoundedScope ) | ( ruleLowerBoundedScope ) );"; } } public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x82029A00EAFFDB32L,0x0000000000000061L}); - public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L}); - public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0090000800000000L}); - public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0010000000000000L}); - public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x82029A00EA7AC800L,0x0000000000000061L}); - public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000800000000L}); - public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000021L}); - public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000000200000L}); - public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000000010L}); - public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000100000000000L}); - public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0080000000000000L}); - public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x1000000000000000L}); - public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000010000000L}); - public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x4000000000000000L}); - public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000080L}); - public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000002000L}); - public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0001000000000000L}); - public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0001000000000002L}); - public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L}); - public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000004000000L}); - public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000001000000L}); - public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0001040000000000L}); - public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000004000000000L}); - public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0020000200000000L}); - public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0020000000000000L}); - public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0020000000000002L}); - public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0000000200000000L}); - public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x014004B100000000L}); - public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0002800000000000L}); - public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0002800000000002L}); - public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0008400000000000L}); - public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0008400000000002L}); - public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0800000000000000L}); - public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0000010000000000L}); - public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x82001000287AC000L,0x0000000000000061L}); - public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0200000000000000L}); - public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0400000000000000L,0x0000000000000021L}); - public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x1200000000000000L}); - public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x6000000000000000L}); - public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x0000200000000000L}); - public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000100000000000L,0x000000000000000CL}); - public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x8202FA00EA7AC800L,0x0000000000000061L}); - public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x8202DA00EA7AC800L,0x0000000000000061L}); - public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0000400000000000L}); - public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0000000400000000L}); - public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0400000000000000L}); - public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x0000000020000000L}); - public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x0000000000100000L}); - public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0000000000040020L}); - public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x1000000000002000L}); - public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x4000000000000040L,0x0000000000000021L}); - public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000000000000042L,0x0000000000000021L}); - public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0000000000000040L,0x0000000000000021L}); - public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0200000000000000L,0x0000000000000020L}); - public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0020000000000400L}); - public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000400000000000L,0x0000000000000040L}); - public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); - public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x0000002000000000L}); - public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000061L}); - public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x0000001000000000L}); - public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0000008000000000L}); - public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x0004000000000000L}); - public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x0004000000000002L}); - -} \ No newline at end of file + public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x3014D0035BE79670L,0x0000000000000C38L}); + public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000020002L}); + public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x3014D0035BE59672L,0x0000000000000C38L}); + public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x0000000000040000L,0x0000000000000428L}); + public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L}); + public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000080000000000L}); + public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0080005000000000L}); + public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0080000000000000L}); + public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x3014D00341E48000L,0x0000000000000C38L}); + public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000001000000000L}); + public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000000000800000L}); + public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000000000020L}); + public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0000800000000000L}); + public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0080000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000004000000000L}); + public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000040000L}); + public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000000800020L}); + public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000080000000L}); + public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000000000000100L}); + public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000020000000000L}); + public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000020000000L}); + public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000004000000L}); + public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0008200000000000L}); + public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0008000000000002L}); + public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0400000000000000L}); + public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0100000800000000L}); + public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0100000000000000L}); + public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0100000000000002L}); + public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0000000800000000L}); + public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0008000000000000L}); + public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0A00258400000000L}); + public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x0014000000000000L}); + public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0014000000000002L}); + public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0042000000000000L}); + public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x0042000000000002L}); + public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x8000000000000000L}); + public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x2000800141E48000L,0x0000000000000C38L}); + public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); + public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0001000000000000L}); + public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x3017D00341E48000L,0x0000000000000C38L}); + public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x3016D00341E48000L,0x0000000000000C38L}); + public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0002000000000000L}); + public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000400L}); + public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x0020000000000000L}); + public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x0020000000000002L}); + public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000180L}); + public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x4000000000000000L}); + public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x0000000100000000L}); + public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000000000400000L}); + public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0000000000100000L}); + public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0000000000002000L,0x0000000000000201L}); + public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x00000000000C0080L,0x000000000000042CL}); + public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x00000000000C0082L,0x0000000000000428L}); + public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x00000000000C0080L,0x0000000000000428L}); + public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x2000000000000000L,0x0000000000000400L}); + public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x0100000000000800L}); + public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x2000000000000000L}); + public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0002000000000000L,0x0000000000000800L}); + public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000800L}); + public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000201L}); + public static final BitSet FOLLOW_66 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000404L}); + public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x0008000000000000L,0x0000000000000400L}); + public static final BitSet FOLLOW_68 = new BitSet(new long[]{0x0008000000000002L,0x0000000000000400L}); + public static final BitSet FOLLOW_69 = new BitSet(new long[]{0x0000010000000000L}); + public static final BitSet FOLLOW_70 = new BitSet(new long[]{0x0000000000040000L,0x0000000000000C28L}); + public static final BitSet FOLLOW_71 = new BitSet(new long[]{0x0000008000000000L}); + public static final BitSet FOLLOW_72 = new BitSet(new long[]{0x0000040000000000L}); + public static final BitSet FOLLOW_73 = new BitSet(new long[]{0x0000002000000000L}); + public static final BitSet FOLLOW_74 = new BitSet(new long[]{0x0000002000000002L}); + public static final BitSet FOLLOW_75 = new BitSet(new long[]{0x0000000000800022L}); + public static final BitSet FOLLOW_76 = new BitSet(new long[]{0x0000000010000042L}); + +} diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.tokens b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.tokens index 736b2f0a..591c0e60 100644 --- a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.tokens +++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/internal/InternalSolverLanguageParser.tokens @@ -1,70 +1,75 @@ -'!'=43 -'!='=32 -'('=44 -')'=45 -'*'=46 -'+'=47 -','=48 -'-'=49 -'->'=33 -'.'=50 -'..'=34 -'...'=28 -'/'=51 -':'=52 -':-'=35 -';'=53 -'<'=54 -'<='=36 -'='=55 -'=='=37 -'=>'=38 -'>'=56 -'>='=39 -'['=57 -']'=58 -'^'=59 -'abstract'=5 -'as'=40 -'class'=18 -'contains'=6 -'count'=19 -'current'=11 -'datatype'=7 +'!'=46 +'!='=34 +'('=47 +')'=48 +'*'=49 +'+'=50 +','=51 +'-'=52 +'->'=35 +'.'=53 +'...'=31 +'/'=54 +':'=55 +':-'=36 +'::'=37 +':='=38 +';'=56 +'<'=57 +'<='=39 +'='=58 +'=='=40 +'=>'=41 +'>'=59 +'>='=42 +'?'=60 +'['=61 +']'=62 +'^'=63 +'abstract'=6 +'as'=43 +'class'=20 +'containment'=4 +'contains'=7 +'count'=21 +'datatype'=8 'default'=12 -'else'=24 -'empty'=20 -'error'=21 -'exists'=15 +'else'=26 +'empty'=22 +'enum'=27 +'error'=23 'extends'=13 'extern'=16 -'false'=22 -'forall'=17 -'functional'=4 -'if'=41 -'in'=42 -'inf'=29 -'let'=30 -'maximize'=8 -'may'=31 -'minimize'=9 -'must'=25 -'opposite'=10 -'scope'=23 -'then'=26 -'true'=27 -'unknown'=14 -'{'=60 -'|'=61 -'}'=62 -RULE_ANY_OTHER=73 -RULE_FULL_STOP=68 -RULE_ID=69 -RULE_INT=70 -RULE_ML_COMMENT=71 -RULE_QUOTED_ID=64 -RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67 -RULE_SL_COMMENT=65 -RULE_STRING=63 -RULE_TRANSITIVE_CLOSURE=66 -RULE_WS=72 +'false'=24 +'functional'=5 +'if'=44 +'import'=17 +'in'=45 +'inf'=32 +'let'=33 +'maximize'=9 +'minimize'=10 +'object'=18 +'opposite'=11 +'problem'=14 +'refers'=19 +'root'=28 +'scope'=25 +'then'=29 +'true'=30 +'unknown'=15 +'{'=64 +'|'=65 +'}'=66 +'~'=67 +RULE_ANY_OTHER=78 +RULE_FULL_STOP=73 +RULE_ID=74 +RULE_INT=75 +RULE_ML_COMMENT=76 +RULE_QUOTED_ID=69 +RULE_REFLEXIVE_TRANSITIVE_CLOSURE=72 +RULE_SL_COMMENT=70 +RULE_STRING=68 +RULE_TRANSITIVE_CLOSURE=71 +RULE_WS=77 diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.g b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.g index 77e9557a..dd52bd33 100644 --- a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.g +++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.g @@ -11,6 +11,8 @@ package org.eclipse.viatra.solver.language.ide.contentassist.antlr.lexer; import org.eclipse.xtext.ide.editor.contentassist.antlr.internal.Lexer; } +Containment : 'containment'; + Functional : 'functional'; Abstract : 'abstract'; @@ -25,19 +27,21 @@ Minimize : 'minimize'; Opposite : 'opposite'; -Current : 'current'; - Default : 'default'; Extends : 'extends'; -Unknown : 'unknown'; +Problem : 'problem'; -Exists : 'exists'; +Unknown : 'unknown'; Extern : 'extern'; -Forall : 'forall'; +Import : 'import'; + +Object : 'object'; + +Refers : 'refers'; Class : 'class'; @@ -53,7 +57,9 @@ Scope : 'scope'; Else : 'else'; -Must : 'must'; +Enum : 'enum'; + +Root : 'root'; Then : 'then'; @@ -65,16 +71,16 @@ Inf : 'inf'; Let : 'let'; -May : 'may'; - ExclamationMarkEqualsSign : '!='; HyphenMinusGreaterThanSign : '->'; -FullStopFullStop : '..'; - ColonHyphenMinus : ':-'; +ColonColon : '::'; + +ColonEqualsSign : ':='; + LessThanSignEqualsSign : '<='; EqualsSignEqualsSign : '=='; @@ -117,6 +123,8 @@ EqualsSign : '='; GreaterThanSign : '>'; +QuestionMark : '?'; + LeftSquareBracket : '['; RightSquareBracket : ']'; @@ -129,6 +137,8 @@ VerticalLine : '|'; RightCurlyBracket : '}'; +Tilde : '~'; + RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"'; RULE_QUOTED_ID : '\'' ('\\' .|~(('\\'|'\'')))* '\''; diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.java b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.java index 541338df..c77ac448 100644 --- a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.java +++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.java @@ -12,77 +12,82 @@ import java.util.ArrayList; @SuppressWarnings("all") public class InternalSolverLanguageLexer extends Lexer { - public static final int EqualsSignGreaterThanSign=38; - public static final int True=27; - public static final int Count=19; - public static final int False=22; - public static final int Must=25; - public static final int FullStopFullStopFullStop=28; - public static final int LessThanSign=54; - public static final int Datatype=7; - public static final int LeftParenthesis=44; - public static final int Unknown=14; - public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67; - public static final int FullStopFullStop=34; - public static final int Then=26; + public static final int Enum=27; + public static final int Import=17; + public static final int EqualsSignGreaterThanSign=41; + public static final int True=30; + public static final int Count=21; + public static final int False=24; + public static final int FullStopFullStopFullStop=31; + public static final int LessThanSign=57; + public static final int Datatype=8; + public static final int LeftParenthesis=47; + public static final int Unknown=15; + public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=72; + public static final int Then=29; public static final int Extends=13; - public static final int Forall=17; - public static final int RightSquareBracket=58; - public static final int ExclamationMark=43; - public static final int Opposite=10; - public static final int GreaterThanSign=56; - public static final int RULE_ID=69; - public static final int RULE_QUOTED_ID=64; - public static final int RightParenthesis=45; - public static final int GreaterThanSignEqualsSign=39; - public static final int Functional=4; - public static final int EqualsSignEqualsSign=37; - public static final int VerticalLine=61; - public static final int PlusSign=47; - public static final int RULE_INT=70; - public static final int Contains=6; - public static final int RULE_ML_COMMENT=71; - public static final int RULE_TRANSITIVE_CLOSURE=66; - public static final int Class=18; - public static final int LeftSquareBracket=57; - public static final int RULE_FULL_STOP=68; - public static final int Current=11; - public static final int If=41; - public static final int Inf=29; - public static final int May=31; - public static final int In=42; - public static final int RULE_STRING=63; + public static final int RightSquareBracket=62; + public static final int ExclamationMark=46; + public static final int Opposite=11; + public static final int GreaterThanSign=59; + public static final int Root=28; + public static final int RULE_ID=74; + public static final int RULE_QUOTED_ID=69; + public static final int RightParenthesis=48; + public static final int ColonEqualsSign=38; + public static final int GreaterThanSignEqualsSign=42; + public static final int Functional=5; + public static final int ColonColon=37; + public static final int EqualsSignEqualsSign=40; + public static final int VerticalLine=65; + public static final int PlusSign=50; + public static final int RULE_INT=75; + public static final int Contains=7; + public static final int RULE_ML_COMMENT=76; + public static final int RULE_TRANSITIVE_CLOSURE=71; + public static final int Problem=14; + public static final int Object=18; + public static final int Class=20; + public static final int LeftSquareBracket=61; + public static final int RULE_FULL_STOP=73; + public static final int If=44; + public static final int Refers=19; + public static final int Inf=32; + public static final int In=45; + public static final int RULE_STRING=68; public static final int Extern=16; - public static final int RULE_SL_COMMENT=65; - public static final int Comma=48; - public static final int EqualsSign=55; - public static final int Empty=20; - public static final int As=40; - public static final int HyphenMinus=49; - public static final int Maximize=8; - public static final int LessThanSignEqualsSign=36; - public static final int Solidus=51; - public static final int Colon=52; - public static final int RightCurlyBracket=62; + public static final int RULE_SL_COMMENT=70; + public static final int Comma=51; + public static final int EqualsSign=58; + public static final int Empty=22; + public static final int As=43; + public static final int HyphenMinus=52; + public static final int Maximize=9; + public static final int LessThanSignEqualsSign=39; + public static final int Solidus=54; + public static final int Colon=55; + public static final int RightCurlyBracket=66; public static final int EOF=-1; - public static final int Asterisk=46; - public static final int FullStop=50; - public static final int RULE_WS=72; - public static final int Abstract=5; - public static final int Minimize=9; - public static final int LeftCurlyBracket=60; - public static final int Error=21; - public static final int RULE_ANY_OTHER=73; + public static final int Asterisk=49; + public static final int Containment=4; + public static final int FullStop=53; + public static final int RULE_WS=77; + public static final int Abstract=6; + public static final int Minimize=10; + public static final int LeftCurlyBracket=64; + public static final int Error=23; + public static final int Tilde=67; + public static final int RULE_ANY_OTHER=78; public static final int Default=12; - public static final int ColonHyphenMinus=35; - public static final int CircumflexAccent=59; - public static final int Semicolon=53; - public static final int Scope=23; - public static final int Exists=15; - public static final int Else=24; - public static final int Let=30; - public static final int ExclamationMarkEqualsSign=32; - public static final int HyphenMinusGreaterThanSign=33; + public static final int ColonHyphenMinus=36; + public static final int CircumflexAccent=63; + public static final int Semicolon=56; + public static final int Scope=25; + public static final int QuestionMark=60; + public static final int Else=26; + public static final int Let=33; + public static final int ExclamationMarkEqualsSign=34; + public static final int HyphenMinusGreaterThanSign=35; // delegates // delegators @@ -97,13 +102,34 @@ public class InternalSolverLanguageLexer extends Lexer { } public String getGrammarFileName() { return "InternalSolverLanguageLexer.g"; } + // $ANTLR start "Containment" + public final void mContainment() throws RecognitionException { + try { + int _type = Containment; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:14:13: ( 'containment' ) + // InternalSolverLanguageLexer.g:14:15: 'containment' + { + match("containment"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Containment" + // $ANTLR start "Functional" public final void mFunctional() throws RecognitionException { try { int _type = Functional; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:14:12: ( 'functional' ) - // InternalSolverLanguageLexer.g:14:14: 'functional' + // InternalSolverLanguageLexer.g:16:12: ( 'functional' ) + // InternalSolverLanguageLexer.g:16:14: 'functional' { match("functional"); @@ -123,8 +149,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Abstract; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:16:10: ( 'abstract' ) - // InternalSolverLanguageLexer.g:16:12: 'abstract' + // InternalSolverLanguageLexer.g:18:10: ( 'abstract' ) + // InternalSolverLanguageLexer.g:18:12: 'abstract' { match("abstract"); @@ -144,8 +170,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Contains; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:18:10: ( 'contains' ) - // InternalSolverLanguageLexer.g:18:12: 'contains' + // InternalSolverLanguageLexer.g:20:10: ( 'contains' ) + // InternalSolverLanguageLexer.g:20:12: 'contains' { match("contains"); @@ -165,8 +191,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Datatype; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:20:10: ( 'datatype' ) - // InternalSolverLanguageLexer.g:20:12: 'datatype' + // InternalSolverLanguageLexer.g:22:10: ( 'datatype' ) + // InternalSolverLanguageLexer.g:22:12: 'datatype' { match("datatype"); @@ -186,8 +212,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Maximize; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:22:10: ( 'maximize' ) - // InternalSolverLanguageLexer.g:22:12: 'maximize' + // InternalSolverLanguageLexer.g:24:10: ( 'maximize' ) + // InternalSolverLanguageLexer.g:24:12: 'maximize' { match("maximize"); @@ -207,8 +233,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Minimize; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:24:10: ( 'minimize' ) - // InternalSolverLanguageLexer.g:24:12: 'minimize' + // InternalSolverLanguageLexer.g:26:10: ( 'minimize' ) + // InternalSolverLanguageLexer.g:26:12: 'minimize' { match("minimize"); @@ -228,8 +254,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Opposite; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:26:10: ( 'opposite' ) - // InternalSolverLanguageLexer.g:26:12: 'opposite' + // InternalSolverLanguageLexer.g:28:10: ( 'opposite' ) + // InternalSolverLanguageLexer.g:28:12: 'opposite' { match("opposite"); @@ -244,27 +270,6 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Opposite" - // $ANTLR start "Current" - public final void mCurrent() throws RecognitionException { - try { - int _type = Current; - int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:28:9: ( 'current' ) - // InternalSolverLanguageLexer.g:28:11: 'current' - { - match("current"); - - - } - - state.type = _type; - state.channel = _channel; - } - finally { - } - } - // $ANTLR end "Current" - // $ANTLR start "Default" public final void mDefault() throws RecognitionException { try { @@ -307,15 +312,15 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Extends" - // $ANTLR start "Unknown" - public final void mUnknown() throws RecognitionException { + // $ANTLR start "Problem" + public final void mProblem() throws RecognitionException { try { - int _type = Unknown; + int _type = Problem; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:34:9: ( 'unknown' ) - // InternalSolverLanguageLexer.g:34:11: 'unknown' + // InternalSolverLanguageLexer.g:34:9: ( 'problem' ) + // InternalSolverLanguageLexer.g:34:11: 'problem' { - match("unknown"); + match("problem"); } @@ -326,17 +331,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "Unknown" + // $ANTLR end "Problem" - // $ANTLR start "Exists" - public final void mExists() throws RecognitionException { + // $ANTLR start "Unknown" + public final void mUnknown() throws RecognitionException { try { - int _type = Exists; + int _type = Unknown; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:36:8: ( 'exists' ) - // InternalSolverLanguageLexer.g:36:10: 'exists' + // InternalSolverLanguageLexer.g:36:9: ( 'unknown' ) + // InternalSolverLanguageLexer.g:36:11: 'unknown' { - match("exists"); + match("unknown"); } @@ -347,7 +352,7 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "Exists" + // $ANTLR end "Unknown" // $ANTLR start "Extern" public final void mExtern() throws RecognitionException { @@ -370,15 +375,15 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Extern" - // $ANTLR start "Forall" - public final void mForall() throws RecognitionException { + // $ANTLR start "Import" + public final void mImport() throws RecognitionException { try { - int _type = Forall; + int _type = Import; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:40:8: ( 'forall' ) - // InternalSolverLanguageLexer.g:40:10: 'forall' + // InternalSolverLanguageLexer.g:40:8: ( 'import' ) + // InternalSolverLanguageLexer.g:40:10: 'import' { - match("forall"); + match("import"); } @@ -389,15 +394,57 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "Forall" + // $ANTLR end "Import" + + // $ANTLR start "Object" + public final void mObject() throws RecognitionException { + try { + int _type = Object; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:42:8: ( 'object' ) + // InternalSolverLanguageLexer.g:42:10: 'object' + { + match("object"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Object" + + // $ANTLR start "Refers" + public final void mRefers() throws RecognitionException { + try { + int _type = Refers; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:44:8: ( 'refers' ) + // InternalSolverLanguageLexer.g:44:10: 'refers' + { + match("refers"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Refers" // $ANTLR start "Class" public final void mClass() throws RecognitionException { try { int _type = Class; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:42:7: ( 'class' ) - // InternalSolverLanguageLexer.g:42:9: 'class' + // InternalSolverLanguageLexer.g:46:7: ( 'class' ) + // InternalSolverLanguageLexer.g:46:9: 'class' { match("class"); @@ -417,8 +464,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Count; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:44:7: ( 'count' ) - // InternalSolverLanguageLexer.g:44:9: 'count' + // InternalSolverLanguageLexer.g:48:7: ( 'count' ) + // InternalSolverLanguageLexer.g:48:9: 'count' { match("count"); @@ -438,8 +485,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Empty; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:46:7: ( 'empty' ) - // InternalSolverLanguageLexer.g:46:9: 'empty' + // InternalSolverLanguageLexer.g:50:7: ( 'empty' ) + // InternalSolverLanguageLexer.g:50:9: 'empty' { match("empty"); @@ -459,8 +506,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Error; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:48:7: ( 'error' ) - // InternalSolverLanguageLexer.g:48:9: 'error' + // InternalSolverLanguageLexer.g:52:7: ( 'error' ) + // InternalSolverLanguageLexer.g:52:9: 'error' { match("error"); @@ -480,8 +527,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = False; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:50:7: ( 'false' ) - // InternalSolverLanguageLexer.g:50:9: 'false' + // InternalSolverLanguageLexer.g:54:7: ( 'false' ) + // InternalSolverLanguageLexer.g:54:9: 'false' { match("false"); @@ -501,8 +548,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Scope; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:52:7: ( 'scope' ) - // InternalSolverLanguageLexer.g:52:9: 'scope' + // InternalSolverLanguageLexer.g:56:7: ( 'scope' ) + // InternalSolverLanguageLexer.g:56:9: 'scope' { match("scope"); @@ -522,8 +569,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Else; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:54:6: ( 'else' ) - // InternalSolverLanguageLexer.g:54:8: 'else' + // InternalSolverLanguageLexer.g:58:6: ( 'else' ) + // InternalSolverLanguageLexer.g:58:8: 'else' { match("else"); @@ -538,15 +585,15 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Else" - // $ANTLR start "Must" - public final void mMust() throws RecognitionException { + // $ANTLR start "Enum" + public final void mEnum() throws RecognitionException { try { - int _type = Must; + int _type = Enum; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:56:6: ( 'must' ) - // InternalSolverLanguageLexer.g:56:8: 'must' + // InternalSolverLanguageLexer.g:60:6: ( 'enum' ) + // InternalSolverLanguageLexer.g:60:8: 'enum' { - match("must"); + match("enum"); } @@ -557,15 +604,36 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "Must" + // $ANTLR end "Enum" + + // $ANTLR start "Root" + public final void mRoot() throws RecognitionException { + try { + int _type = Root; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:62:6: ( 'root' ) + // InternalSolverLanguageLexer.g:62:8: 'root' + { + match("root"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Root" // $ANTLR start "Then" public final void mThen() throws RecognitionException { try { int _type = Then; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:58:6: ( 'then' ) - // InternalSolverLanguageLexer.g:58:8: 'then' + // InternalSolverLanguageLexer.g:64:6: ( 'then' ) + // InternalSolverLanguageLexer.g:64:8: 'then' { match("then"); @@ -585,8 +653,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = True; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:60:6: ( 'true' ) - // InternalSolverLanguageLexer.g:60:8: 'true' + // InternalSolverLanguageLexer.g:66:6: ( 'true' ) + // InternalSolverLanguageLexer.g:66:8: 'true' { match("true"); @@ -606,8 +674,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = FullStopFullStopFullStop; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:62:26: ( '...' ) - // InternalSolverLanguageLexer.g:62:28: '...' + // InternalSolverLanguageLexer.g:68:26: ( '...' ) + // InternalSolverLanguageLexer.g:68:28: '...' { match("..."); @@ -627,8 +695,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Inf; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:64:5: ( 'inf' ) - // InternalSolverLanguageLexer.g:64:7: 'inf' + // InternalSolverLanguageLexer.g:70:5: ( 'inf' ) + // InternalSolverLanguageLexer.g:70:7: 'inf' { match("inf"); @@ -648,8 +716,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Let; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:66:5: ( 'let' ) - // InternalSolverLanguageLexer.g:66:7: 'let' + // InternalSolverLanguageLexer.g:72:5: ( 'let' ) + // InternalSolverLanguageLexer.g:72:7: 'let' { match("let"); @@ -664,15 +732,15 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Let" - // $ANTLR start "May" - public final void mMay() throws RecognitionException { + // $ANTLR start "ExclamationMarkEqualsSign" + public final void mExclamationMarkEqualsSign() throws RecognitionException { try { - int _type = May; + int _type = ExclamationMarkEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:68:5: ( 'may' ) - // InternalSolverLanguageLexer.g:68:7: 'may' + // InternalSolverLanguageLexer.g:74:27: ( '!=' ) + // InternalSolverLanguageLexer.g:74:29: '!=' { - match("may"); + match("!="); } @@ -683,17 +751,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "May" + // $ANTLR end "ExclamationMarkEqualsSign" - // $ANTLR start "ExclamationMarkEqualsSign" - public final void mExclamationMarkEqualsSign() throws RecognitionException { + // $ANTLR start "HyphenMinusGreaterThanSign" + public final void mHyphenMinusGreaterThanSign() throws RecognitionException { try { - int _type = ExclamationMarkEqualsSign; + int _type = HyphenMinusGreaterThanSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:70:27: ( '!=' ) - // InternalSolverLanguageLexer.g:70:29: '!=' + // InternalSolverLanguageLexer.g:76:28: ( '->' ) + // InternalSolverLanguageLexer.g:76:30: '->' { - match("!="); + match("->"); } @@ -704,17 +772,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "ExclamationMarkEqualsSign" + // $ANTLR end "HyphenMinusGreaterThanSign" - // $ANTLR start "HyphenMinusGreaterThanSign" - public final void mHyphenMinusGreaterThanSign() throws RecognitionException { + // $ANTLR start "ColonHyphenMinus" + public final void mColonHyphenMinus() throws RecognitionException { try { - int _type = HyphenMinusGreaterThanSign; + int _type = ColonHyphenMinus; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:72:28: ( '->' ) - // InternalSolverLanguageLexer.g:72:30: '->' + // InternalSolverLanguageLexer.g:78:18: ( ':-' ) + // InternalSolverLanguageLexer.g:78:20: ':-' { - match("->"); + match(":-"); } @@ -725,17 +793,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "HyphenMinusGreaterThanSign" + // $ANTLR end "ColonHyphenMinus" - // $ANTLR start "FullStopFullStop" - public final void mFullStopFullStop() throws RecognitionException { + // $ANTLR start "ColonColon" + public final void mColonColon() throws RecognitionException { try { - int _type = FullStopFullStop; + int _type = ColonColon; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:74:18: ( '..' ) - // InternalSolverLanguageLexer.g:74:20: '..' + // InternalSolverLanguageLexer.g:80:12: ( '::' ) + // InternalSolverLanguageLexer.g:80:14: '::' { - match(".."); + match("::"); } @@ -746,17 +814,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "FullStopFullStop" + // $ANTLR end "ColonColon" - // $ANTLR start "ColonHyphenMinus" - public final void mColonHyphenMinus() throws RecognitionException { + // $ANTLR start "ColonEqualsSign" + public final void mColonEqualsSign() throws RecognitionException { try { - int _type = ColonHyphenMinus; + int _type = ColonEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:76:18: ( ':-' ) - // InternalSolverLanguageLexer.g:76:20: ':-' + // InternalSolverLanguageLexer.g:82:17: ( ':=' ) + // InternalSolverLanguageLexer.g:82:19: ':=' { - match(":-"); + match(":="); } @@ -767,15 +835,15 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "ColonHyphenMinus" + // $ANTLR end "ColonEqualsSign" // $ANTLR start "LessThanSignEqualsSign" public final void mLessThanSignEqualsSign() throws RecognitionException { try { int _type = LessThanSignEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:78:24: ( '<=' ) - // InternalSolverLanguageLexer.g:78:26: '<=' + // InternalSolverLanguageLexer.g:84:24: ( '<=' ) + // InternalSolverLanguageLexer.g:84:26: '<=' { match("<="); @@ -795,8 +863,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = EqualsSignEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:80:22: ( '==' ) - // InternalSolverLanguageLexer.g:80:24: '==' + // InternalSolverLanguageLexer.g:86:22: ( '==' ) + // InternalSolverLanguageLexer.g:86:24: '==' { match("=="); @@ -816,8 +884,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = EqualsSignGreaterThanSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:82:27: ( '=>' ) - // InternalSolverLanguageLexer.g:82:29: '=>' + // InternalSolverLanguageLexer.g:88:27: ( '=>' ) + // InternalSolverLanguageLexer.g:88:29: '=>' { match("=>"); @@ -837,8 +905,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = GreaterThanSignEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:84:27: ( '>=' ) - // InternalSolverLanguageLexer.g:84:29: '>=' + // InternalSolverLanguageLexer.g:90:27: ( '>=' ) + // InternalSolverLanguageLexer.g:90:29: '>=' { match(">="); @@ -858,8 +926,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = As; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:86:4: ( 'as' ) - // InternalSolverLanguageLexer.g:86:6: 'as' + // InternalSolverLanguageLexer.g:92:4: ( 'as' ) + // InternalSolverLanguageLexer.g:92:6: 'as' { match("as"); @@ -879,8 +947,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = If; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:88:4: ( 'if' ) - // InternalSolverLanguageLexer.g:88:6: 'if' + // InternalSolverLanguageLexer.g:94:4: ( 'if' ) + // InternalSolverLanguageLexer.g:94:6: 'if' { match("if"); @@ -900,8 +968,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = In; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:90:4: ( 'in' ) - // InternalSolverLanguageLexer.g:90:6: 'in' + // InternalSolverLanguageLexer.g:96:4: ( 'in' ) + // InternalSolverLanguageLexer.g:96:6: 'in' { match("in"); @@ -921,8 +989,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = ExclamationMark; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:92:17: ( '!' ) - // InternalSolverLanguageLexer.g:92:19: '!' + // InternalSolverLanguageLexer.g:98:17: ( '!' ) + // InternalSolverLanguageLexer.g:98:19: '!' { match('!'); @@ -941,8 +1009,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = LeftParenthesis; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:94:17: ( '(' ) - // InternalSolverLanguageLexer.g:94:19: '(' + // InternalSolverLanguageLexer.g:100:17: ( '(' ) + // InternalSolverLanguageLexer.g:100:19: '(' { match('('); @@ -961,8 +1029,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RightParenthesis; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:96:18: ( ')' ) - // InternalSolverLanguageLexer.g:96:20: ')' + // InternalSolverLanguageLexer.g:102:18: ( ')' ) + // InternalSolverLanguageLexer.g:102:20: ')' { match(')'); @@ -981,8 +1049,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Asterisk; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:98:10: ( '*' ) - // InternalSolverLanguageLexer.g:98:12: '*' + // InternalSolverLanguageLexer.g:104:10: ( '*' ) + // InternalSolverLanguageLexer.g:104:12: '*' { match('*'); @@ -1001,8 +1069,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = PlusSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:100:10: ( '+' ) - // InternalSolverLanguageLexer.g:100:12: '+' + // InternalSolverLanguageLexer.g:106:10: ( '+' ) + // InternalSolverLanguageLexer.g:106:12: '+' { match('+'); @@ -1021,8 +1089,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Comma; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:102:7: ( ',' ) - // InternalSolverLanguageLexer.g:102:9: ',' + // InternalSolverLanguageLexer.g:108:7: ( ',' ) + // InternalSolverLanguageLexer.g:108:9: ',' { match(','); @@ -1041,8 +1109,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = HyphenMinus; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:104:13: ( '-' ) - // InternalSolverLanguageLexer.g:104:15: '-' + // InternalSolverLanguageLexer.g:110:13: ( '-' ) + // InternalSolverLanguageLexer.g:110:15: '-' { match('-'); @@ -1061,8 +1129,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = FullStop; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:106:10: ( '.' ) - // InternalSolverLanguageLexer.g:106:12: '.' + // InternalSolverLanguageLexer.g:112:10: ( '.' ) + // InternalSolverLanguageLexer.g:112:12: '.' { match('.'); @@ -1081,8 +1149,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Solidus; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:108:9: ( '/' ) - // InternalSolverLanguageLexer.g:108:11: '/' + // InternalSolverLanguageLexer.g:114:9: ( '/' ) + // InternalSolverLanguageLexer.g:114:11: '/' { match('/'); @@ -1101,8 +1169,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Colon; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:110:7: ( ':' ) - // InternalSolverLanguageLexer.g:110:9: ':' + // InternalSolverLanguageLexer.g:116:7: ( ':' ) + // InternalSolverLanguageLexer.g:116:9: ':' { match(':'); @@ -1121,8 +1189,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Semicolon; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:112:11: ( ';' ) - // InternalSolverLanguageLexer.g:112:13: ';' + // InternalSolverLanguageLexer.g:118:11: ( ';' ) + // InternalSolverLanguageLexer.g:118:13: ';' { match(';'); @@ -1141,8 +1209,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = LessThanSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:114:14: ( '<' ) - // InternalSolverLanguageLexer.g:114:16: '<' + // InternalSolverLanguageLexer.g:120:14: ( '<' ) + // InternalSolverLanguageLexer.g:120:16: '<' { match('<'); @@ -1161,8 +1229,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = EqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:116:12: ( '=' ) - // InternalSolverLanguageLexer.g:116:14: '=' + // InternalSolverLanguageLexer.g:122:12: ( '=' ) + // InternalSolverLanguageLexer.g:122:14: '=' { match('='); @@ -1181,8 +1249,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = GreaterThanSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:118:17: ( '>' ) - // InternalSolverLanguageLexer.g:118:19: '>' + // InternalSolverLanguageLexer.g:124:17: ( '>' ) + // InternalSolverLanguageLexer.g:124:19: '>' { match('>'); @@ -1196,13 +1264,33 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "GreaterThanSign" + // $ANTLR start "QuestionMark" + public final void mQuestionMark() throws RecognitionException { + try { + int _type = QuestionMark; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:126:14: ( '?' ) + // InternalSolverLanguageLexer.g:126:16: '?' + { + match('?'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "QuestionMark" + // $ANTLR start "LeftSquareBracket" public final void mLeftSquareBracket() throws RecognitionException { try { int _type = LeftSquareBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:120:19: ( '[' ) - // InternalSolverLanguageLexer.g:120:21: '[' + // InternalSolverLanguageLexer.g:128:19: ( '[' ) + // InternalSolverLanguageLexer.g:128:21: '[' { match('['); @@ -1221,8 +1309,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RightSquareBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:122:20: ( ']' ) - // InternalSolverLanguageLexer.g:122:22: ']' + // InternalSolverLanguageLexer.g:130:20: ( ']' ) + // InternalSolverLanguageLexer.g:130:22: ']' { match(']'); @@ -1241,8 +1329,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = CircumflexAccent; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:124:18: ( '^' ) - // InternalSolverLanguageLexer.g:124:20: '^' + // InternalSolverLanguageLexer.g:132:18: ( '^' ) + // InternalSolverLanguageLexer.g:132:20: '^' { match('^'); @@ -1261,8 +1349,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = LeftCurlyBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:126:18: ( '{' ) - // InternalSolverLanguageLexer.g:126:20: '{' + // InternalSolverLanguageLexer.g:134:18: ( '{' ) + // InternalSolverLanguageLexer.g:134:20: '{' { match('{'); @@ -1281,8 +1369,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = VerticalLine; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:128:14: ( '|' ) - // InternalSolverLanguageLexer.g:128:16: '|' + // InternalSolverLanguageLexer.g:136:14: ( '|' ) + // InternalSolverLanguageLexer.g:136:16: '|' { match('|'); @@ -1301,8 +1389,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RightCurlyBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:130:19: ( '}' ) - // InternalSolverLanguageLexer.g:130:21: '}' + // InternalSolverLanguageLexer.g:138:19: ( '}' ) + // InternalSolverLanguageLexer.g:138:21: '}' { match('}'); @@ -1316,16 +1404,36 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "RightCurlyBracket" + // $ANTLR start "Tilde" + public final void mTilde() throws RecognitionException { + try { + int _type = Tilde; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:140:7: ( '~' ) + // InternalSolverLanguageLexer.g:140:9: '~' + { + match('~'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Tilde" + // $ANTLR start "RULE_STRING" public final void mRULE_STRING() throws RecognitionException { try { int _type = RULE_STRING; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:132:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' ) - // InternalSolverLanguageLexer.g:132:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' + // InternalSolverLanguageLexer.g:142:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' ) + // InternalSolverLanguageLexer.g:142:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' { match('\"'); - // InternalSolverLanguageLexer.g:132:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* + // InternalSolverLanguageLexer.g:142:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* loop1: do { int alt1=3; @@ -1341,7 +1449,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt1) { case 1 : - // InternalSolverLanguageLexer.g:132:20: '\\\\' . + // InternalSolverLanguageLexer.g:142:20: '\\\\' . { match('\\'); matchAny(); @@ -1349,7 +1457,7 @@ public class InternalSolverLanguageLexer extends Lexer { } break; case 2 : - // InternalSolverLanguageLexer.g:132:27: ~ ( ( '\\\\' | '\"' ) ) + // InternalSolverLanguageLexer.g:142:27: ~ ( ( '\\\\' | '\"' ) ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1386,11 +1494,11 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_QUOTED_ID; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:134:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) - // InternalSolverLanguageLexer.g:134:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' + // InternalSolverLanguageLexer.g:144:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) + // InternalSolverLanguageLexer.g:144:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' { match('\''); - // InternalSolverLanguageLexer.g:134:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* + // InternalSolverLanguageLexer.g:144:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* loop2: do { int alt2=3; @@ -1406,7 +1514,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt2) { case 1 : - // InternalSolverLanguageLexer.g:134:24: '\\\\' . + // InternalSolverLanguageLexer.g:144:24: '\\\\' . { match('\\'); matchAny(); @@ -1414,7 +1522,7 @@ public class InternalSolverLanguageLexer extends Lexer { } break; case 2 : - // InternalSolverLanguageLexer.g:134:31: ~ ( ( '\\\\' | '\\'' ) ) + // InternalSolverLanguageLexer.g:144:31: ~ ( ( '\\\\' | '\\'' ) ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1451,10 +1559,10 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_SL_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:136:17: ( ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) - // InternalSolverLanguageLexer.g:136:19: ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? + // InternalSolverLanguageLexer.g:146:17: ( ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) + // InternalSolverLanguageLexer.g:146:19: ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? { - // InternalSolverLanguageLexer.g:136:19: ( '%' | '//' ) + // InternalSolverLanguageLexer.g:146:19: ( '%' | '//' ) int alt3=2; int LA3_0 = input.LA(1); @@ -1472,14 +1580,14 @@ public class InternalSolverLanguageLexer extends Lexer { } switch (alt3) { case 1 : - // InternalSolverLanguageLexer.g:136:20: '%' + // InternalSolverLanguageLexer.g:146:20: '%' { match('%'); } break; case 2 : - // InternalSolverLanguageLexer.g:136:24: '//' + // InternalSolverLanguageLexer.g:146:24: '//' { match("//"); @@ -1489,7 +1597,7 @@ public class InternalSolverLanguageLexer extends Lexer { } - // InternalSolverLanguageLexer.g:136:30: (~ ( ( '\\n' | '\\r' ) ) )* + // InternalSolverLanguageLexer.g:146:30: (~ ( ( '\\n' | '\\r' ) ) )* loop4: do { int alt4=2; @@ -1502,7 +1610,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt4) { case 1 : - // InternalSolverLanguageLexer.g:136:30: ~ ( ( '\\n' | '\\r' ) ) + // InternalSolverLanguageLexer.g:146:30: ~ ( ( '\\n' | '\\r' ) ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1522,7 +1630,7 @@ public class InternalSolverLanguageLexer extends Lexer { } } while (true); - // InternalSolverLanguageLexer.g:136:46: ( ( '\\r' )? '\\n' )? + // InternalSolverLanguageLexer.g:146:46: ( ( '\\r' )? '\\n' )? int alt6=2; int LA6_0 = input.LA(1); @@ -1531,9 +1639,9 @@ public class InternalSolverLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // InternalSolverLanguageLexer.g:136:47: ( '\\r' )? '\\n' + // InternalSolverLanguageLexer.g:146:47: ( '\\r' )? '\\n' { - // InternalSolverLanguageLexer.g:136:47: ( '\\r' )? + // InternalSolverLanguageLexer.g:146:47: ( '\\r' )? int alt5=2; int LA5_0 = input.LA(1); @@ -1542,7 +1650,7 @@ public class InternalSolverLanguageLexer extends Lexer { } switch (alt5) { case 1 : - // InternalSolverLanguageLexer.g:136:47: '\\r' + // InternalSolverLanguageLexer.g:146:47: '\\r' { match('\r'); @@ -1572,8 +1680,8 @@ public class InternalSolverLanguageLexer extends Lexer { // $ANTLR start "RULE_TRANSITIVE_CLOSURE" public final void mRULE_TRANSITIVE_CLOSURE() throws RecognitionException { try { - // InternalSolverLanguageLexer.g:138:34: () - // InternalSolverLanguageLexer.g:138:36: + // InternalSolverLanguageLexer.g:148:34: () + // InternalSolverLanguageLexer.g:148:36: { } @@ -1586,8 +1694,8 @@ public class InternalSolverLanguageLexer extends Lexer { // $ANTLR start "RULE_REFLEXIVE_TRANSITIVE_CLOSURE" public final void mRULE_REFLEXIVE_TRANSITIVE_CLOSURE() throws RecognitionException { try { - // InternalSolverLanguageLexer.g:140:44: () - // InternalSolverLanguageLexer.g:140:46: + // InternalSolverLanguageLexer.g:150:44: () + // InternalSolverLanguageLexer.g:150:46: { } @@ -1600,8 +1708,8 @@ public class InternalSolverLanguageLexer extends Lexer { // $ANTLR start "RULE_FULL_STOP" public final void mRULE_FULL_STOP() throws RecognitionException { try { - // InternalSolverLanguageLexer.g:142:25: () - // InternalSolverLanguageLexer.g:142:27: + // InternalSolverLanguageLexer.g:152:25: () + // InternalSolverLanguageLexer.g:152:27: { } @@ -1616,10 +1724,10 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_ID; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:144:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) - // InternalSolverLanguageLexer.g:144:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + // InternalSolverLanguageLexer.g:154:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) + // InternalSolverLanguageLexer.g:154:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* { - // InternalSolverLanguageLexer.g:144:11: ( '^' )? + // InternalSolverLanguageLexer.g:154:11: ( '^' )? int alt7=2; int LA7_0 = input.LA(1); @@ -1628,7 +1736,7 @@ public class InternalSolverLanguageLexer extends Lexer { } switch (alt7) { case 1 : - // InternalSolverLanguageLexer.g:144:11: '^' + // InternalSolverLanguageLexer.g:154:11: '^' { match('^'); @@ -1646,7 +1754,7 @@ public class InternalSolverLanguageLexer extends Lexer { recover(mse); throw mse;} - // InternalSolverLanguageLexer.g:144:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + // InternalSolverLanguageLexer.g:154:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* loop8: do { int alt8=2; @@ -1695,10 +1803,10 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_INT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:146:10: ( ( '0' .. '9' )+ ) - // InternalSolverLanguageLexer.g:146:12: ( '0' .. '9' )+ + // InternalSolverLanguageLexer.g:156:10: ( ( '0' .. '9' )+ ) + // InternalSolverLanguageLexer.g:156:12: ( '0' .. '9' )+ { - // InternalSolverLanguageLexer.g:146:12: ( '0' .. '9' )+ + // InternalSolverLanguageLexer.g:156:12: ( '0' .. '9' )+ int cnt9=0; loop9: do { @@ -1712,7 +1820,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt9) { case 1 : - // InternalSolverLanguageLexer.g:146:13: '0' .. '9' + // InternalSolverLanguageLexer.g:156:13: '0' .. '9' { matchRange('0','9'); @@ -1744,12 +1852,12 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_ML_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:148:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // InternalSolverLanguageLexer.g:148:19: '/*' ( options {greedy=false; } : . )* '*/' + // InternalSolverLanguageLexer.g:158:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // InternalSolverLanguageLexer.g:158:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // InternalSolverLanguageLexer.g:148:24: ( options {greedy=false; } : . )* + // InternalSolverLanguageLexer.g:158:24: ( options {greedy=false; } : . )* loop10: do { int alt10=2; @@ -1774,7 +1882,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt10) { case 1 : - // InternalSolverLanguageLexer.g:148:52: . + // InternalSolverLanguageLexer.g:158:52: . { matchAny(); @@ -1804,10 +1912,10 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_WS; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:150:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // InternalSolverLanguageLexer.g:150:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // InternalSolverLanguageLexer.g:160:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // InternalSolverLanguageLexer.g:160:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // InternalSolverLanguageLexer.g:150:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // InternalSolverLanguageLexer.g:160:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -1861,8 +1969,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_ANY_OTHER; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:152:16: ( . ) - // InternalSolverLanguageLexer.g:152:18: . + // InternalSolverLanguageLexer.g:162:16: ( . ) + // InternalSolverLanguageLexer.g:162:18: . { matchAny(); @@ -1877,474 +1985,509 @@ public class InternalSolverLanguageLexer extends Lexer { // $ANTLR end "RULE_ANY_OTHER" public void mTokens() throws RecognitionException { - // InternalSolverLanguageLexer.g:1:8: ( Functional | Abstract | Contains | Datatype | Maximize | Minimize | Opposite | Current | Default | Extends | Unknown | Exists | Extern | Forall | Class | Count | Empty | Error | False | Scope | Else | Must | Then | True | FullStopFullStopFullStop | Inf | Let | May | ExclamationMarkEqualsSign | HyphenMinusGreaterThanSign | FullStopFullStop | ColonHyphenMinus | LessThanSignEqualsSign | EqualsSignEqualsSign | EqualsSignGreaterThanSign | GreaterThanSignEqualsSign | As | If | In | ExclamationMark | LeftParenthesis | RightParenthesis | Asterisk | PlusSign | Comma | HyphenMinus | FullStop | Solidus | Colon | Semicolon | LessThanSign | EqualsSign | GreaterThanSign | LeftSquareBracket | RightSquareBracket | CircumflexAccent | LeftCurlyBracket | VerticalLine | RightCurlyBracket | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER ) - int alt12=67; + // InternalSolverLanguageLexer.g:1:8: ( Containment | Functional | Abstract | Contains | Datatype | Maximize | Minimize | Opposite | Default | Extends | Problem | Unknown | Extern | Import | Object | Refers | Class | Count | Empty | Error | False | Scope | Else | Enum | Root | Then | True | FullStopFullStopFullStop | Inf | Let | ExclamationMarkEqualsSign | HyphenMinusGreaterThanSign | ColonHyphenMinus | ColonColon | ColonEqualsSign | LessThanSignEqualsSign | EqualsSignEqualsSign | EqualsSignGreaterThanSign | GreaterThanSignEqualsSign | As | If | In | ExclamationMark | LeftParenthesis | RightParenthesis | Asterisk | PlusSign | Comma | HyphenMinus | FullStop | Solidus | Colon | Semicolon | LessThanSign | EqualsSign | GreaterThanSign | QuestionMark | LeftSquareBracket | RightSquareBracket | CircumflexAccent | LeftCurlyBracket | VerticalLine | RightCurlyBracket | Tilde | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER ) + int alt12=72; alt12 = dfa12.predict(input); switch (alt12) { case 1 : - // InternalSolverLanguageLexer.g:1:10: Functional + // InternalSolverLanguageLexer.g:1:10: Containment { - mFunctional(); + mContainment(); } break; case 2 : - // InternalSolverLanguageLexer.g:1:21: Abstract + // InternalSolverLanguageLexer.g:1:22: Functional { - mAbstract(); + mFunctional(); } break; case 3 : - // InternalSolverLanguageLexer.g:1:30: Contains + // InternalSolverLanguageLexer.g:1:33: Abstract { - mContains(); + mAbstract(); } break; case 4 : - // InternalSolverLanguageLexer.g:1:39: Datatype + // InternalSolverLanguageLexer.g:1:42: Contains { - mDatatype(); + mContains(); } break; case 5 : - // InternalSolverLanguageLexer.g:1:48: Maximize + // InternalSolverLanguageLexer.g:1:51: Datatype { - mMaximize(); + mDatatype(); } break; case 6 : - // InternalSolverLanguageLexer.g:1:57: Minimize + // InternalSolverLanguageLexer.g:1:60: Maximize { - mMinimize(); + mMaximize(); } break; case 7 : - // InternalSolverLanguageLexer.g:1:66: Opposite + // InternalSolverLanguageLexer.g:1:69: Minimize { - mOpposite(); + mMinimize(); } break; case 8 : - // InternalSolverLanguageLexer.g:1:75: Current + // InternalSolverLanguageLexer.g:1:78: Opposite { - mCurrent(); + mOpposite(); } break; case 9 : - // InternalSolverLanguageLexer.g:1:83: Default + // InternalSolverLanguageLexer.g:1:87: Default { mDefault(); } break; case 10 : - // InternalSolverLanguageLexer.g:1:91: Extends + // InternalSolverLanguageLexer.g:1:95: Extends { mExtends(); } break; case 11 : - // InternalSolverLanguageLexer.g:1:99: Unknown + // InternalSolverLanguageLexer.g:1:103: Problem { - mUnknown(); + mProblem(); } break; case 12 : - // InternalSolverLanguageLexer.g:1:107: Exists + // InternalSolverLanguageLexer.g:1:111: Unknown { - mExists(); + mUnknown(); } break; case 13 : - // InternalSolverLanguageLexer.g:1:114: Extern + // InternalSolverLanguageLexer.g:1:119: Extern { mExtern(); } break; case 14 : - // InternalSolverLanguageLexer.g:1:121: Forall + // InternalSolverLanguageLexer.g:1:126: Import { - mForall(); + mImport(); } break; case 15 : - // InternalSolverLanguageLexer.g:1:128: Class + // InternalSolverLanguageLexer.g:1:133: Object { - mClass(); + mObject(); } break; case 16 : - // InternalSolverLanguageLexer.g:1:134: Count + // InternalSolverLanguageLexer.g:1:140: Refers { - mCount(); + mRefers(); } break; case 17 : - // InternalSolverLanguageLexer.g:1:140: Empty + // InternalSolverLanguageLexer.g:1:147: Class { - mEmpty(); + mClass(); } break; case 18 : - // InternalSolverLanguageLexer.g:1:146: Error + // InternalSolverLanguageLexer.g:1:153: Count { - mError(); + mCount(); } break; case 19 : - // InternalSolverLanguageLexer.g:1:152: False + // InternalSolverLanguageLexer.g:1:159: Empty { - mFalse(); + mEmpty(); } break; case 20 : - // InternalSolverLanguageLexer.g:1:158: Scope + // InternalSolverLanguageLexer.g:1:165: Error { - mScope(); + mError(); } break; case 21 : - // InternalSolverLanguageLexer.g:1:164: Else + // InternalSolverLanguageLexer.g:1:171: False { - mElse(); + mFalse(); } break; case 22 : - // InternalSolverLanguageLexer.g:1:169: Must + // InternalSolverLanguageLexer.g:1:177: Scope { - mMust(); + mScope(); } break; case 23 : - // InternalSolverLanguageLexer.g:1:174: Then + // InternalSolverLanguageLexer.g:1:183: Else { - mThen(); + mElse(); } break; case 24 : - // InternalSolverLanguageLexer.g:1:179: True + // InternalSolverLanguageLexer.g:1:188: Enum { - mTrue(); + mEnum(); } break; case 25 : - // InternalSolverLanguageLexer.g:1:184: FullStopFullStopFullStop + // InternalSolverLanguageLexer.g:1:193: Root { - mFullStopFullStopFullStop(); + mRoot(); } break; case 26 : - // InternalSolverLanguageLexer.g:1:209: Inf + // InternalSolverLanguageLexer.g:1:198: Then { - mInf(); + mThen(); } break; case 27 : - // InternalSolverLanguageLexer.g:1:213: Let + // InternalSolverLanguageLexer.g:1:203: True { - mLet(); + mTrue(); } break; case 28 : - // InternalSolverLanguageLexer.g:1:217: May + // InternalSolverLanguageLexer.g:1:208: FullStopFullStopFullStop { - mMay(); + mFullStopFullStopFullStop(); } break; case 29 : - // InternalSolverLanguageLexer.g:1:221: ExclamationMarkEqualsSign + // InternalSolverLanguageLexer.g:1:233: Inf { - mExclamationMarkEqualsSign(); + mInf(); } break; case 30 : - // InternalSolverLanguageLexer.g:1:247: HyphenMinusGreaterThanSign + // InternalSolverLanguageLexer.g:1:237: Let { - mHyphenMinusGreaterThanSign(); + mLet(); } break; case 31 : - // InternalSolverLanguageLexer.g:1:274: FullStopFullStop + // InternalSolverLanguageLexer.g:1:241: ExclamationMarkEqualsSign { - mFullStopFullStop(); + mExclamationMarkEqualsSign(); } break; case 32 : - // InternalSolverLanguageLexer.g:1:291: ColonHyphenMinus + // InternalSolverLanguageLexer.g:1:267: HyphenMinusGreaterThanSign { - mColonHyphenMinus(); + mHyphenMinusGreaterThanSign(); } break; case 33 : - // InternalSolverLanguageLexer.g:1:308: LessThanSignEqualsSign + // InternalSolverLanguageLexer.g:1:294: ColonHyphenMinus { - mLessThanSignEqualsSign(); + mColonHyphenMinus(); } break; case 34 : - // InternalSolverLanguageLexer.g:1:331: EqualsSignEqualsSign + // InternalSolverLanguageLexer.g:1:311: ColonColon { - mEqualsSignEqualsSign(); + mColonColon(); } break; case 35 : - // InternalSolverLanguageLexer.g:1:352: EqualsSignGreaterThanSign + // InternalSolverLanguageLexer.g:1:322: ColonEqualsSign { - mEqualsSignGreaterThanSign(); + mColonEqualsSign(); } break; case 36 : - // InternalSolverLanguageLexer.g:1:378: GreaterThanSignEqualsSign + // InternalSolverLanguageLexer.g:1:338: LessThanSignEqualsSign { - mGreaterThanSignEqualsSign(); + mLessThanSignEqualsSign(); } break; case 37 : - // InternalSolverLanguageLexer.g:1:404: As + // InternalSolverLanguageLexer.g:1:361: EqualsSignEqualsSign { - mAs(); + mEqualsSignEqualsSign(); } break; case 38 : - // InternalSolverLanguageLexer.g:1:407: If + // InternalSolverLanguageLexer.g:1:382: EqualsSignGreaterThanSign { - mIf(); + mEqualsSignGreaterThanSign(); } break; case 39 : - // InternalSolverLanguageLexer.g:1:410: In + // InternalSolverLanguageLexer.g:1:408: GreaterThanSignEqualsSign { - mIn(); + mGreaterThanSignEqualsSign(); } break; case 40 : - // InternalSolverLanguageLexer.g:1:413: ExclamationMark + // InternalSolverLanguageLexer.g:1:434: As { - mExclamationMark(); + mAs(); } break; case 41 : - // InternalSolverLanguageLexer.g:1:429: LeftParenthesis + // InternalSolverLanguageLexer.g:1:437: If { - mLeftParenthesis(); + mIf(); } break; case 42 : - // InternalSolverLanguageLexer.g:1:445: RightParenthesis + // InternalSolverLanguageLexer.g:1:440: In { - mRightParenthesis(); + mIn(); } break; case 43 : - // InternalSolverLanguageLexer.g:1:462: Asterisk + // InternalSolverLanguageLexer.g:1:443: ExclamationMark { - mAsterisk(); + mExclamationMark(); } break; case 44 : - // InternalSolverLanguageLexer.g:1:471: PlusSign + // InternalSolverLanguageLexer.g:1:459: LeftParenthesis { - mPlusSign(); + mLeftParenthesis(); } break; case 45 : - // InternalSolverLanguageLexer.g:1:480: Comma + // InternalSolverLanguageLexer.g:1:475: RightParenthesis { - mComma(); + mRightParenthesis(); } break; case 46 : - // InternalSolverLanguageLexer.g:1:486: HyphenMinus + // InternalSolverLanguageLexer.g:1:492: Asterisk { - mHyphenMinus(); + mAsterisk(); } break; case 47 : - // InternalSolverLanguageLexer.g:1:498: FullStop + // InternalSolverLanguageLexer.g:1:501: PlusSign { - mFullStop(); + mPlusSign(); } break; case 48 : - // InternalSolverLanguageLexer.g:1:507: Solidus + // InternalSolverLanguageLexer.g:1:510: Comma { - mSolidus(); + mComma(); } break; case 49 : - // InternalSolverLanguageLexer.g:1:515: Colon + // InternalSolverLanguageLexer.g:1:516: HyphenMinus { - mColon(); + mHyphenMinus(); } break; case 50 : - // InternalSolverLanguageLexer.g:1:521: Semicolon + // InternalSolverLanguageLexer.g:1:528: FullStop { - mSemicolon(); + mFullStop(); } break; case 51 : - // InternalSolverLanguageLexer.g:1:531: LessThanSign + // InternalSolverLanguageLexer.g:1:537: Solidus { - mLessThanSign(); + mSolidus(); } break; case 52 : - // InternalSolverLanguageLexer.g:1:544: EqualsSign + // InternalSolverLanguageLexer.g:1:545: Colon { - mEqualsSign(); + mColon(); } break; case 53 : - // InternalSolverLanguageLexer.g:1:555: GreaterThanSign + // InternalSolverLanguageLexer.g:1:551: Semicolon { - mGreaterThanSign(); + mSemicolon(); } break; case 54 : - // InternalSolverLanguageLexer.g:1:571: LeftSquareBracket + // InternalSolverLanguageLexer.g:1:561: LessThanSign { - mLeftSquareBracket(); + mLessThanSign(); } break; case 55 : - // InternalSolverLanguageLexer.g:1:589: RightSquareBracket + // InternalSolverLanguageLexer.g:1:574: EqualsSign { - mRightSquareBracket(); + mEqualsSign(); } break; case 56 : - // InternalSolverLanguageLexer.g:1:608: CircumflexAccent + // InternalSolverLanguageLexer.g:1:585: GreaterThanSign { - mCircumflexAccent(); + mGreaterThanSign(); } break; case 57 : - // InternalSolverLanguageLexer.g:1:625: LeftCurlyBracket + // InternalSolverLanguageLexer.g:1:601: QuestionMark { - mLeftCurlyBracket(); + mQuestionMark(); } break; case 58 : - // InternalSolverLanguageLexer.g:1:642: VerticalLine + // InternalSolverLanguageLexer.g:1:614: LeftSquareBracket { - mVerticalLine(); + mLeftSquareBracket(); } break; case 59 : - // InternalSolverLanguageLexer.g:1:655: RightCurlyBracket + // InternalSolverLanguageLexer.g:1:632: RightSquareBracket { - mRightCurlyBracket(); + mRightSquareBracket(); } break; case 60 : - // InternalSolverLanguageLexer.g:1:673: RULE_STRING + // InternalSolverLanguageLexer.g:1:651: CircumflexAccent { - mRULE_STRING(); + mCircumflexAccent(); } break; case 61 : - // InternalSolverLanguageLexer.g:1:685: RULE_QUOTED_ID + // InternalSolverLanguageLexer.g:1:668: LeftCurlyBracket { - mRULE_QUOTED_ID(); + mLeftCurlyBracket(); } break; case 62 : - // InternalSolverLanguageLexer.g:1:700: RULE_SL_COMMENT + // InternalSolverLanguageLexer.g:1:685: VerticalLine { - mRULE_SL_COMMENT(); + mVerticalLine(); } break; case 63 : - // InternalSolverLanguageLexer.g:1:716: RULE_ID + // InternalSolverLanguageLexer.g:1:698: RightCurlyBracket { - mRULE_ID(); + mRightCurlyBracket(); } break; case 64 : - // InternalSolverLanguageLexer.g:1:724: RULE_INT + // InternalSolverLanguageLexer.g:1:716: Tilde { - mRULE_INT(); + mTilde(); } break; case 65 : - // InternalSolverLanguageLexer.g:1:733: RULE_ML_COMMENT + // InternalSolverLanguageLexer.g:1:722: RULE_STRING { - mRULE_ML_COMMENT(); + mRULE_STRING(); } break; case 66 : - // InternalSolverLanguageLexer.g:1:749: RULE_WS + // InternalSolverLanguageLexer.g:1:734: RULE_QUOTED_ID { - mRULE_WS(); + mRULE_QUOTED_ID(); } break; case 67 : - // InternalSolverLanguageLexer.g:1:757: RULE_ANY_OTHER + // InternalSolverLanguageLexer.g:1:749: RULE_SL_COMMENT + { + mRULE_SL_COMMENT(); + + } + break; + case 68 : + // InternalSolverLanguageLexer.g:1:765: RULE_ID + { + mRULE_ID(); + + } + break; + case 69 : + // InternalSolverLanguageLexer.g:1:773: RULE_INT + { + mRULE_INT(); + + } + break; + case 70 : + // InternalSolverLanguageLexer.g:1:782: RULE_ML_COMMENT + { + mRULE_ML_COMMENT(); + + } + break; + case 71 : + // InternalSolverLanguageLexer.g:1:798: RULE_WS + { + mRULE_WS(); + + } + break; + case 72 : + // InternalSolverLanguageLexer.g:1:806: RULE_ANY_OTHER { mRULE_ANY_OTHER(); @@ -2358,74 +2501,69 @@ public class InternalSolverLanguageLexer extends Lexer { protected DFA12 dfa12 = new DFA12(this); static final String DFA12_eotS = - "\1\uffff\12\53\1\100\2\53\1\105\1\107\1\111\1\113\1\116\1\120\5\uffff\1\130\3\uffff\1\134\3\uffff\2\47\5\uffff\3\53\1\uffff\1\53\1\150\21\53\1\176\1\uffff\1\u0080\1\u0081\1\53\40\uffff\4\53\1\uffff\7\53\1\u008e\14\53\2\uffff\1\u009b\2\uffff\1\u009c\13\53\1\uffff\1\53\1\u00a9\5\53\1\u00b0\2\53\1\u00b3\1\u00b4\2\uffff\2\53\1\u00b7\2\53\1\u00ba\1\53\1\u00bc\4\53\1\uffff\4\53\1\u00c5\1\u00c6\1\uffff\1\53\1\u00c8\2\uffff\1\53\1\u00ca\1\uffff\2\53\1\uffff\1\53\1\uffff\6\53\1\u00d4\1\u00d5\2\uffff\1\53\1\uffff\1\53\1\uffff\2\53\1\u00da\1\53\1\u00dc\3\53\1\u00e0\2\uffff\1\u00e1\1\53\1\u00e3\1\u00e4\1\uffff\1\u00e5\1\uffff\1\u00e6\1\u00e7\1\u00e8\2\uffff\1\53\6\uffff\1\u00ea\1\uffff"; + "\1\uffff\15\56\1\111\1\56\1\114\1\116\1\122\1\124\1\127\1\131\5\uffff\1\141\4\uffff\1\146\4\uffff\2\53\5\uffff\2\56\1\uffff\3\56\1\165\16\56\1\u0085\1\u0086\5\56\2\uffff\1\56\44\uffff\6\56\1\uffff\16\56\1\u00a1\2\uffff\5\56\1\u00a7\17\56\1\u00b8\1\u00b9\3\56\1\uffff\1\56\1\u00be\1\56\1\u00c0\1\u00c1\1\uffff\1\56\1\u00c3\1\u00c4\1\56\1\u00c6\11\56\1\u00d0\1\u00d1\2\uffff\4\56\1\uffff\1\u00d6\2\uffff\1\56\2\uffff\1\56\1\uffff\6\56\1\u00df\1\56\1\u00e1\2\uffff\2\56\1\u00e4\1\u00e5\1\uffff\4\56\1\u00eb\3\56\1\uffff\1\u00ef\1\uffff\1\u00f0\1\u00f1\2\uffff\1\56\1\u00f3\1\56\1\u00f5\1\u00f6\1\uffff\1\u00f7\1\u00f8\1\u00f9\3\uffff\1\56\1\uffff\1\56\5\uffff\1\56\1\u00fd\1\u00fe\2\uffff"; static final String DFA12_eofS = - "\u00eb\uffff"; + "\u00ff\uffff"; static final String DFA12_minS = - "\1\0\1\141\1\142\1\154\2\141\1\160\1\154\1\156\1\143\1\150\1\56\1\146\1\145\1\75\1\76\1\55\3\75\5\uffff\1\52\3\uffff\1\101\3\uffff\2\0\5\uffff\1\156\1\162\1\154\1\uffff\1\163\1\60\1\156\1\162\1\141\1\164\1\146\1\170\1\156\1\163\1\160\1\151\1\160\1\162\1\163\1\153\1\157\1\145\1\165\1\56\1\uffff\2\60\1\164\40\uffff\1\143\1\141\1\163\1\164\1\uffff\1\164\1\156\1\162\1\163\2\141\1\151\1\60\1\151\1\164\1\157\1\145\1\163\1\164\1\157\1\145\1\156\1\160\1\156\1\145\2\uffff\1\60\2\uffff\1\60\1\164\1\154\1\145\1\162\1\141\1\164\1\145\1\163\1\164\1\165\1\155\1\uffff\1\155\1\60\1\163\1\156\1\164\1\171\1\162\1\60\1\157\1\145\2\60\2\uffff\1\151\1\154\1\60\1\141\1\151\1\60\1\156\1\60\1\171\1\154\2\151\1\uffff\1\151\1\144\1\156\1\163\2\60\1\uffff\1\167\1\60\2\uffff\1\157\1\60\1\uffff\1\143\1\156\1\uffff\1\164\1\uffff\1\160\1\164\2\172\1\164\1\163\2\60\2\uffff\1\156\1\uffff\1\156\1\uffff\1\164\1\163\1\60\1\145\1\60\3\145\1\60\2\uffff\1\60\1\141\2\60\1\uffff\1\60\1\uffff\3\60\2\uffff\1\154\6\uffff\1\60\1\uffff"; + "\1\0\1\154\1\141\1\142\2\141\1\142\1\154\1\162\1\156\1\146\1\145\1\143\1\150\1\56\1\145\1\75\1\76\1\55\3\75\5\uffff\1\52\4\uffff\1\101\4\uffff\2\0\5\uffff\1\156\1\141\1\uffff\1\156\1\154\1\163\1\60\1\164\1\146\1\170\1\156\1\160\1\152\1\164\1\160\1\162\1\163\1\165\1\157\1\153\1\160\2\60\1\146\2\157\1\145\1\165\2\uffff\1\164\44\uffff\1\164\1\156\1\163\1\143\1\163\1\164\1\uffff\2\141\2\151\1\157\2\145\1\164\1\157\1\145\1\155\1\142\1\156\1\157\1\60\2\uffff\1\145\1\164\1\160\1\156\1\145\1\60\1\141\1\164\1\163\1\164\1\145\1\162\1\164\1\165\2\155\1\163\1\143\1\156\1\171\1\162\2\60\1\154\1\157\1\162\1\uffff\1\162\1\60\1\145\2\60\1\uffff\1\151\2\60\1\151\1\60\1\141\1\171\1\154\3\151\1\164\1\144\1\156\2\60\2\uffff\1\145\1\167\1\164\1\163\1\uffff\1\60\2\uffff\1\156\2\uffff\1\157\1\uffff\1\143\1\160\1\164\2\172\1\164\1\60\1\163\1\60\2\uffff\1\155\1\156\2\60\1\uffff\1\155\1\156\1\164\1\145\1\60\3\145\1\uffff\1\60\1\uffff\2\60\2\uffff\1\145\1\60\1\141\2\60\1\uffff\3\60\3\uffff\1\156\1\uffff\1\154\5\uffff\1\164\2\60\2\uffff"; static final String DFA12_maxS = - "\1\uffff\1\165\1\163\1\165\1\145\1\165\1\160\1\170\1\156\1\143\1\162\1\56\1\156\1\145\1\75\1\76\1\55\1\75\1\76\1\75\5\uffff\1\57\3\uffff\1\172\3\uffff\2\uffff\5\uffff\1\156\1\162\1\154\1\uffff\1\163\1\172\1\165\1\162\1\141\1\164\1\146\1\171\1\156\1\163\1\160\1\164\1\160\1\162\1\163\1\153\1\157\1\145\1\165\1\56\1\uffff\2\172\1\164\40\uffff\1\143\1\141\1\163\1\164\1\uffff\1\164\1\156\1\162\1\163\2\141\1\151\1\172\1\151\1\164\1\157\1\145\1\163\1\164\1\157\1\145\1\156\1\160\1\156\1\145\2\uffff\1\172\2\uffff\1\172\1\164\1\154\1\145\1\162\1\141\1\164\1\145\1\163\1\164\1\165\1\155\1\uffff\1\155\1\172\1\163\1\162\1\164\1\171\1\162\1\172\1\157\1\145\2\172\2\uffff\1\151\1\154\1\172\1\141\1\151\1\172\1\156\1\172\1\171\1\154\2\151\1\uffff\1\151\1\144\1\156\1\163\2\172\1\uffff\1\167\1\172\2\uffff\1\157\1\172\1\uffff\1\143\1\156\1\uffff\1\164\1\uffff\1\160\1\164\2\172\1\164\1\163\2\172\2\uffff\1\156\1\uffff\1\156\1\uffff\1\164\1\163\1\172\1\145\1\172\3\145\1\172\2\uffff\1\172\1\141\2\172\1\uffff\1\172\1\uffff\3\172\2\uffff\1\154\6\uffff\1\172\1\uffff"; + "\1\uffff\1\157\1\165\1\163\1\145\1\151\1\160\1\170\1\162\2\156\1\157\1\143\1\162\1\56\1\145\1\75\1\76\2\75\1\76\1\75\5\uffff\1\57\4\uffff\1\172\4\uffff\2\uffff\5\uffff\1\165\1\141\1\uffff\1\156\1\154\1\163\1\172\1\164\1\146\1\170\1\156\1\160\1\152\1\164\1\160\1\162\1\163\1\165\1\157\1\153\1\160\2\172\1\146\2\157\1\145\1\165\2\uffff\1\164\44\uffff\1\164\1\156\1\163\1\143\1\163\1\164\1\uffff\2\141\2\151\1\157\2\145\1\164\1\157\1\145\1\155\1\142\1\156\1\157\1\172\2\uffff\1\145\1\164\1\160\1\156\1\145\1\172\1\141\1\164\1\163\1\164\1\145\1\162\1\164\1\165\2\155\1\163\1\143\1\162\1\171\1\162\2\172\1\154\1\157\1\162\1\uffff\1\162\1\172\1\145\2\172\1\uffff\1\151\2\172\1\151\1\172\1\141\1\171\1\154\3\151\1\164\1\144\1\156\2\172\2\uffff\1\145\1\167\1\164\1\163\1\uffff\1\172\2\uffff\1\156\2\uffff\1\157\1\uffff\1\143\1\160\1\164\2\172\1\164\1\172\1\163\1\172\2\uffff\1\155\1\156\2\172\1\uffff\1\163\1\156\1\164\1\145\1\172\3\145\1\uffff\1\172\1\uffff\2\172\2\uffff\1\145\1\172\1\141\2\172\1\uffff\3\172\3\uffff\1\156\1\uffff\1\154\5\uffff\1\164\2\172\2\uffff"; static final String DFA12_acceptS = - "\24\uffff\1\51\1\52\1\53\1\54\1\55\1\uffff\1\62\1\66\1\67\1\uffff\1\71\1\72\1\73\2\uffff\1\76\1\77\1\100\1\102\1\103\3\uffff\1\77\24\uffff\1\57\3\uffff\1\35\1\50\1\36\1\56\1\40\1\61\1\41\1\63\1\42\1\43\1\64\1\44\1\65\1\51\1\52\1\53\1\54\1\55\1\76\1\101\1\60\1\62\1\66\1\67\1\70\1\71\1\72\1\73\1\74\1\75\1\100\1\102\4\uffff\1\45\24\uffff\1\31\1\37\1\uffff\1\47\1\46\14\uffff\1\34\14\uffff\1\32\1\33\14\uffff\1\26\6\uffff\1\25\2\uffff\1\27\1\30\2\uffff\1\23\2\uffff\1\20\1\uffff\1\17\10\uffff\1\21\1\22\1\uffff\1\24\1\uffff\1\16\11\uffff\1\15\1\14\4\uffff\1\10\1\uffff\1\11\3\uffff\1\12\1\13\1\uffff\1\2\1\3\1\4\1\5\1\6\1\7\1\uffff\1\1"; + "\26\uffff\1\54\1\55\1\56\1\57\1\60\1\uffff\1\65\1\71\1\72\1\73\1\uffff\1\75\1\76\1\77\1\100\2\uffff\1\103\1\104\1\105\1\107\1\110\2\uffff\1\104\31\uffff\1\34\1\62\1\uffff\1\37\1\53\1\40\1\61\1\41\1\42\1\43\1\64\1\44\1\66\1\45\1\46\1\67\1\47\1\70\1\54\1\55\1\56\1\57\1\60\1\103\1\106\1\63\1\65\1\71\1\72\1\73\1\74\1\75\1\76\1\77\1\100\1\101\1\102\1\105\1\107\6\uffff\1\50\17\uffff\1\52\1\51\32\uffff\1\35\5\uffff\1\36\20\uffff\1\27\1\30\4\uffff\1\31\1\uffff\1\32\1\33\1\uffff\1\22\1\21\1\uffff\1\25\11\uffff\1\23\1\24\4\uffff\1\26\10\uffff\1\17\1\uffff\1\15\2\uffff\1\16\1\20\5\uffff\1\11\3\uffff\1\12\1\13\1\14\1\uffff\1\4\1\uffff\1\3\1\5\1\6\1\7\1\10\3\uffff\1\2\1\1"; static final String DFA12_specialS = - "\1\2\40\uffff\1\0\1\1\u00c8\uffff}>"; + "\1\1\44\uffff\1\0\1\2\u00d8\uffff}>"; static final String[] DFA12_transitionS = { - "\11\47\2\46\2\47\1\46\22\47\1\46\1\16\1\41\2\47\1\43\1\47\1\42\1\24\1\25\1\26\1\27\1\30\1\17\1\13\1\31\12\45\1\20\1\32\1\21\1\22\1\23\2\47\32\44\1\33\1\47\1\34\1\35\1\44\1\47\1\2\1\44\1\3\1\4\1\7\1\1\2\44\1\14\2\44\1\15\1\5\1\44\1\6\3\44\1\11\1\12\1\10\5\44\1\36\1\37\1\40\uff82\47", - "\1\52\15\uffff\1\51\5\uffff\1\50", - "\1\54\20\uffff\1\55", - "\1\60\2\uffff\1\56\5\uffff\1\57", - "\1\61\3\uffff\1\62", - "\1\63\7\uffff\1\64\13\uffff\1\65", - "\1\66", - "\1\72\1\70\4\uffff\1\71\5\uffff\1\67", - "\1\73", - "\1\74", - "\1\75\11\uffff\1\76", + "\11\53\2\52\2\53\1\52\22\53\1\52\1\20\1\45\2\53\1\47\1\53\1\46\1\26\1\27\1\30\1\31\1\32\1\21\1\16\1\33\12\51\1\22\1\34\1\23\1\24\1\25\1\35\1\53\32\50\1\36\1\53\1\37\1\40\1\50\1\53\1\3\1\50\1\1\1\4\1\7\1\2\2\50\1\12\2\50\1\17\1\5\1\50\1\6\1\10\1\50\1\13\1\14\1\15\1\11\5\50\1\41\1\42\1\43\1\44\uff81\53", + "\1\55\2\uffff\1\54", + "\1\60\23\uffff\1\57", + "\1\61\20\uffff\1\62", + "\1\63\3\uffff\1\64", + "\1\65\7\uffff\1\66", + "\1\70\15\uffff\1\67", + "\1\74\1\72\1\75\3\uffff\1\73\5\uffff\1\71", + "\1\76", "\1\77", - "\1\102\7\uffff\1\101", - "\1\103", - "\1\104", - "\1\106", + "\1\102\6\uffff\1\100\1\101", + "\1\103\11\uffff\1\104", + "\1\105", + "\1\106\11\uffff\1\107", "\1\110", "\1\112", - "\1\114\1\115", - "\1\117", + "\1\113", + "\1\115", + "\1\117\14\uffff\1\120\2\uffff\1\121", + "\1\123", + "\1\125\1\126", + "\1\130", + "", "", "", "", "", + "\1\140\4\uffff\1\137", "", - "\1\127\4\uffff\1\126", "", "", "", - "\32\53\4\uffff\1\53\1\uffff\32\53", + "\32\56\4\uffff\1\56\1\uffff\32\56", "", "", "", - "\0\140", - "\0\141", "", + "\0\153", + "\0\154", "", "", "", "", - "\1\144", - "\1\145", - "\1\146", "", - "\1\147", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\1\151\6\uffff\1\152", - "\1\153", - "\1\154", - "\1\155", - "\1\156", - "\1\157\1\160", + "\1\157\6\uffff\1\160", "\1\161", + "", "\1\162", "\1\163", - "\1\165\12\uffff\1\164", + "\1\164", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "\1\166", "\1\167", "\1\170", @@ -2434,10 +2572,25 @@ public class InternalSolverLanguageLexer extends Lexer { "\1\173", "\1\174", "\1\175", - "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\5\53\1\177\24\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\176", + "\1\177", + "\1\u0080", + "\1\u0081", "\1\u0082", + "\1\u0083", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\5\56\1\u0084\24\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u0087", + "\1\u0088", + "\1\u0089", + "\1\u008a", + "\1\u008b", + "", + "", + "\1\u008c", + "", + "", + "", "", "", "", @@ -2470,23 +2623,14 @@ public class InternalSolverLanguageLexer extends Lexer { "", "", "", - "\1\u0083", - "\1\u0084", - "\1\u0085", - "\1\u0086", "", - "\1\u0087", - "\1\u0088", - "\1\u0089", - "\1\u008a", - "\1\u008b", - "\1\u008c", "\1\u008d", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u008e", "\1\u008f", "\1\u0090", "\1\u0091", "\1\u0092", + "", "\1\u0093", "\1\u0094", "\1\u0095", @@ -2495,115 +2639,134 @@ public class InternalSolverLanguageLexer extends Lexer { "\1\u0098", "\1\u0099", "\1\u009a", - "", - "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", - "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u009b", + "\1\u009c", "\1\u009d", "\1\u009e", "\1\u009f", "\1\u00a0", - "\1\u00a1", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", "\1\u00a2", "\1\u00a3", "\1\u00a4", "\1\u00a5", "\1\u00a6", - "\1\u00a7", - "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "\1\u00a8", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00a9", "\1\u00aa", - "\1\u00ab\3\uffff\1\u00ac", + "\1\u00ab", + "\1\u00ac", "\1\u00ad", "\1\u00ae", "\1\u00af", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00b0", "\1\u00b1", "\1\u00b2", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", - "", - "\1\u00b5", + "\1\u00b3", + "\1\u00b4\3\uffff\1\u00b5", "\1\u00b6", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\1\u00b8", - "\1\u00b9", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00b7", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00ba", "\1\u00bb", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00bc", + "", "\1\u00bd", - "\1\u00be", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "\1\u00bf", - "\1\u00c0", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", - "\1\u00c1", "\1\u00c2", - "\1\u00c3", - "\1\u00c4", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00c5", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "\1\u00c7", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", - "", + "\1\u00c8", "\1\u00c9", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", + "\1\u00ca", "\1\u00cb", "\1\u00cc", - "", "\1\u00cd", - "", "\1\u00ce", "\1\u00cf", - "\1\u00d0", - "\1\u00d1", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", "\1\u00d2", "\1\u00d3", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00d4", + "\1\u00d5", "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", - "\1\u00d6", "", "\1\u00d7", "", + "", "\1\u00d8", + "", "\1\u00d9", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00da", "\1\u00db", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00dc", "\1\u00dd", "\1\u00de", - "\1\u00df", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00e0", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", "\1\u00e2", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00e3", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00e6\5\uffff\1\u00e7", + "\1\u00e8", + "\1\u00e9", + "\1\u00ea", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00ec", + "\1\u00ed", + "\1\u00ee", "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", + "\1\u00f2", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00f4", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", - "\1\u00e9", "", "", + "\1\u00fa", "", + "\1\u00fb", "", "", "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "", + "", + "\1\u00fc", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", "" }; @@ -2637,41 +2800,31 @@ public class InternalSolverLanguageLexer extends Lexer { this.transition = DFA12_transition; } public String getDescription() { - return "1:1: Tokens : ( Functional | Abstract | Contains | Datatype | Maximize | Minimize | Opposite | Current | Default | Extends | Unknown | Exists | Extern | Forall | Class | Count | Empty | Error | False | Scope | Else | Must | Then | True | FullStopFullStopFullStop | Inf | Let | May | ExclamationMarkEqualsSign | HyphenMinusGreaterThanSign | FullStopFullStop | ColonHyphenMinus | LessThanSignEqualsSign | EqualsSignEqualsSign | EqualsSignGreaterThanSign | GreaterThanSignEqualsSign | As | If | In | ExclamationMark | LeftParenthesis | RightParenthesis | Asterisk | PlusSign | Comma | HyphenMinus | FullStop | Solidus | Colon | Semicolon | LessThanSign | EqualsSign | GreaterThanSign | LeftSquareBracket | RightSquareBracket | CircumflexAccent | LeftCurlyBracket | VerticalLine | RightCurlyBracket | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER );"; + return "1:1: Tokens : ( Containment | Functional | Abstract | Contains | Datatype | Maximize | Minimize | Opposite | Default | Extends | Problem | Unknown | Extern | Import | Object | Refers | Class | Count | Empty | Error | False | Scope | Else | Enum | Root | Then | True | FullStopFullStopFullStop | Inf | Let | ExclamationMarkEqualsSign | HyphenMinusGreaterThanSign | ColonHyphenMinus | ColonColon | ColonEqualsSign | LessThanSignEqualsSign | EqualsSignEqualsSign | EqualsSignGreaterThanSign | GreaterThanSignEqualsSign | As | If | In | ExclamationMark | LeftParenthesis | RightParenthesis | Asterisk | PlusSign | Comma | HyphenMinus | FullStop | Solidus | Colon | Semicolon | LessThanSign | EqualsSign | GreaterThanSign | QuestionMark | LeftSquareBracket | RightSquareBracket | CircumflexAccent | LeftCurlyBracket | VerticalLine | RightCurlyBracket | Tilde | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER );"; } public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { IntStream input = _input; int _s = s; switch ( s ) { case 0 : - int LA12_33 = input.LA(1); + int LA12_37 = input.LA(1); s = -1; - if ( ((LA12_33>='\u0000' && LA12_33<='\uFFFF')) ) {s = 96;} + if ( ((LA12_37>='\u0000' && LA12_37<='\uFFFF')) ) {s = 107;} - else s = 39; + else s = 43; if ( s>=0 ) return s; break; case 1 : - int LA12_34 = input.LA(1); - - s = -1; - if ( ((LA12_34>='\u0000' && LA12_34<='\uFFFF')) ) {s = 97;} - - else s = 39; - - if ( s>=0 ) return s; - break; - case 2 : int LA12_0 = input.LA(1); s = -1; - if ( (LA12_0=='f') ) {s = 1;} + if ( (LA12_0=='c') ) {s = 1;} - else if ( (LA12_0=='a') ) {s = 2;} + else if ( (LA12_0=='f') ) {s = 2;} - else if ( (LA12_0=='c') ) {s = 3;} + else if ( (LA12_0=='a') ) {s = 3;} else if ( (LA12_0=='d') ) {s = 4;} @@ -2681,69 +2834,87 @@ public class InternalSolverLanguageLexer extends Lexer { else if ( (LA12_0=='e') ) {s = 7;} - else if ( (LA12_0=='u') ) {s = 8;} + else if ( (LA12_0=='p') ) {s = 8;} + + else if ( (LA12_0=='u') ) {s = 9;} - else if ( (LA12_0=='s') ) {s = 9;} + else if ( (LA12_0=='i') ) {s = 10;} - else if ( (LA12_0=='t') ) {s = 10;} + else if ( (LA12_0=='r') ) {s = 11;} - else if ( (LA12_0=='.') ) {s = 11;} + else if ( (LA12_0=='s') ) {s = 12;} - else if ( (LA12_0=='i') ) {s = 12;} + else if ( (LA12_0=='t') ) {s = 13;} - else if ( (LA12_0=='l') ) {s = 13;} + else if ( (LA12_0=='.') ) {s = 14;} - else if ( (LA12_0=='!') ) {s = 14;} + else if ( (LA12_0=='l') ) {s = 15;} - else if ( (LA12_0=='-') ) {s = 15;} + else if ( (LA12_0=='!') ) {s = 16;} - else if ( (LA12_0==':') ) {s = 16;} + else if ( (LA12_0=='-') ) {s = 17;} - else if ( (LA12_0=='<') ) {s = 17;} + else if ( (LA12_0==':') ) {s = 18;} - else if ( (LA12_0=='=') ) {s = 18;} + else if ( (LA12_0=='<') ) {s = 19;} - else if ( (LA12_0=='>') ) {s = 19;} + else if ( (LA12_0=='=') ) {s = 20;} - else if ( (LA12_0=='(') ) {s = 20;} + else if ( (LA12_0=='>') ) {s = 21;} - else if ( (LA12_0==')') ) {s = 21;} + else if ( (LA12_0=='(') ) {s = 22;} - else if ( (LA12_0=='*') ) {s = 22;} + else if ( (LA12_0==')') ) {s = 23;} - else if ( (LA12_0=='+') ) {s = 23;} + else if ( (LA12_0=='*') ) {s = 24;} - else if ( (LA12_0==',') ) {s = 24;} + else if ( (LA12_0=='+') ) {s = 25;} - else if ( (LA12_0=='/') ) {s = 25;} + else if ( (LA12_0==',') ) {s = 26;} - else if ( (LA12_0==';') ) {s = 26;} + else if ( (LA12_0=='/') ) {s = 27;} - else if ( (LA12_0=='[') ) {s = 27;} + else if ( (LA12_0==';') ) {s = 28;} - else if ( (LA12_0==']') ) {s = 28;} + else if ( (LA12_0=='?') ) {s = 29;} - else if ( (LA12_0=='^') ) {s = 29;} + else if ( (LA12_0=='[') ) {s = 30;} - else if ( (LA12_0=='{') ) {s = 30;} + else if ( (LA12_0==']') ) {s = 31;} - else if ( (LA12_0=='|') ) {s = 31;} + else if ( (LA12_0=='^') ) {s = 32;} - else if ( (LA12_0=='}') ) {s = 32;} + else if ( (LA12_0=='{') ) {s = 33;} - else if ( (LA12_0=='\"') ) {s = 33;} + else if ( (LA12_0=='|') ) {s = 34;} - else if ( (LA12_0=='\'') ) {s = 34;} + else if ( (LA12_0=='}') ) {s = 35;} - else if ( (LA12_0=='%') ) {s = 35;} + else if ( (LA12_0=='~') ) {s = 36;} - else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||(LA12_0>='g' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='k')||LA12_0=='n'||(LA12_0>='p' && LA12_0<='r')||(LA12_0>='v' && LA12_0<='z')) ) {s = 36;} + else if ( (LA12_0=='\"') ) {s = 37;} - else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 37;} + else if ( (LA12_0=='\'') ) {s = 38;} - else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 38;} + else if ( (LA12_0=='%') ) {s = 39;} + + else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||(LA12_0>='g' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='k')||LA12_0=='n'||LA12_0=='q'||(LA12_0>='v' && LA12_0<='z')) ) {s = 40;} + + else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 41;} + + else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 42;} + + else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||(LA12_0>='#' && LA12_0<='$')||LA12_0=='&'||LA12_0=='@'||LA12_0=='\\'||LA12_0=='`'||(LA12_0>='\u007F' && LA12_0<='\uFFFF')) ) {s = 43;} + + if ( s>=0 ) return s; + break; + case 2 : + int LA12_38 = input.LA(1); + + s = -1; + if ( ((LA12_38>='\u0000' && LA12_38<='\uFFFF')) ) {s = 108;} - else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||(LA12_0>='#' && LA12_0<='$')||LA12_0=='&'||(LA12_0>='?' && LA12_0<='@')||LA12_0=='\\'||LA12_0=='`'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 39;} + else s = 43; if ( s>=0 ) return s; break; diff --git a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.tokens b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.tokens index 178103e2..f6269b97 100644 --- a/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.tokens +++ b/Application/org.eclipse.viatra.solver.language.ide/src-gen/org/eclipse/viatra/solver/language/ide/contentassist/antlr/lexer/InternalSolverLanguageLexer.tokens @@ -1,70 +1,75 @@ -Abstract=5 -As=40 -Asterisk=46 -CircumflexAccent=59 -Class=18 -Colon=52 -ColonHyphenMinus=35 -Comma=48 -Contains=6 -Count=19 -Current=11 -Datatype=7 +Abstract=6 +As=43 +Asterisk=49 +CircumflexAccent=63 +Class=20 +Colon=55 +ColonColon=37 +ColonEqualsSign=38 +ColonHyphenMinus=36 +Comma=51 +Containment=4 +Contains=7 +Count=21 +Datatype=8 Default=12 -Else=24 -Empty=20 -EqualsSign=55 -EqualsSignEqualsSign=37 -EqualsSignGreaterThanSign=38 -Error=21 -ExclamationMark=43 -ExclamationMarkEqualsSign=32 -Exists=15 +Else=26 +Empty=22 +Enum=27 +EqualsSign=58 +EqualsSignEqualsSign=40 +EqualsSignGreaterThanSign=41 +Error=23 +ExclamationMark=46 +ExclamationMarkEqualsSign=34 Extends=13 Extern=16 -False=22 -Forall=17 -FullStop=50 -FullStopFullStop=34 -FullStopFullStopFullStop=28 -Functional=4 -GreaterThanSign=56 -GreaterThanSignEqualsSign=39 -HyphenMinus=49 -HyphenMinusGreaterThanSign=33 -If=41 -In=42 -Inf=29 -LeftCurlyBracket=60 -LeftParenthesis=44 -LeftSquareBracket=57 -LessThanSign=54 -LessThanSignEqualsSign=36 -Let=30 -Maximize=8 -May=31 -Minimize=9 -Must=25 -Opposite=10 -PlusSign=47 -RULE_ANY_OTHER=73 -RULE_FULL_STOP=68 -RULE_ID=69 -RULE_INT=70 -RULE_ML_COMMENT=71 -RULE_QUOTED_ID=64 -RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67 -RULE_SL_COMMENT=65 -RULE_STRING=63 -RULE_TRANSITIVE_CLOSURE=66 -RULE_WS=72 -RightCurlyBracket=62 -RightParenthesis=45 -RightSquareBracket=58 -Scope=23 -Semicolon=53 -Solidus=51 -Then=26 -True=27 -Unknown=14 -VerticalLine=61 +False=24 +FullStop=53 +FullStopFullStopFullStop=31 +Functional=5 +GreaterThanSign=59 +GreaterThanSignEqualsSign=42 +HyphenMinus=52 +HyphenMinusGreaterThanSign=35 +If=44 +Import=17 +In=45 +Inf=32 +LeftCurlyBracket=64 +LeftParenthesis=47 +LeftSquareBracket=61 +LessThanSign=57 +LessThanSignEqualsSign=39 +Let=33 +Maximize=9 +Minimize=10 +Object=18 +Opposite=11 +PlusSign=50 +Problem=14 +QuestionMark=60 +RULE_ANY_OTHER=78 +RULE_FULL_STOP=73 +RULE_ID=74 +RULE_INT=75 +RULE_ML_COMMENT=76 +RULE_QUOTED_ID=69 +RULE_REFLEXIVE_TRANSITIVE_CLOSURE=72 +RULE_SL_COMMENT=70 +RULE_STRING=68 +RULE_TRANSITIVE_CLOSURE=71 +RULE_WS=77 +Refers=19 +RightCurlyBracket=66 +RightParenthesis=48 +RightSquareBracket=62 +Root=28 +Scope=25 +Semicolon=56 +Solidus=54 +Then=29 +Tilde=67 +True=30 +Unknown=15 +VerticalLine=65 diff --git a/Application/org.eclipse.viatra.solver.language.model/.classpath b/Application/org.eclipse.viatra.solver.language.model/.classpath new file mode 100644 index 00000000..03565ec5 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/.classpath @@ -0,0 +1,7 @@ + + + + + + + diff --git a/Application/org.eclipse.viatra.solver.language.model/.gitignore b/Application/org.eclipse.viatra.solver.language.model/.gitignore new file mode 100644 index 00000000..ae3c1726 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/.gitignore @@ -0,0 +1 @@ +/bin/ diff --git a/Application/org.eclipse.viatra.solver.language.model/.project b/Application/org.eclipse.viatra.solver.language.model/.project new file mode 100644 index 00000000..b24c7b88 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/.project @@ -0,0 +1,35 @@ + + + org.eclipse.viatra.solver.language.model + + + + + + org.eclipse.xtext.ui.shared.xtextBuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.sirius.nature.modelingproject + org.eclipse.jdt.core.javanature + org.eclipse.pde.PluginNature + org.eclipse.xtext.ui.shared.xtextNature + + diff --git a/Application/org.eclipse.viatra.solver.language.model/.settings/org.eclipse.jdt.core.prefs b/Application/org.eclipse.viatra.solver.language.model/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000..9f6ece88 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,8 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.release=disabled +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/Application/org.eclipse.viatra.solver.language.model/META-INF/MANIFEST.MF b/Application/org.eclipse.viatra.solver.language.model/META-INF/MANIFEST.MF new file mode 100644 index 00000000..030e02aa --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/META-INF/MANIFEST.MF @@ -0,0 +1,16 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: %pluginName +Bundle-SymbolicName: org.eclipse.viatra.solver.language.model;singleton:=true +Automatic-Module-Name: org.eclipse.viatra.solver.language.model +Bundle-Version: 0.1.0.qualifier +Bundle-ClassPath: . +Bundle-Vendor: %providerName +Bundle-Localization: plugin +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Export-Package: org.eclipse.viatra.solver.language.solverLanguage, + org.eclipse.viatra.solver.language.solverLanguage.impl, + org.eclipse.viatra.solver.language.solverLanguage.util +Require-Bundle: org.eclipse.emf.ecore;visibility:=reexport, + org.eclipse.core.runtime +Bundle-ActivationPolicy: lazy diff --git a/Application/org.eclipse.viatra.solver.language.model/build.properties b/Application/org.eclipse.viatra.solver.language.model/build.properties new file mode 100644 index 00000000..697ca964 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/build.properties @@ -0,0 +1,10 @@ +# + +bin.includes = .,\ + model/,\ + META-INF/,\ + plugin.xml,\ + plugin.properties +jars.compile.order = . +source.. = src-gen/ +output.. = bin/ diff --git a/Application/org.eclipse.viatra.solver.language.model/model/model.aird b/Application/org.eclipse.viatra.solver.language.model/model/model.aird new file mode 100644 index 00000000..d934951f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/model/model.aird @@ -0,0 +1,6757 @@ + + + + model.ecore + model.genmodel + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + strokeColor + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + + strokeColor + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + strokeColor + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + strokeColor + + labelSize + + + labelSize + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + + diff --git a/Application/org.eclipse.viatra.solver.language.model/model/model.ecore b/Application/org.eclipse.viatra.solver.language.model/model/model.ecore new file mode 100644 index 00000000..f5e6a91e --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/model/model.ecore @@ -0,0 +1,327 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Application/org.eclipse.viatra.solver.language.model/model/model.genmodel b/Application/org.eclipse.viatra.solver.language.model/model/model.genmodel new file mode 100644 index 00000000..0e916847 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/model/model.genmodel @@ -0,0 +1,287 @@ + + + model.ecore + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Application/org.eclipse.viatra.solver.language.model/plugin.properties b/Application/org.eclipse.viatra.solver.language.model/plugin.properties new file mode 100644 index 00000000..9050bf16 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/plugin.properties @@ -0,0 +1,4 @@ +# + +pluginName = org.eclipse.viatra.solver.language.model +providerName = www.example.org diff --git a/Application/org.eclipse.viatra.solver.language.model/plugin.xml b/Application/org.eclipse.viatra.solver.language.model/plugin.xml new file mode 100644 index 00000000..12825d16 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/plugin.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AbstractAssertion.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AbstractAssertion.java new file mode 100644 index 00000000..7923a212 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AbstractAssertion.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Abstract Assertion'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getExpression Expression}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getRange Range}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAbstractAssertion() + * @model abstract="true" + * @generated + */ +public interface AbstractAssertion extends Statement { + /** + * Returns the value of the 'Expression' containment reference. + * + * + * @return the value of the 'Expression' containment reference. + * @see #setExpression(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAbstractAssertion_Expression() + * @model containment="true" + * @generated + */ + Expression getExpression(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getExpression Expression}' containment reference. + * + * + * @param value the new value of the 'Expression' containment reference. + * @see #getExpression() + * @generated + */ + void setExpression(Expression value); + + /** + * Returns the value of the 'Range' containment reference. + * + * + * @return the value of the 'Range' containment reference. + * @see #setRange(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAbstractAssertion_Range() + * @model containment="true" + * @generated + */ + Expression getRange(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getRange Range}' containment reference. + * + * + * @param value the new value of the 'Range' containment reference. + * @see #getRange() + * @generated + */ + void setRange(Expression value); + +} // AbstractAssertion diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregateExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregateExpression.java new file mode 100644 index 00000000..8e4c468e --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregateExpression.java @@ -0,0 +1,59 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Aggregate Expression'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getForallVariables Forall Variables}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getCondition Condition}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregateExpression() + * @model abstract="true" + * @generated + */ +public interface AggregateExpression extends Expression { + /** + * Returns the value of the 'Forall Variables' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Variable}. + * + * + * @return the value of the 'Forall Variables' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregateExpression_ForallVariables() + * @model containment="true" transient="true" + * @generated + */ + EList getForallVariables(); + + /** + * Returns the value of the 'Condition' containment reference. + * + * + * @return the value of the 'Condition' containment reference. + * @see #setCondition(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregateExpression_Condition() + * @model containment="true" + * @generated + */ + Expression getCondition(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getCondition Condition}' containment reference. + * + * + * @param value the new value of the 'Condition' containment reference. + * @see #getCondition() + * @generated + */ + void setCondition(Expression value); + +} // AggregateExpression diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java new file mode 100644 index 00000000..f1d6b6c1 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Aggregation'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getValue Value}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp Op}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation() + * @model + * @generated + */ +public interface Aggregation extends AggregateExpression { + /** + * Returns the value of the 'Value' containment reference. + * + * + * @return the value of the 'Value' containment reference. + * @see #setValue(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation_Value() + * @model containment="true" + * @generated + */ + Expression getValue(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getValue Value}' containment reference. + * + * + * @param value the new value of the 'Value' containment reference. + * @see #getValue() + * @generated + */ + void setValue(Expression value); + + /** + * Returns the value of the 'Op' reference. + * + * + * @return the value of the 'Op' reference. + * @see #setOp(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation_Op() + * @model + * @generated + */ + Symbol getOp(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp Op}' reference. + * + * + * @param value the new value of the 'Op' reference. + * @see #getOp() + * @generated + */ + void setOp(Symbol value); + +} // Aggregation diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregationOperator.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregationOperator.java new file mode 100644 index 00000000..2ec7794a --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AggregationOperator.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Aggregation Operator'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getArgumentType Argument Type}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getResultType Result Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregationOperator() + * @model + * @generated + */ +public interface AggregationOperator extends Symbol { + /** + * Returns the value of the 'Argument Type' reference. + * + * + * @return the value of the 'Argument Type' reference. + * @see #setArgumentType(Datatype) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregationOperator_ArgumentType() + * @model + * @generated + */ + Datatype getArgumentType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getArgumentType Argument Type}' reference. + * + * + * @param value the new value of the 'Argument Type' reference. + * @see #getArgumentType() + * @generated + */ + void setArgumentType(Datatype value); + + /** + * Returns the value of the 'Result Type' reference. + * + * + * @return the value of the 'Result Type' reference. + * @see #setResultType(Datatype) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregationOperator_ResultType() + * @model + * @generated + */ + Datatype getResultType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getResultType Result Type}' reference. + * + * + * @param value the new value of the 'Result Type' reference. + * @see #getResultType() + * @generated + */ + void setResultType(Datatype value); + +} // AggregationOperator diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java new file mode 100644 index 00000000..dd9fb5ee --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java @@ -0,0 +1,18 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Argument'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgument() + * @model abstract="true" + * @generated + */ +public interface Argument extends EObject { +} // Argument diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java new file mode 100644 index 00000000..3f6c05bd --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java @@ -0,0 +1,38 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Argument List'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments Arguments}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgumentList() + * @model + * @generated + */ +public interface ArgumentList extends EObject { + /** + * Returns the value of the 'Arguments' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Argument}. + * + * + * @return the value of the 'Arguments' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgumentList_Arguments() + * @model containment="true" + * @generated + */ + EList getArguments(); + +} // ArgumentList diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Assertion.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Assertion.java new file mode 100644 index 00000000..1f9b0889 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Assertion.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Assertion'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAssertion() + * @model + * @generated + */ +public interface Assertion extends AbstractAssertion { +} // Assertion diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Attribute.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Attribute.java new file mode 100644 index 00000000..bb577b73 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Attribute.java @@ -0,0 +1,70 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Attribute'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getTarget Target}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getKind Kind}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAttribute() + * @model abstract="true" + * @generated + */ +public interface Attribute extends Statement { + /** + * Returns the value of the 'Target' reference. + * + * + * @return the value of the 'Target' reference. + * @see #setTarget(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAttribute_Target() + * @model + * @generated + */ + Symbol getTarget(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getTarget Target}' reference. + * + * + * @param value the new value of the 'Target' reference. + * @see #getTarget() + * @generated + */ + void setTarget(Symbol value); + + /** + * Returns the value of the 'Kind' attribute. + * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.AttributeKind}. + * + * + * @return the value of the 'Kind' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind + * @see #setKind(AttributeKind) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAttribute_Kind() + * @model + * @generated + */ + AttributeKind getKind(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getKind Kind}' attribute. + * + * + * @param value the new value of the 'Kind' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind + * @see #getKind() + * @generated + */ + void setKind(AttributeKind value); + +} // Attribute diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AttributeKind.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AttributeKind.java new file mode 100644 index 00000000..50f7afbf --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/AttributeKind.java @@ -0,0 +1,250 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Attribute Kind', + * and utility methods for working with them. + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAttributeKind() + * @model + * @generated + */ +public enum AttributeKind implements Enumerator { + /** + * The 'FUNCTIONAL' literal object. + * + * + * @see #FUNCTIONAL_VALUE + * @generated + * @ordered + */ + FUNCTIONAL(0, "FUNCTIONAL", "FUNCTIONAL"), + + /** + * The 'ERROR' literal object. + * + * + * @see #ERROR_VALUE + * @generated + * @ordered + */ + ERROR(1, "ERROR", "ERROR"), + + /** + * The 'ROOT' literal object. + * + * + * @see #ROOT_VALUE + * @generated + * @ordered + */ + ROOT(2, "ROOT", "ROOT"), + + /** + * The 'CONTAINMENT' literal object. + * + * + * @see #CONTAINMENT_VALUE + * @generated + * @ordered + */ + CONTAINMENT(3, "CONTAINMENT", "CONTAINMENT"); + + /** + * The 'FUNCTIONAL' literal value. + * + * + * @see #FUNCTIONAL + * @model + * @generated + * @ordered + */ + public static final int FUNCTIONAL_VALUE = 0; + + /** + * The 'ERROR' literal value. + * + * + * @see #ERROR + * @model + * @generated + * @ordered + */ + public static final int ERROR_VALUE = 1; + + /** + * The 'ROOT' literal value. + * + * + * @see #ROOT + * @model + * @generated + * @ordered + */ + public static final int ROOT_VALUE = 2; + + /** + * The 'CONTAINMENT' literal value. + * + * + * @see #CONTAINMENT + * @model + * @generated + * @ordered + */ + public static final int CONTAINMENT_VALUE = 3; + + /** + * An array of all the 'Attribute Kind' enumerators. + * + * + * @generated + */ + private static final AttributeKind[] VALUES_ARRAY = new AttributeKind[] { FUNCTIONAL, ERROR, ROOT, CONTAINMENT, }; + + /** + * A public read-only list of all the 'Attribute Kind' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Attribute Kind' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static AttributeKind get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + AttributeKind result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Attribute Kind' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static AttributeKind getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + AttributeKind result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Attribute Kind' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static AttributeKind get(int value) { + switch (value) { + case FUNCTIONAL_VALUE: + return FUNCTIONAL; + case ERROR_VALUE: + return ERROR; + case ROOT_VALUE: + return ROOT; + case CONTAINMENT_VALUE: + return CONTAINMENT; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private AttributeKind(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //AttributeKind diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BaseRelation.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BaseRelation.java new file mode 100644 index 00000000..9eb92f65 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BaseRelation.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Base Relation'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBaseRelation() + * @model + * @generated + */ +public interface BaseRelation extends Relation { +} // BaseRelation diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java new file mode 100644 index 00000000..9615767a --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java @@ -0,0 +1,93 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Binary Expression'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp Op}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft Left}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight Right}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression() + * @model + * @generated + */ +public interface BinaryExpression extends Expression { + /** + * Returns the value of the 'Op' attribute. + * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator}. + * + * + * @return the value of the 'Op' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator + * @see #setOp(BinaryOperator) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Op() + * @model + * @generated + */ + BinaryOperator getOp(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp Op}' attribute. + * + * + * @param value the new value of the 'Op' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator + * @see #getOp() + * @generated + */ + void setOp(BinaryOperator value); + + /** + * Returns the value of the 'Left' containment reference. + * + * + * @return the value of the 'Left' containment reference. + * @see #setLeft(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Left() + * @model containment="true" + * @generated + */ + Expression getLeft(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft Left}' containment reference. + * + * + * @param value the new value of the 'Left' containment reference. + * @see #getLeft() + * @generated + */ + void setLeft(Expression value); + + /** + * Returns the value of the 'Right' containment reference. + * + * + * @return the value of the 'Right' containment reference. + * @see #setRight(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Right() + * @model containment="true" + * @generated + */ + Expression getRight(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight Right}' containment reference. + * + * + * @param value the new value of the 'Right' containment reference. + * @see #getRight() + * @generated + */ + void setRight(Expression value); + +} // BinaryExpression diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java new file mode 100644 index 00000000..58d01fd7 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java @@ -0,0 +1,435 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Binary Operator', + * and utility methods for working with them. + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryOperator() + * @model + * @generated + */ +public enum BinaryOperator implements Enumerator { + /** + * The 'PLUS' literal object. + * + * + * @see #PLUS_VALUE + * @generated + * @ordered + */ + PLUS(0, "PLUS", "PLUS"), + + /** + * The 'MINUS' literal object. + * + * + * @see #MINUS_VALUE + * @generated + * @ordered + */ + MINUS(1, "MINUS", "MINUS"), + + /** + * The 'MULTIPLY' literal object. + * + * + * @see #MULTIPLY_VALUE + * @generated + * @ordered + */ + MULTIPLY(2, "MULTIPLY", "MULTIPLY"), + + /** + * The 'DIVIDE' literal object. + * + * + * @see #DIVIDE_VALUE + * @generated + * @ordered + */ + DIVIDE(3, "DIVIDE", "DIVIDE"), + + /** + * The 'POW' literal object. + * + * + * @see #POW_VALUE + * @generated + * @ordered + */ + POW(4, "POW", "POW"), + + /** + * The 'IN' literal object. + * + * + * @see #IN_VALUE + * @generated + * @ordered + */ + IN(5, "IN", "IN"), + + /** + * The 'EQUALS' literal object. + * + * + * @see #EQUALS_VALUE + * @generated + * @ordered + */ + EQUALS(6, "EQUALS", "EQUALS"), + + /** + * The 'NOT EQUALS' literal object. + * + * + * @see #NOT_EQUALS_VALUE + * @generated + * @ordered + */ + NOT_EQUALS(7, "NOT_EQUALS", "NOT_EQUALS"), + + /** + * The 'LESS' literal object. + * + * + * @see #LESS_VALUE + * @generated + * @ordered + */ + LESS(8, "LESS", "LESS"), + + /** + * The 'LESS EQUALS' literal object. + * + * + * @see #LESS_EQUALS_VALUE + * @generated + * @ordered + */ + LESS_EQUALS(9, "LESS_EQUALS", "LESS_EQUALS"), + + /** + * The 'GREATER' literal object. + * + * + * @see #GREATER_VALUE + * @generated + * @ordered + */ + GREATER(10, "GREATER", "GREATER"), + + /** + * The 'GREATER EQUALS' literal object. + * + * + * @see #GREATER_EQUALS_VALUE + * @generated + * @ordered + */ + GREATER_EQUALS(11, "GREATER_EQUALS", "GREATER_EQUALS"); + + /** + * The 'PLUS' literal value. + * + * + * @see #PLUS + * @model + * @generated + * @ordered + */ + public static final int PLUS_VALUE = 0; + + /** + * The 'MINUS' literal value. + * + * + * @see #MINUS + * @model + * @generated + * @ordered + */ + public static final int MINUS_VALUE = 1; + + /** + * The 'MULTIPLY' literal value. + * + * + * @see #MULTIPLY + * @model + * @generated + * @ordered + */ + public static final int MULTIPLY_VALUE = 2; + + /** + * The 'DIVIDE' literal value. + * + * + * @see #DIVIDE + * @model + * @generated + * @ordered + */ + public static final int DIVIDE_VALUE = 3; + + /** + * The 'POW' literal value. + * + * + * @see #POW + * @model + * @generated + * @ordered + */ + public static final int POW_VALUE = 4; + + /** + * The 'IN' literal value. + * + * + * @see #IN + * @model + * @generated + * @ordered + */ + public static final int IN_VALUE = 5; + + /** + * The 'EQUALS' literal value. + * + * + * @see #EQUALS + * @model + * @generated + * @ordered + */ + public static final int EQUALS_VALUE = 6; + + /** + * The 'NOT EQUALS' literal value. + * + * + * @see #NOT_EQUALS + * @model + * @generated + * @ordered + */ + public static final int NOT_EQUALS_VALUE = 7; + + /** + * The 'LESS' literal value. + * + * + * @see #LESS + * @model + * @generated + * @ordered + */ + public static final int LESS_VALUE = 8; + + /** + * The 'LESS EQUALS' literal value. + * + * + * @see #LESS_EQUALS + * @model + * @generated + * @ordered + */ + public static final int LESS_EQUALS_VALUE = 9; + + /** + * The 'GREATER' literal value. + * + * + * @see #GREATER + * @model + * @generated + * @ordered + */ + public static final int GREATER_VALUE = 10; + + /** + * The 'GREATER EQUALS' literal value. + * + * + * @see #GREATER_EQUALS + * @model + * @generated + * @ordered + */ + public static final int GREATER_EQUALS_VALUE = 11; + + /** + * An array of all the 'Binary Operator' enumerators. + * + * + * @generated + */ + private static final BinaryOperator[] VALUES_ARRAY = new BinaryOperator[] { PLUS, MINUS, MULTIPLY, DIVIDE, POW, IN, + EQUALS, NOT_EQUALS, LESS, LESS_EQUALS, GREATER, GREATER_EQUALS, }; + + /** + * A public read-only list of all the 'Binary Operator' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Binary Operator' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static BinaryOperator get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + BinaryOperator result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Binary Operator' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static BinaryOperator getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + BinaryOperator result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Binary Operator' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static BinaryOperator get(int value) { + switch (value) { + case PLUS_VALUE: + return PLUS; + case MINUS_VALUE: + return MINUS; + case MULTIPLY_VALUE: + return MULTIPLY; + case DIVIDE_VALUE: + return DIVIDE; + case POW_VALUE: + return POW; + case IN_VALUE: + return IN; + case EQUALS_VALUE: + return EQUALS; + case NOT_EQUALS_VALUE: + return NOT_EQUALS; + case LESS_VALUE: + return LESS; + case LESS_EQUALS_VALUE: + return LESS_EQUALS; + case GREATER_VALUE: + return GREATER; + case GREATER_EQUALS_VALUE: + return GREATER_EQUALS; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private BinaryOperator(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //BinaryOperator diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java new file mode 100644 index 00000000..6f9cb8cc --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Bounded Multiplicity'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound Lower Bound}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound Upper Bound}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity() + * @model + * @generated + */ +public interface BoundedMultiplicity extends Multiplicity { + /** + * Returns the value of the 'Lower Bound' attribute. + * + * + * @return the value of the 'Lower Bound' attribute. + * @see #setLowerBound(int) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity_LowerBound() + * @model + * @generated + */ + int getLowerBound(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound Lower Bound}' attribute. + * + * + * @param value the new value of the 'Lower Bound' attribute. + * @see #getLowerBound() + * @generated + */ + void setLowerBound(int value); + + /** + * Returns the value of the 'Upper Bound' attribute. + * + * + * @return the value of the 'Upper Bound' attribute. + * @see #setUpperBound(int) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity_UpperBound() + * @model + * @generated + */ + int getUpperBound(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound Upper Bound}' attribute. + * + * + * @param value the new value of the 'Upper Bound' attribute. + * @see #getUpperBound() + * @generated + */ + void setUpperBound(int value); + +} // BoundedMultiplicity diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScope.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScope.java new file mode 100644 index 00000000..e2ce4bb8 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScope.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Bounded Scope'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getLowerBound Lower Bound}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getUpperBound Upper Bound}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScope() + * @model + * @generated + */ +public interface BoundedScope extends ScopeDeclaration { + /** + * Returns the value of the 'Lower Bound' attribute. + * + * + * @return the value of the 'Lower Bound' attribute. + * @see #setLowerBound(int) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScope_LowerBound() + * @model + * @generated + */ + int getLowerBound(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getLowerBound Lower Bound}' attribute. + * + * + * @param value the new value of the 'Lower Bound' attribute. + * @see #getLowerBound() + * @generated + */ + void setLowerBound(int value); + + /** + * Returns the value of the 'Upper Bound' attribute. + * + * + * @return the value of the 'Upper Bound' attribute. + * @see #setUpperBound(int) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScope_UpperBound() + * @model + * @generated + */ + int getUpperBound(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getUpperBound Upper Bound}' attribute. + * + * + * @param value the new value of the 'Upper Bound' attribute. + * @see #getUpperBound() + * @generated + */ + void setUpperBound(int value); + +} // BoundedScope diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java new file mode 100644 index 00000000..2a6e5012 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Call'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor Functor}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList Argument List}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall() + * @model + * @generated + */ +public interface Call extends Expression { + /** + * Returns the value of the 'Functor' containment reference. + * + * + * @return the value of the 'Functor' containment reference. + * @see #setFunctor(Reference) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall_Functor() + * @model containment="true" + * @generated + */ + Reference getFunctor(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor Functor}' containment reference. + * + * + * @param value the new value of the 'Functor' containment reference. + * @see #getFunctor() + * @generated + */ + void setFunctor(Reference value); + + /** + * Returns the value of the 'Argument List' containment reference. + * + * + * @return the value of the 'Argument List' containment reference. + * @see #setArgumentList(ArgumentList) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall_ArgumentList() + * @model containment="true" + * @generated + */ + ArgumentList getArgumentList(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList Argument List}' containment reference. + * + * + * @param value the new value of the 'Argument List' containment reference. + * @see #getArgumentList() + * @generated + */ + void setArgumentList(ArgumentList value); + +} // Call diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java new file mode 100644 index 00000000..a8e01488 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Case'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition Condition}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody Body}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase() + * @model + * @generated + */ +public interface Case extends Expression { + /** + * Returns the value of the 'Condition' containment reference. + * + * + * @return the value of the 'Condition' containment reference. + * @see #setCondition(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase_Condition() + * @model containment="true" + * @generated + */ + Expression getCondition(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition Condition}' containment reference. + * + * + * @param value the new value of the 'Condition' containment reference. + * @see #getCondition() + * @generated + */ + void setCondition(Expression value); + + /** + * Returns the value of the 'Body' containment reference. + * + * + * @return the value of the 'Body' containment reference. + * @see #setBody(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase_Body() + * @model containment="true" + * @generated + */ + Expression getBody(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody Body}' containment reference. + * + * + * @param value the new value of the 'Body' containment reference. + * @see #getBody() + * @generated + */ + void setBody(Expression value); + +} // Case diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java new file mode 100644 index 00000000..ac64ab0f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Cast Expression'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody Body}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getTargetType Target Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression() + * @model + * @generated + */ +public interface CastExpression extends Expression { + /** + * Returns the value of the 'Body' containment reference. + * + * + * @return the value of the 'Body' containment reference. + * @see #setBody(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression_Body() + * @model containment="true" + * @generated + */ + Expression getBody(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody Body}' containment reference. + * + * + * @param value the new value of the 'Body' containment reference. + * @see #getBody() + * @generated + */ + void setBody(Expression value); + + /** + * Returns the value of the 'Target Type' reference. + * + * + * @return the value of the 'Target Type' reference. + * @see #setTargetType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression_TargetType() + * @model + * @generated + */ + Symbol getTargetType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getTargetType Target Type}' reference. + * + * + * @param value the new value of the 'Target Type' reference. + * @see #getTargetType() + * @generated + */ + void setTargetType(Symbol value); + +} // CastExpression diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDeclaration.java new file mode 100644 index 00000000..01e35777 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDeclaration.java @@ -0,0 +1,118 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Class Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getFields Fields}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getName Name}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isAbstract Abstract}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getSupertypes Supertypes}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isRoot Root}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration() + * @model + * @generated + */ +public interface ClassDeclaration extends Statement { + /** + * Returns the value of the 'Fields' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Field}. + * + * + * @return the value of the 'Fields' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Fields() + * @model containment="true" + * @generated + */ + EList getFields(); + + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the 'Abstract' attribute. + * + * + * @return the value of the 'Abstract' attribute. + * @see #setAbstract(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Abstract() + * @model + * @generated + */ + boolean isAbstract(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isAbstract Abstract}' attribute. + * + * + * @param value the new value of the 'Abstract' attribute. + * @see #isAbstract() + * @generated + */ + void setAbstract(boolean value); + + /** + * Returns the value of the 'Supertypes' reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Symbol}. + * + * + * @return the value of the 'Supertypes' reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Supertypes() + * @model + * @generated + */ + EList getSupertypes(); + + /** + * Returns the value of the 'Root' attribute. + * + * + * @return the value of the 'Root' attribute. + * @see #setRoot(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDeclaration_Root() + * @model + * @generated + */ + boolean isRoot(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isRoot Root}' attribute. + * + * + * @param value the new value of the 'Root' attribute. + * @see #isRoot() + * @generated + */ + void setRoot(boolean value); + +} // ClassDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ConditionalExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ConditionalExpression.java new file mode 100644 index 00000000..73c3cdba --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ConditionalExpression.java @@ -0,0 +1,90 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Conditional Expression'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getCondition Condition}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getThen Then}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getElse Else}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConditionalExpression() + * @model + * @generated + */ +public interface ConditionalExpression extends Expression { + /** + * Returns the value of the 'Condition' containment reference. + * + * + * @return the value of the 'Condition' containment reference. + * @see #setCondition(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConditionalExpression_Condition() + * @model containment="true" + * @generated + */ + Expression getCondition(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getCondition Condition}' containment reference. + * + * + * @param value the new value of the 'Condition' containment reference. + * @see #getCondition() + * @generated + */ + void setCondition(Expression value); + + /** + * Returns the value of the 'Then' containment reference. + * + * + * @return the value of the 'Then' containment reference. + * @see #setThen(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConditionalExpression_Then() + * @model containment="true" + * @generated + */ + Expression getThen(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getThen Then}' containment reference. + * + * + * @param value the new value of the 'Then' containment reference. + * @see #getThen() + * @generated + */ + void setThen(Expression value); + + /** + * Returns the value of the 'Else' containment reference. + * + * + * @return the value of the 'Else' containment reference. + * @see #setElse(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConditionalExpression_Else() + * @model containment="true" + * @generated + */ + Expression getElse(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getElse Else}' containment reference. + * + * + * @param value the new value of the 'Else' containment reference. + * @see #getElse() + * @generated + */ + void setElse(Expression value); + +} // ConditionalExpression diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java new file mode 100644 index 00000000..16b8f305 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Conjunction'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConjunction() + * @model + * @generated + */ +public interface Conjunction extends MultiaryExpession { +} // Conjunction diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Count.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Count.java new file mode 100644 index 00000000..f1127be9 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Count.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Count'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCount() + * @model + * @generated + */ +public interface Count extends AggregateExpression { +} // Count diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Datatype.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Datatype.java new file mode 100644 index 00000000..951973ac --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Datatype.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Datatype'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDatatype() + * @model + * @generated + */ +public interface Datatype extends Relation { +} // Datatype diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultAssertion.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultAssertion.java new file mode 100644 index 00000000..ec66f733 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultAssertion.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Default Assertion'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDefaultAssertion() + * @model + * @generated + */ +public interface DefaultAssertion extends AbstractAssertion { +} // DefaultAssertion diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java new file mode 100644 index 00000000..8d91967f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Disjunction'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDisjunction() + * @model + * @generated + */ +public interface Disjunction extends MultiaryExpession { +} // Disjunction diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyLiteral.java new file mode 100644 index 00000000..2bec9e47 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyLiteral.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Empty Literal'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEmptyLiteral() + * @model + * @generated + */ +public interface EmptyLiteral extends Literal { +} // EmptyLiteral diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumDeclaration.java new file mode 100644 index 00000000..a7e0b5ee --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumDeclaration.java @@ -0,0 +1,59 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Enum Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getLiterals Literals}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getName Name}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumDeclaration() + * @model + * @generated + */ +public interface EnumDeclaration extends Statement { + /** + * Returns the value of the 'Literals' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral}. + * + * + * @return the value of the 'Literals' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumDeclaration_Literals() + * @model containment="true" + * @generated + */ + EList getLiterals(); + + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumDeclaration_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // EnumDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumLiteral.java new file mode 100644 index 00000000..cb77e175 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/EnumLiteral.java @@ -0,0 +1,46 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Enum Literal'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral#getName Name}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumLiteral() + * @model + * @generated + */ +public interface EnumLiteral extends EObject { + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEnumLiteral_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // EnumLiteral diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java new file mode 100644 index 00000000..4f7843a9 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Exact Multiplicity'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getValue Value}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactMultiplicity() + * @model + * @generated + */ +public interface ExactMultiplicity extends Multiplicity { + /** + * Returns the value of the 'Value' attribute. + * + * + * @return the value of the 'Value' attribute. + * @see #setValue(int) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactMultiplicity_Value() + * @model + * @generated + */ + int getValue(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getValue Value}' attribute. + * + * + * @param value the new value of the 'Value' attribute. + * @see #getValue() + * @generated + */ + void setValue(int value); + +} // ExactMultiplicity diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScope.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScope.java new file mode 100644 index 00000000..c5a86c8f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScope.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Exact Scope'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope#getSize Size}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactScope() + * @model + * @generated + */ +public interface ExactScope extends ScopeDeclaration { + /** + * Returns the value of the 'Size' attribute. + * + * + * @return the value of the 'Size' attribute. + * @see #setSize(int) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactScope_Size() + * @model + * @generated + */ + int getSize(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope#getSize Size}' attribute. + * + * + * @param value the new value of the 'Size' attribute. + * @see #getSize() + * @generated + */ + void setSize(int value); + +} // ExactScope diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java new file mode 100644 index 00000000..306312ea --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java @@ -0,0 +1,36 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Expression'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Expression#getExistsVariables Exists Variables}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpression() + * @model abstract="true" + * @generated + */ +public interface Expression extends Statement { + /** + * Returns the value of the 'Exists Variables' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Variable}. + * + * + * @return the value of the 'Exists Variables' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpression_ExistsVariables() + * @model containment="true" transient="true" + * @generated + */ + EList getExistsVariables(); + +} // Expression diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java new file mode 100644 index 00000000..f92ff2fe --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Expression Argument'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getExpression Expression}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpressionArgument() + * @model + * @generated + */ +public interface ExpressionArgument extends Argument { + /** + * Returns the value of the 'Expression' containment reference. + * + * + * @return the value of the 'Expression' containment reference. + * @see #setExpression(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpressionArgument_Expression() + * @model containment="true" + * @generated + */ + Expression getExpression(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getExpression Expression}' containment reference. + * + * + * @param value the new value of the 'Expression' containment reference. + * @see #getExpression() + * @generated + */ + void setExpression(Expression value); + +} // ExpressionArgument diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregationOperatorDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregationOperatorDeclaration.java new file mode 100644 index 00000000..ef8303ce --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregationOperatorDeclaration.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Extern Aggregation Operator Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getArgumentType Argument Type}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getResultType Result Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregationOperatorDeclaration() + * @model + * @generated + */ +public interface ExternAggregationOperatorDeclaration extends ExternDeclaration { + /** + * Returns the value of the 'Argument Type' reference. + * + * + * @return the value of the 'Argument Type' reference. + * @see #setArgumentType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregationOperatorDeclaration_ArgumentType() + * @model + * @generated + */ + Symbol getArgumentType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getArgumentType Argument Type}' reference. + * + * + * @param value the new value of the 'Argument Type' reference. + * @see #getArgumentType() + * @generated + */ + void setArgumentType(Symbol value); + + /** + * Returns the value of the 'Result Type' reference. + * + * + * @return the value of the 'Result Type' reference. + * @see #setResultType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregationOperatorDeclaration_ResultType() + * @model + * @generated + */ + Symbol getResultType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getResultType Result Type}' reference. + * + * + * @param value the new value of the 'Result Type' reference. + * @see #getResultType() + * @generated + */ + void setResultType(Symbol value); + +} // ExternAggregationOperatorDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDeclaration.java new file mode 100644 index 00000000..c3493469 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDeclaration.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Extern Datatype Declaration'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDatatypeDeclaration() + * @model + * @generated + */ +public interface ExternDatatypeDeclaration extends ExternDeclaration { +} // ExternDatatypeDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDeclaration.java new file mode 100644 index 00000000..857d2b86 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDeclaration.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Extern Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration#getName Name}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDeclaration() + * @model abstract="true" + * @generated + */ +public interface ExternDeclaration extends Statement { + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDeclaration_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // ExternDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctionDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctionDeclaration.java new file mode 100644 index 00000000..c9cdc060 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctionDeclaration.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Extern Function Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration#getResultType Result Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternFunctionDeclaration() + * @model + * @generated + */ +public interface ExternFunctionDeclaration extends ExternFunctorDeclaration { + /** + * Returns the value of the 'Result Type' reference. + * + * + * @return the value of the 'Result Type' reference. + * @see #setResultType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternFunctionDeclaration_ResultType() + * @model + * @generated + */ + Symbol getResultType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration#getResultType Result Type}' reference. + * + * + * @param value the new value of the 'Result Type' reference. + * @see #getResultType() + * @generated + */ + void setResultType(Symbol value); + +} // ExternFunctionDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctorDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctorDeclaration.java new file mode 100644 index 00000000..40f577c8 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternFunctorDeclaration.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Extern Functor Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration#getArgumentList Argument List}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternFunctorDeclaration() + * @model abstract="true" + * @generated + */ +public interface ExternFunctorDeclaration extends ExternDeclaration { + /** + * Returns the value of the 'Argument List' containment reference. + * + * + * @return the value of the 'Argument List' containment reference. + * @see #setArgumentList(ArgumentList) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternFunctorDeclaration_ArgumentList() + * @model containment="true" + * @generated + */ + ArgumentList getArgumentList(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration#getArgumentList Argument List}' containment reference. + * + * + * @param value the new value of the 'Argument List' containment reference. + * @see #getArgumentList() + * @generated + */ + void setArgumentList(ArgumentList value); + +} // ExternFunctorDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDeclaration.java new file mode 100644 index 00000000..0b646d11 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDeclaration.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Extern Predicate Declaration'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternPredicateDeclaration() + * @model + * @generated + */ +public interface ExternPredicateDeclaration extends ExternFunctorDeclaration, InlinePredicateAttrributes { +} // ExternPredicateDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Field.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Field.java new file mode 100644 index 00000000..cfd9e44b --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Field.java @@ -0,0 +1,161 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Field'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Field#isContainment Containment}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Field#isCrossReference Cross Reference}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Field#getOpposite Opposite}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Field#getMultiplicity Multiplicity}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Field#getType Type}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Field#getName Name}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField() + * @model + * @generated + */ +public interface Field extends EObject { + /** + * Returns the value of the 'Containment' attribute. + * + * + * @return the value of the 'Containment' attribute. + * @see #setContainment(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Containment() + * @model + * @generated + */ + boolean isContainment(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isContainment Containment}' attribute. + * + * + * @param value the new value of the 'Containment' attribute. + * @see #isContainment() + * @generated + */ + void setContainment(boolean value); + + /** + * Returns the value of the 'Cross Reference' attribute. + * + * + * @return the value of the 'Cross Reference' attribute. + * @see #setCrossReference(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_CrossReference() + * @model + * @generated + */ + boolean isCrossReference(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isCrossReference Cross Reference}' attribute. + * + * + * @param value the new value of the 'Cross Reference' attribute. + * @see #isCrossReference() + * @generated + */ + void setCrossReference(boolean value); + + /** + * Returns the value of the 'Opposite' reference. + * + * + * @return the value of the 'Opposite' reference. + * @see #setOpposite(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Opposite() + * @model + * @generated + */ + Symbol getOpposite(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getOpposite Opposite}' reference. + * + * + * @param value the new value of the 'Opposite' reference. + * @see #getOpposite() + * @generated + */ + void setOpposite(Symbol value); + + /** + * Returns the value of the 'Multiplicity' containment reference. + * + * + * @return the value of the 'Multiplicity' containment reference. + * @see #setMultiplicity(Multiplicity) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Multiplicity() + * @model containment="true" + * @generated + */ + Multiplicity getMultiplicity(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getMultiplicity Multiplicity}' containment reference. + * + * + * @param value the new value of the 'Multiplicity' containment reference. + * @see #getMultiplicity() + * @generated + */ + void setMultiplicity(Multiplicity value); + + /** + * Returns the value of the 'Type' reference. + * + * + * @return the value of the 'Type' reference. + * @see #setType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Type() + * @model + * @generated + */ + Symbol getType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getType Type}' reference. + * + * + * @param value the new value of the 'Type' reference. + * @see #getType() + * @generated + */ + void setType(Symbol value); + + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getField_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // Field diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Forall.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Forall.java new file mode 100644 index 00000000..1591e186 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Forall.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Forall'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Forall#getBody Body}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getForall() + * @model + * @generated + */ +public interface Forall extends AggregateExpression { + /** + * Returns the value of the 'Body' containment reference. + * + * + * @return the value of the 'Body' containment reference. + * @see #setBody(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getForall_Body() + * @model containment="true" + * @generated + */ + Expression getBody(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Forall#getBody Body}' containment reference. + * + * + * @param value the new value of the 'Body' containment reference. + * @see #getBody() + * @generated + */ + void setBody(Expression value); + +} // Forall diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Function.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Function.java new file mode 100644 index 00000000..b1bb307d --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Function.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Function'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Function#getResultType Result Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunction() + * @model abstract="true" + * @generated + */ +public interface Function extends Functor { + /** + * Returns the value of the 'Result Type' reference. + * + * + * @return the value of the 'Result Type' reference. + * @see #setResultType(Datatype) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunction_ResultType() + * @model + * @generated + */ + Datatype getResultType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Function#getResultType Result Type}' reference. + * + * + * @param value the new value of the 'Result Type' reference. + * @see #getResultType() + * @generated + */ + void setResultType(Datatype value); + +} // Function diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctionDefinition.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctionDefinition.java new file mode 100644 index 00000000..ab0db19b --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctionDefinition.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Function Definition'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition#getResultType Result Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctionDefinition() + * @model + * @generated + */ +public interface FunctionDefinition extends FunctorDefiniton { + /** + * Returns the value of the 'Result Type' reference. + * + * + * @return the value of the 'Result Type' reference. + * @see #setResultType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctionDefinition_ResultType() + * @model + * @generated + */ + Symbol getResultType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition#getResultType Result Type}' reference. + * + * + * @param value the new value of the 'Result Type' reference. + * @see #getResultType() + * @generated + */ + void setResultType(Symbol value); + +} // FunctionDefinition diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java new file mode 100644 index 00000000..e5c2c56f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java @@ -0,0 +1,36 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Functor'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters Parameters}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctor() + * @model abstract="true" + * @generated + */ +public interface Functor extends Symbol { + /** + * Returns the value of the 'Parameters' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Variable}. + * + * + * @return the value of the 'Parameters' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctor_Parameters() + * @model containment="true" + * @generated + */ + EList getParameters(); + +} // Functor diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctorDefiniton.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctorDefiniton.java new file mode 100644 index 00000000..70a21b6c --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/FunctorDefiniton.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Functor Definiton'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getHead Head}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getBody Body}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctorDefiniton() + * @model abstract="true" + * @generated + */ +public interface FunctorDefiniton extends Statement { + /** + * Returns the value of the 'Head' containment reference. + * + * + * @return the value of the 'Head' containment reference. + * @see #setHead(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctorDefiniton_Head() + * @model containment="true" + * @generated + */ + Expression getHead(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getHead Head}' containment reference. + * + * + * @param value the new value of the 'Head' containment reference. + * @see #getHead() + * @generated + */ + void setHead(Expression value); + + /** + * Returns the value of the 'Body' containment reference. + * + * + * @return the value of the 'Body' containment reference. + * @see #setBody(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctorDefiniton_Body() + * @model containment="true" + * @generated + */ + Expression getBody(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getBody Body}' containment reference. + * + * + * @param value the new value of the 'Body' containment reference. + * @see #getBody() + * @generated + */ + void setBody(Expression value); + +} // FunctorDefiniton diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Import.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Import.java new file mode 100644 index 00000000..39dc6d6d --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Import.java @@ -0,0 +1,46 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Import'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Import#getAlias Alias}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getImport() + * @model + * @generated + */ +public interface Import extends EObject { + /** + * Returns the value of the 'Alias' attribute. + * + * + * @return the value of the 'Alias' attribute. + * @see #setAlias(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getImport_Alias() + * @model + * @generated + */ + String getAlias(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Import#getAlias Alias}' attribute. + * + * + * @param value the new value of the 'Alias' attribute. + * @see #getAlias() + * @generated + */ + void setAlias(String value); + +} // Import diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java new file mode 100644 index 00000000..1a105131 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Infinity Literal'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInfinityLiteral() + * @model + * @generated + */ +public interface InfinityLiteral extends Literal { +} // InfinityLiteral diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InlinePredicateAttrributes.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InlinePredicateAttrributes.java new file mode 100644 index 00000000..b715784a --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/InlinePredicateAttrributes.java @@ -0,0 +1,69 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Inline Predicate Attrributes'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isError Error}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isFunctional Functional}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInlinePredicateAttrributes() + * @model interface="true" abstract="true" + * @generated + */ +public interface InlinePredicateAttrributes extends EObject { + /** + * Returns the value of the 'Error' attribute. + * + * + * @return the value of the 'Error' attribute. + * @see #setError(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInlinePredicateAttrributes_Error() + * @model + * @generated + */ + boolean isError(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isError Error}' attribute. + * + * + * @param value the new value of the 'Error' attribute. + * @see #isError() + * @generated + */ + void setError(boolean value); + + /** + * Returns the value of the 'Functional' attribute. + * + * + * @return the value of the 'Functional' attribute. + * @see #setFunctional(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInlinePredicateAttrributes_Functional() + * @model + * @generated + */ + boolean isFunctional(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isFunctional Functional}' attribute. + * + * + * @param value the new value of the 'Functional' attribute. + * @see #isFunctional() + * @generated + */ + void setFunctional(boolean value); + +} // InlinePredicateAttrributes diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntLiteral.java new file mode 100644 index 00000000..ff8a3cf3 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/IntLiteral.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Int Literal'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral#getValue Value}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIntLiteral() + * @model + * @generated + */ +public interface IntLiteral extends Literal { + /** + * Returns the value of the 'Value' attribute. + * + * + * @return the value of the 'Value' attribute. + * @see #setValue(int) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIntLiteral_Value() + * @model + * @generated + */ + int getValue(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral#getValue Value}' attribute. + * + * + * @param value the new value of the 'Value' attribute. + * @see #getValue() + * @generated + */ + void setValue(int value); + +} // IntLiteral diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java new file mode 100644 index 00000000..fb8ac39c --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Interval'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound Lower Bound}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound Upper Bound}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval() + * @model + * @generated + */ +public interface Interval extends Expression { + /** + * Returns the value of the 'Lower Bound' containment reference. + * + * + * @return the value of the 'Lower Bound' containment reference. + * @see #setLowerBound(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval_LowerBound() + * @model containment="true" + * @generated + */ + Expression getLowerBound(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound Lower Bound}' containment reference. + * + * + * @param value the new value of the 'Lower Bound' containment reference. + * @see #getLowerBound() + * @generated + */ + void setLowerBound(Expression value); + + /** + * Returns the value of the 'Upper Bound' containment reference. + * + * + * @return the value of the 'Upper Bound' containment reference. + * @see #setUpperBound(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval_UpperBound() + * @model containment="true" + * @generated + */ + Expression getUpperBound(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound Upper Bound}' containment reference. + * + * + * @param value the new value of the 'Upper Bound' containment reference. + * @see #getUpperBound() + * @generated + */ + void setUpperBound(Expression value); + +} // Interval diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java new file mode 100644 index 00000000..cdf1f8eb --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java @@ -0,0 +1,115 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Let Binding'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue Value}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable Variable}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getName Name}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getType Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding() + * @model + * @generated + */ +public interface LetBinding extends EObject { + /** + * Returns the value of the 'Value' containment reference. + * + * + * @return the value of the 'Value' containment reference. + * @see #setValue(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Value() + * @model containment="true" + * @generated + */ + Expression getValue(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue Value}' containment reference. + * + * + * @param value the new value of the 'Value' containment reference. + * @see #getValue() + * @generated + */ + void setValue(Expression value); + + /** + * Returns the value of the 'Variable' containment reference. + * + * + * @return the value of the 'Variable' containment reference. + * @see #setVariable(Variable) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Variable() + * @model containment="true" transient="true" + * @generated + */ + Variable getVariable(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable Variable}' containment reference. + * + * + * @param value the new value of the 'Variable' containment reference. + * @see #getVariable() + * @generated + */ + void setVariable(Variable value); + + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the 'Type' reference. + * + * + * @return the value of the 'Type' reference. + * @see #setType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Type() + * @model + * @generated + */ + Symbol getType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getType Type}' reference. + * + * + * @param value the new value of the 'Type' reference. + * @see #getType() + * @generated + */ + void setType(Symbol value); + +} // LetBinding diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetExpression.java new file mode 100644 index 00000000..d677503d --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LetExpression.java @@ -0,0 +1,59 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Let Expression'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBindings Bindings}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBody Body}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetExpression() + * @model + * @generated + */ +public interface LetExpression extends Expression { + /** + * Returns the value of the 'Bindings' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding}. + * + * + * @return the value of the 'Bindings' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetExpression_Bindings() + * @model containment="true" + * @generated + */ + EList getBindings(); + + /** + * Returns the value of the 'Body' containment reference. + * + * + * @return the value of the 'Body' containment reference. + * @see #setBody(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetExpression_Body() + * @model containment="true" + * @generated + */ + Expression getBody(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBody Body}' containment reference. + * + * + * @param value the new value of the 'Body' containment reference. + * @see #getBody() + * @generated + */ + void setBody(Expression value); + +} // LetExpression diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java new file mode 100644 index 00000000..b3ba8b10 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Literal'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLiteral() + * @model abstract="true" + * @generated + */ +public interface Literal extends Expression { +} // Literal diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java new file mode 100644 index 00000000..7f00fc98 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java @@ -0,0 +1,47 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Logic Literal'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue Value}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicLiteral() + * @model + * @generated + */ +public interface LogicLiteral extends Literal { + /** + * Returns the value of the 'Value' attribute. + * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue}. + * + * + * @return the value of the 'Value' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue + * @see #setValue(LogicValue) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicLiteral_Value() + * @model + * @generated + */ + LogicValue getValue(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue Value}' attribute. + * + * + * @param value the new value of the 'Value' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue + * @see #getValue() + * @generated + */ + void setValue(LogicValue value); + +} // LogicLiteral diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java new file mode 100644 index 00000000..6b6148c0 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java @@ -0,0 +1,250 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Logic Value', + * and utility methods for working with them. + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicValue() + * @model + * @generated + */ +public enum LogicValue implements Enumerator { + /** + * The 'UNKNOWN' literal object. + * + * + * @see #UNKNOWN_VALUE + * @generated + * @ordered + */ + UNKNOWN(0, "UNKNOWN", "UNKNOWN"), + + /** + * The 'FALSE' literal object. + * + * + * @see #FALSE_VALUE + * @generated + * @ordered + */ + FALSE(1, "FALSE", "FALSE"), + + /** + * The 'TRUE' literal object. + * + * + * @see #TRUE_VALUE + * @generated + * @ordered + */ + TRUE(2, "TRUE", "TRUE"), + + /** + * The 'ERROR' literal object. + * + * + * @see #ERROR_VALUE + * @generated + * @ordered + */ + ERROR(3, "ERROR", "ERROR"); + + /** + * The 'UNKNOWN' literal value. + * + * + * @see #UNKNOWN + * @model + * @generated + * @ordered + */ + public static final int UNKNOWN_VALUE = 0; + + /** + * The 'FALSE' literal value. + * + * + * @see #FALSE + * @model + * @generated + * @ordered + */ + public static final int FALSE_VALUE = 1; + + /** + * The 'TRUE' literal value. + * + * + * @see #TRUE + * @model + * @generated + * @ordered + */ + public static final int TRUE_VALUE = 2; + + /** + * The 'ERROR' literal value. + * + * + * @see #ERROR + * @model + * @generated + * @ordered + */ + public static final int ERROR_VALUE = 3; + + /** + * An array of all the 'Logic Value' enumerators. + * + * + * @generated + */ + private static final LogicValue[] VALUES_ARRAY = new LogicValue[] { UNKNOWN, FALSE, TRUE, ERROR, }; + + /** + * A public read-only list of all the 'Logic Value' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Logic Value' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static LogicValue get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + LogicValue result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Logic Value' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static LogicValue getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + LogicValue result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Logic Value' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static LogicValue get(int value) { + switch (value) { + case UNKNOWN_VALUE: + return UNKNOWN; + case FALSE_VALUE: + return FALSE; + case TRUE_VALUE: + return TRUE; + case ERROR_VALUE: + return ERROR; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private LogicValue(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //LogicValue diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScope.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScope.java new file mode 100644 index 00000000..644ffa25 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScope.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Lower Bounded Scope'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope#getLowerBound Lower Bound}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLowerBoundedScope() + * @model + * @generated + */ +public interface LowerBoundedScope extends ScopeDeclaration { + /** + * Returns the value of the 'Lower Bound' attribute. + * + * + * @return the value of the 'Lower Bound' attribute. + * @see #setLowerBound(int) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLowerBoundedScope_LowerBound() + * @model + * @generated + */ + int getLowerBound(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope#getLowerBound Lower Bound}' attribute. + * + * + * @param value the new value of the 'Lower Bound' attribute. + * @see #getLowerBound() + * @generated + */ + void setLowerBound(int value); + +} // LowerBoundedScope diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java new file mode 100644 index 00000000..475e48a3 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Metric'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetric() + * @model + * @generated + */ +public interface Metric extends Function { +} // Metric diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiaryExpession.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiaryExpession.java new file mode 100644 index 00000000..1f27beb7 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/MultiaryExpession.java @@ -0,0 +1,36 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Multiary Expession'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession#getChildren Children}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiaryExpession() + * @model abstract="true" + * @generated + */ +public interface MultiaryExpession extends Expression { + /** + * Returns the value of the 'Children' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Expression}. + * + * + * @return the value of the 'Children' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiaryExpession_Children() + * @model containment="true" + * @generated + */ + EList getChildren(); + +} // MultiaryExpession diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java new file mode 100644 index 00000000..e759fb50 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java @@ -0,0 +1,18 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Multiplicity'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiplicity() + * @model abstract="true" + * @generated + */ +public interface Multiplicity extends EObject { +} // Multiplicity diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamespaceImport.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamespaceImport.java new file mode 100644 index 00000000..29224110 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/NamespaceImport.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Namespace Import'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport#getImportedNamespace Imported Namespace}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNamespaceImport() + * @model + * @generated + */ +public interface NamespaceImport extends Import { + /** + * Returns the value of the 'Imported Namespace' attribute. + * + * + * @return the value of the 'Imported Namespace' attribute. + * @see #setImportedNamespace(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNamespaceImport_ImportedNamespace() + * @model + * @generated + */ + String getImportedNamespace(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport#getImportedNamespace Imported Namespace}' attribute. + * + * + * @param value the new value of the 'Imported Namespace' attribute. + * @see #getImportedNamespace() + * @generated + */ + void setImportedNamespace(String value); + +} // NamespaceImport diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java new file mode 100644 index 00000000..01366406 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Node'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Node#isNamed Named}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNode() + * @model + * @generated + */ +public interface Node extends Symbol { + /** + * Returns the value of the 'Named' attribute. + * + * + * @return the value of the 'Named' attribute. + * @see #setNamed(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNode_Named() + * @model + * @generated + */ + boolean isNamed(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Node#isNamed Named}' attribute. + * + * + * @param value the new value of the 'Named' attribute. + * @see #isNamed() + * @generated + */ + void setNamed(boolean value); + +} // Node diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDeclaration.java new file mode 100644 index 00000000..c446c245 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDeclaration.java @@ -0,0 +1,70 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Objective Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getKind Kind}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getObjective Objective}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDeclaration() + * @model + * @generated + */ +public interface ObjectiveDeclaration extends Statement { + /** + * Returns the value of the 'Kind' attribute. + * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind}. + * + * + * @return the value of the 'Kind' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind + * @see #setKind(ObjectiveKind) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDeclaration_Kind() + * @model + * @generated + */ + ObjectiveKind getKind(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getKind Kind}' attribute. + * + * + * @param value the new value of the 'Kind' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind + * @see #getKind() + * @generated + */ + void setKind(ObjectiveKind value); + + /** + * Returns the value of the 'Objective' containment reference. + * + * + * @return the value of the 'Objective' containment reference. + * @see #setObjective(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDeclaration_Objective() + * @model containment="true" + * @generated + */ + Expression getObjective(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getObjective Objective}' containment reference. + * + * + * @param value the new value of the 'Objective' containment reference. + * @see #getObjective() + * @generated + */ + void setObjective(Expression value); + +} // ObjectiveDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java new file mode 100644 index 00000000..e81389fb --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java @@ -0,0 +1,204 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Objective Kind', + * and utility methods for working with them. + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveKind() + * @model + * @generated + */ +public enum ObjectiveKind implements Enumerator { + /** + * The 'MINIMIZATION' literal object. + * + * + * @see #MINIMIZATION_VALUE + * @generated + * @ordered + */ + MINIMIZATION(0, "MINIMIZATION", "MINIMIZATION"), + + /** + * The 'MAXIMIZATION' literal object. + * + * + * @see #MAXIMIZATION_VALUE + * @generated + * @ordered + */ + MAXIMIZATION(1, "MAXIMIZATION", "MAXIMIZATION"); + + /** + * The 'MINIMIZATION' literal value. + * + * + * @see #MINIMIZATION + * @model + * @generated + * @ordered + */ + public static final int MINIMIZATION_VALUE = 0; + + /** + * The 'MAXIMIZATION' literal value. + * + * + * @see #MAXIMIZATION + * @model + * @generated + * @ordered + */ + public static final int MAXIMIZATION_VALUE = 1; + + /** + * An array of all the 'Objective Kind' enumerators. + * + * + * @generated + */ + private static final ObjectiveKind[] VALUES_ARRAY = new ObjectiveKind[] { MINIMIZATION, MAXIMIZATION, }; + + /** + * A public read-only list of all the 'Objective Kind' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Objective Kind' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static ObjectiveKind get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + ObjectiveKind result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Objective Kind' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static ObjectiveKind getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + ObjectiveKind result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Objective Kind' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static ObjectiveKind get(int value) { + switch (value) { + case MINIMIZATION_VALUE: + return MINIMIZATION; + case MAXIMIZATION_VALUE: + return MAXIMIZATION; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private ObjectiveKind(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //ObjectiveKind diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Operator.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Operator.java new file mode 100644 index 00000000..1da3f3a5 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Operator.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Operator'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getOperator() + * @model + * @generated + */ +public interface Operator extends Function { +} // Operator diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PathComponent.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PathComponent.java new file mode 100644 index 00000000..ba0b8d7e --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PathComponent.java @@ -0,0 +1,115 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Path Component'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#getSymbol Symbol}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isInverse Inverse}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isTransitiveClosure Transitive Closure}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isReflexiveTransitiveClosure Reflexive Transitive Closure}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent() + * @model + * @generated + */ +public interface PathComponent extends EObject { + /** + * Returns the value of the 'Symbol' reference. + * + * + * @return the value of the 'Symbol' reference. + * @see #setSymbol(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent_Symbol() + * @model + * @generated + */ + Symbol getSymbol(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#getSymbol Symbol}' reference. + * + * + * @param value the new value of the 'Symbol' reference. + * @see #getSymbol() + * @generated + */ + void setSymbol(Symbol value); + + /** + * Returns the value of the 'Inverse' attribute. + * + * + * @return the value of the 'Inverse' attribute. + * @see #setInverse(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent_Inverse() + * @model + * @generated + */ + boolean isInverse(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isInverse Inverse}' attribute. + * + * + * @param value the new value of the 'Inverse' attribute. + * @see #isInverse() + * @generated + */ + void setInverse(boolean value); + + /** + * Returns the value of the 'Transitive Closure' attribute. + * + * + * @return the value of the 'Transitive Closure' attribute. + * @see #setTransitiveClosure(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent_TransitiveClosure() + * @model + * @generated + */ + boolean isTransitiveClosure(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isTransitiveClosure Transitive Closure}' attribute. + * + * + * @param value the new value of the 'Transitive Closure' attribute. + * @see #isTransitiveClosure() + * @generated + */ + void setTransitiveClosure(boolean value); + + /** + * Returns the value of the 'Reflexive Transitive Closure' attribute. + * + * + * @return the value of the 'Reflexive Transitive Closure' attribute. + * @see #setReflexiveTransitiveClosure(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPathComponent_ReflexiveTransitiveClosure() + * @model + * @generated + */ + boolean isReflexiveTransitiveClosure(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isReflexiveTransitiveClosure Reflexive Transitive Closure}' attribute. + * + * + * @param value the new value of the 'Reflexive Transitive Closure' attribute. + * @see #isReflexiveTransitiveClosure() + * @generated + */ + void setReflexiveTransitiveClosure(boolean value); + +} // PathComponent diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java new file mode 100644 index 00000000..9272916f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Predicate'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicate() + * @model + * @generated + */ +public interface Predicate extends Relation { +} // Predicate diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java new file mode 100644 index 00000000..f99fb162 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Predicate Definition'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateDefinition() + * @model + * @generated + */ +public interface PredicateDefinition extends FunctorDefiniton, InlinePredicateAttrributes { +} // PredicateDefinition diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java new file mode 100644 index 00000000..ca54b06c --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java @@ -0,0 +1,87 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Problem'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getName Name}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements Statements}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getSymbols Symbols}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getImports Imports}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem() + * @model + * @generated + */ +public interface Problem extends EObject { + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + + /** + * Returns the value of the 'Statements' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Statement}. + * + * + * @return the value of the 'Statements' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Statements() + * @model containment="true" + * @generated + */ + EList getStatements(); + + /** + * Returns the value of the 'Symbols' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Symbol}. + * + * + * @return the value of the 'Symbols' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Symbols() + * @model containment="true" transient="true" + * @generated + */ + EList getSymbols(); + + /** + * Returns the value of the 'Imports' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Import}. + * + * + * @return the value of the 'Imports' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Imports() + * @model containment="true" + * @generated + */ + EList getImports(); + +} // Problem diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealLiteral.java new file mode 100644 index 00000000..f6646284 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/RealLiteral.java @@ -0,0 +1,46 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import java.math.BigDecimal; + +/** + * + * A representation of the model object 'Real Literal'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral#getValue Value}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRealLiteral() + * @model + * @generated + */ +public interface RealLiteral extends Literal { + /** + * Returns the value of the 'Value' attribute. + * + * + * @return the value of the 'Value' attribute. + * @see #setValue(BigDecimal) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRealLiteral_Value() + * @model + * @generated + */ + BigDecimal getValue(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral#getValue Value}' attribute. + * + * + * @param value the new value of the 'Value' attribute. + * @see #getValue() + * @generated + */ + void setValue(BigDecimal value); + +} // RealLiteral diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java new file mode 100644 index 00000000..5641337f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java @@ -0,0 +1,36 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Reference'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Reference#getComponents Components}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getReference() + * @model + * @generated + */ +public interface Reference extends Expression { + /** + * Returns the value of the 'Components' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent}. + * + * + * @return the value of the 'Components' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getReference_Components() + * @model containment="true" + * @generated + */ + EList getComponents(); + +} // Reference diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Relation.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Relation.java new file mode 100644 index 00000000..3d35a55e --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Relation.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Relation'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getRelation() + * @model abstract="true" + * @generated + */ +public interface Relation extends Functor { +} // Relation diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDeclaration.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDeclaration.java new file mode 100644 index 00000000..4ab92418 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDeclaration.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Scope Declaration'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration#getType Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getScopeDeclaration() + * @model + * @generated + */ +public interface ScopeDeclaration extends Statement { + /** + * Returns the value of the 'Type' reference. + * + * + * @return the value of the 'Type' reference. + * @see #setType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getScopeDeclaration_Type() + * @model + * @generated + */ + Symbol getType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration#getType Type}' reference. + * + * + * @param value the new value of the 'Type' reference. + * @see #getType() + * @generated + */ + void setType(Symbol value); + +} // ScopeDeclaration diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java new file mode 100644 index 00000000..6192f942 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java @@ -0,0 +1,592 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EFactory; + +/** + * + * The Factory for the model. + * It provides a create method for each non-abstract class of the model. + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage + * @generated + */ +public interface SolverLanguageFactory extends EFactory { + /** + * The singleton instance of the factory. + * + * + * @generated + */ + SolverLanguageFactory eINSTANCE = org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguageFactoryImpl + .init(); + + /** + * Returns a new object of class 'Path Component'. + * + * + * @return a new object of class 'Path Component'. + * @generated + */ + PathComponent createPathComponent(); + + /** + * Returns a new object of class 'Call'. + * + * + * @return a new object of class 'Call'. + * @generated + */ + Call createCall(); + + /** + * Returns a new object of class 'Reference'. + * + * + * @return a new object of class 'Reference'. + * @generated + */ + Reference createReference(); + + /** + * Returns a new object of class 'Argument List'. + * + * + * @return a new object of class 'Argument List'. + * @generated + */ + ArgumentList createArgumentList(); + + /** + * Returns a new object of class 'Expression Argument'. + * + * + * @return a new object of class 'Expression Argument'. + * @generated + */ + ExpressionArgument createExpressionArgument(); + + /** + * Returns a new object of class 'Star Argument'. + * + * + * @return a new object of class 'Star Argument'. + * @generated + */ + StarArgument createStarArgument(); + + /** + * Returns a new object of class 'Variable'. + * + * + * @return a new object of class 'Variable'. + * @generated + */ + Variable createVariable(); + + /** + * Returns a new object of class 'Unary Expression'. + * + * + * @return a new object of class 'Unary Expression'. + * @generated + */ + UnaryExpression createUnaryExpression(); + + /** + * Returns a new object of class 'Binary Expression'. + * + * + * @return a new object of class 'Binary Expression'. + * @generated + */ + BinaryExpression createBinaryExpression(); + + /** + * Returns a new object of class 'Disjunction'. + * + * + * @return a new object of class 'Disjunction'. + * @generated + */ + Disjunction createDisjunction(); + + /** + * Returns a new object of class 'Conjunction'. + * + * + * @return a new object of class 'Conjunction'. + * @generated + */ + Conjunction createConjunction(); + + /** + * Returns a new object of class 'Conditional Expression'. + * + * + * @return a new object of class 'Conditional Expression'. + * @generated + */ + ConditionalExpression createConditionalExpression(); + + /** + * Returns a new object of class 'Switch'. + * + * + * @return a new object of class 'Switch'. + * @generated + */ + Switch createSwitch(); + + /** + * Returns a new object of class 'Case'. + * + * + * @return a new object of class 'Case'. + * @generated + */ + Case createCase(); + + /** + * Returns a new object of class 'Let Expression'. + * + * + * @return a new object of class 'Let Expression'. + * @generated + */ + LetExpression createLetExpression(); + + /** + * Returns a new object of class 'Let Binding'. + * + * + * @return a new object of class 'Let Binding'. + * @generated + */ + LetBinding createLetBinding(); + + /** + * Returns a new object of class 'Int Literal'. + * + * + * @return a new object of class 'Int Literal'. + * @generated + */ + IntLiteral createIntLiteral(); + + /** + * Returns a new object of class 'Real Literal'. + * + * + * @return a new object of class 'Real Literal'. + * @generated + */ + RealLiteral createRealLiteral(); + + /** + * Returns a new object of class 'String Literal'. + * + * + * @return a new object of class 'String Literal'. + * @generated + */ + StringLiteral createStringLiteral(); + + /** + * Returns a new object of class 'Logic Literal'. + * + * + * @return a new object of class 'Logic Literal'. + * @generated + */ + LogicLiteral createLogicLiteral(); + + /** + * Returns a new object of class 'Empty Literal'. + * + * + * @return a new object of class 'Empty Literal'. + * @generated + */ + EmptyLiteral createEmptyLiteral(); + + /** + * Returns a new object of class 'Cast Expression'. + * + * + * @return a new object of class 'Cast Expression'. + * @generated + */ + CastExpression createCastExpression(); + + /** + * Returns a new object of class 'Count'. + * + * + * @return a new object of class 'Count'. + * @generated + */ + Count createCount(); + + /** + * Returns a new object of class 'Aggregation'. + * + * + * @return a new object of class 'Aggregation'. + * @generated + */ + Aggregation createAggregation(); + + /** + * Returns a new object of class 'Forall'. + * + * + * @return a new object of class 'Forall'. + * @generated + */ + Forall createForall(); + + /** + * Returns a new object of class 'Type Reference'. + * + * + * @return a new object of class 'Type Reference'. + * @generated + */ + TypeReference createTypeReference(); + + /** + * Returns a new object of class 'Infinity Literal'. + * + * + * @return a new object of class 'Infinity Literal'. + * @generated + */ + InfinityLiteral createInfinityLiteral(); + + /** + * Returns a new object of class 'Interval'. + * + * + * @return a new object of class 'Interval'. + * @generated + */ + Interval createInterval(); + + /** + * Returns a new object of class 'Base Relation'. + * + * + * @return a new object of class 'Base Relation'. + * @generated + */ + BaseRelation createBaseRelation(); + + /** + * Returns a new object of class 'Predicate'. + * + * + * @return a new object of class 'Predicate'. + * @generated + */ + Predicate createPredicate(); + + /** + * Returns a new object of class 'Datatype'. + * + * + * @return a new object of class 'Datatype'. + * @generated + */ + Datatype createDatatype(); + + /** + * Returns a new object of class 'Metric'. + * + * + * @return a new object of class 'Metric'. + * @generated + */ + Metric createMetric(); + + /** + * Returns a new object of class 'Operator'. + * + * + * @return a new object of class 'Operator'. + * @generated + */ + Operator createOperator(); + + /** + * Returns a new object of class 'Node'. + * + * + * @return a new object of class 'Node'. + * @generated + */ + Node createNode(); + + /** + * Returns a new object of class 'Predicate Definition'. + * + * + * @return a new object of class 'Predicate Definition'. + * @generated + */ + PredicateDefinition createPredicateDefinition(); + + /** + * Returns a new object of class 'Function Definition'. + * + * + * @return a new object of class 'Function Definition'. + * @generated + */ + FunctionDefinition createFunctionDefinition(); + + /** + * Returns a new object of class 'Extern Predicate Declaration'. + * + * + * @return a new object of class 'Extern Predicate Declaration'. + * @generated + */ + ExternPredicateDeclaration createExternPredicateDeclaration(); + + /** + * Returns a new object of class 'Extern Function Declaration'. + * + * + * @return a new object of class 'Extern Function Declaration'. + * @generated + */ + ExternFunctionDeclaration createExternFunctionDeclaration(); + + /** + * Returns a new object of class 'Extern Aggregation Operator Declaration'. + * + * + * @return a new object of class 'Extern Aggregation Operator Declaration'. + * @generated + */ + ExternAggregationOperatorDeclaration createExternAggregationOperatorDeclaration(); + + /** + * Returns a new object of class 'Extern Datatype Declaration'. + * + * + * @return a new object of class 'Extern Datatype Declaration'. + * @generated + */ + ExternDatatypeDeclaration createExternDatatypeDeclaration(); + + /** + * Returns a new object of class 'Class Declaration'. + * + * + * @return a new object of class 'Class Declaration'. + * @generated + */ + ClassDeclaration createClassDeclaration(); + + /** + * Returns a new object of class 'Enum Declaration'. + * + * + * @return a new object of class 'Enum Declaration'. + * @generated + */ + EnumDeclaration createEnumDeclaration(); + + /** + * Returns a new object of class 'Enum Literal'. + * + * + * @return a new object of class 'Enum Literal'. + * @generated + */ + EnumLiteral createEnumLiteral(); + + /** + * Returns a new object of class 'Field'. + * + * + * @return a new object of class 'Field'. + * @generated + */ + Field createField(); + + /** + * Returns a new object of class 'Default Assertion'. + * + * + * @return a new object of class 'Default Assertion'. + * @generated + */ + DefaultAssertion createDefaultAssertion(); + + /** + * Returns a new object of class 'Assertion'. + * + * + * @return a new object of class 'Assertion'. + * @generated + */ + Assertion createAssertion(); + + /** + * Returns a new object of class 'Unbounded Multiplicity'. + * + * + * @return a new object of class 'Unbounded Multiplicity'. + * @generated + */ + UnboundedMultiplicity createUnboundedMultiplicity(); + + /** + * Returns a new object of class 'Exact Multiplicity'. + * + * + * @return a new object of class 'Exact Multiplicity'. + * @generated + */ + ExactMultiplicity createExactMultiplicity(); + + /** + * Returns a new object of class 'Bounded Multiplicity'. + * + * + * @return a new object of class 'Bounded Multiplicity'. + * @generated + */ + BoundedMultiplicity createBoundedMultiplicity(); + + /** + * Returns a new object of class 'Aggregation Operator'. + * + * + * @return a new object of class 'Aggregation Operator'. + * @generated + */ + AggregationOperator createAggregationOperator(); + + /** + * Returns a new object of class 'Problem'. + * + * + * @return a new object of class 'Problem'. + * @generated + */ + Problem createProblem(); + + /** + * Returns a new object of class 'Typed Star Argument'. + * + * + * @return a new object of class 'Typed Star Argument'. + * @generated + */ + TypedStarArgument createTypedStarArgument(); + + /** + * Returns a new object of class 'Typed Variable Argument'. + * + * + * @return a new object of class 'Typed Variable Argument'. + * @generated + */ + TypedVariableArgument createTypedVariableArgument(); + + /** + * Returns a new object of class 'Unnamed Error Predicate Defintion'. + * + * + * @return a new object of class 'Unnamed Error Predicate Defintion'. + * @generated + */ + UnnamedErrorPredicateDefintion createUnnamedErrorPredicateDefintion(); + + /** + * Returns a new object of class 'Objective Declaration'. + * + * + * @return a new object of class 'Objective Declaration'. + * @generated + */ + ObjectiveDeclaration createObjectiveDeclaration(); + + /** + * Returns a new object of class 'Scope Declaration'. + * + * + * @return a new object of class 'Scope Declaration'. + * @generated + */ + ScopeDeclaration createScopeDeclaration(); + + /** + * Returns a new object of class 'Exact Scope'. + * + * + * @return a new object of class 'Exact Scope'. + * @generated + */ + ExactScope createExactScope(); + + /** + * Returns a new object of class 'Bounded Scope'. + * + * + * @return a new object of class 'Bounded Scope'. + * @generated + */ + BoundedScope createBoundedScope(); + + /** + * Returns a new object of class 'Lower Bounded Scope'. + * + * + * @return a new object of class 'Lower Bounded Scope'. + * @generated + */ + LowerBoundedScope createLowerBoundedScope(); + + /** + * Returns a new object of class 'Namespace Import'. + * + * + * @return a new object of class 'Namespace Import'. + * @generated + */ + NamespaceImport createNamespaceImport(); + + /** + * Returns a new object of class 'Import'. + * + * + * @return a new object of class 'Import'. + * @generated + */ + Import createImport(); + + /** + * Returns a new object of class 'Uri Import'. + * + * + * @return a new object of class 'Uri Import'. + * @generated + */ + UriImport createUriImport(); + + /** + * Returns the package supported by this factory. + * + * + * @return the package supported by this factory. + * @generated + */ + SolverLanguagePackage getSolverLanguagePackage(); + +} //SolverLanguageFactory diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java new file mode 100644 index 00000000..ff1696db --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java @@ -0,0 +1,7554 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * + * The Package for the model. + * It contains accessors for the meta objects to represent + *
    + *
  • each class,
  • + *
  • each feature of each class,
  • + *
  • each operation of each class,
  • + *
  • each enum,
  • + *
  • and each data type
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory + * @model kind="package" + * @generated + */ +public interface SolverLanguagePackage extends EPackage { + /** + * The package name. + * + * + * @generated + */ + String eNAME = "solverLanguage"; + + /** + * The package namespace URI. + * + * + * @generated + */ + String eNS_URI = "http://www.eclipse.org/viatra/solver/language/SolverLanguage"; + + /** + * The package namespace name. + * + * + * @generated + */ + String eNS_PREFIX = "solverLanguage"; + + /** + * The singleton instance of the package. + * + * + * @generated + */ + SolverLanguagePackage eINSTANCE = org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl + .init(); + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl Path Component}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPathComponent() + * @generated + */ + int PATH_COMPONENT = 0; + + /** + * The feature id for the 'Symbol' reference. + * + * + * @generated + * @ordered + */ + int PATH_COMPONENT__SYMBOL = 0; + + /** + * The feature id for the 'Inverse' attribute. + * + * + * @generated + * @ordered + */ + int PATH_COMPONENT__INVERSE = 1; + + /** + * The feature id for the 'Transitive Closure' attribute. + * + * + * @generated + * @ordered + */ + int PATH_COMPONENT__TRANSITIVE_CLOSURE = 2; + + /** + * The feature id for the 'Reflexive Transitive Closure' attribute. + * + * + * @generated + * @ordered + */ + int PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE = 3; + + /** + * The number of structural features of the 'Path Component' class. + * + * + * @generated + * @ordered + */ + int PATH_COMPONENT_FEATURE_COUNT = 4; + + /** + * The number of operations of the 'Path Component' class. + * + * + * @generated + * @ordered + */ + int PATH_COMPONENT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl Symbol}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSymbol() + * @generated + */ + int SYMBOL = 1; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int SYMBOL__NAME = 0; + + /** + * The number of structural features of the 'Symbol' class. + * + * + * @generated + * @ordered + */ + int SYMBOL_FEATURE_COUNT = 1; + + /** + * The number of operations of the 'Symbol' class. + * + * + * @generated + * @ordered + */ + int SYMBOL_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl Statement}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStatement() + * @generated + */ + int STATEMENT = 44; + + /** + * The number of structural features of the 'Statement' class. + * + * + * @generated + * @ordered + */ + int STATEMENT_FEATURE_COUNT = 0; + + /** + * The number of operations of the 'Statement' class. + * + * + * @generated + * @ordered + */ + int STATEMENT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpression() + * @generated + */ + int EXPRESSION = 4; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int EXPRESSION__EXISTS_VARIABLES = STATEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Expression' class. + * + * + * @generated + * @ordered + */ + int EXPRESSION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Expression' class. + * + * + * @generated + * @ordered + */ + int EXPRESSION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl Call}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCall() + * @generated + */ + int CALL = 2; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int CALL__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Functor' containment reference. + * + * + * @generated + * @ordered + */ + int CALL__FUNCTOR = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Argument List' containment reference. + * + * + * @generated + * @ordered + */ + int CALL__ARGUMENT_LIST = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Call' class. + * + * + * @generated + * @ordered + */ + int CALL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Call' class. + * + * + * @generated + * @ordered + */ + int CALL_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl Reference}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getReference() + * @generated + */ + int REFERENCE = 3; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int REFERENCE__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Components' containment reference list. + * + * + * @generated + * @ordered + */ + int REFERENCE__COMPONENTS = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Reference' class. + * + * + * @generated + * @ordered + */ + int REFERENCE_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Reference' class. + * + * + * @generated + * @ordered + */ + int REFERENCE_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgument() + * @generated + */ + int ARGUMENT = 5; + + /** + * The number of structural features of the 'Argument' class. + * + * + * @generated + * @ordered + */ + int ARGUMENT_FEATURE_COUNT = 0; + + /** + * The number of operations of the 'Argument' class. + * + * + * @generated + * @ordered + */ + int ARGUMENT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl Argument List}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgumentList() + * @generated + */ + int ARGUMENT_LIST = 6; + + /** + * The feature id for the 'Arguments' containment reference list. + * + * + * @generated + * @ordered + */ + int ARGUMENT_LIST__ARGUMENTS = 0; + + /** + * The number of structural features of the 'Argument List' class. + * + * + * @generated + * @ordered + */ + int ARGUMENT_LIST_FEATURE_COUNT = 1; + + /** + * The number of operations of the 'Argument List' class. + * + * + * @generated + * @ordered + */ + int ARGUMENT_LIST_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl Expression Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpressionArgument() + * @generated + */ + int EXPRESSION_ARGUMENT = 7; + + /** + * The feature id for the 'Expression' containment reference. + * + * + * @generated + * @ordered + */ + int EXPRESSION_ARGUMENT__EXPRESSION = ARGUMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Expression Argument' class. + * + * + * @generated + * @ordered + */ + int EXPRESSION_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Expression Argument' class. + * + * + * @generated + * @ordered + */ + int EXPRESSION_ARGUMENT_OPERATION_COUNT = ARGUMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl Star Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStarArgument() + * @generated + */ + int STAR_ARGUMENT = 8; + + /** + * The number of structural features of the 'Star Argument' class. + * + * + * @generated + * @ordered + */ + int STAR_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Star Argument' class. + * + * + * @generated + * @ordered + */ + int STAR_ARGUMENT_OPERATION_COUNT = ARGUMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl Typed Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedArgument() + * @generated + */ + int TYPED_ARGUMENT = 9; + + /** + * The feature id for the 'Type Reference' containment reference. + * + * + * @generated + * @ordered + */ + int TYPED_ARGUMENT__TYPE_REFERENCE = ARGUMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Typed Argument' class. + * + * + * @generated + * @ordered + */ + int TYPED_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Typed Argument' class. + * + * + * @generated + * @ordered + */ + int TYPED_ARGUMENT_OPERATION_COUNT = ARGUMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl Multiary Expession}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiaryExpession() + * @generated + */ + int MULTIARY_EXPESSION = 10; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int MULTIARY_EXPESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int MULTIARY_EXPESSION__CHILDREN = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Multiary Expession' class. + * + * + * @generated + * @ordered + */ + int MULTIARY_EXPESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Multiary Expession' class. + * + * + * @generated + * @ordered + */ + int MULTIARY_EXPESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl Variable}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getVariable() + * @generated + */ + int VARIABLE = 11; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int VARIABLE__NAME = SYMBOL__NAME; + + /** + * The feature id for the 'Type Reference' containment reference. + * + * + * @generated + * @ordered + */ + int VARIABLE__TYPE_REFERENCE = SYMBOL_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Variable' class. + * + * + * @generated + * @ordered + */ + int VARIABLE_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Variable' class. + * + * + * @generated + * @ordered + */ + int VARIABLE_OPERATION_COUNT = SYMBOL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl Unary Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryExpression() + * @generated + */ + int UNARY_EXPRESSION = 12; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int UNARY_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int UNARY_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Op' attribute. + * + * + * @generated + * @ordered + */ + int UNARY_EXPRESSION__OP = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Unary Expression' class. + * + * + * @generated + * @ordered + */ + int UNARY_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Unary Expression' class. + * + * + * @generated + * @ordered + */ + int UNARY_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl Binary Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryExpression() + * @generated + */ + int BINARY_EXPRESSION = 13; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int BINARY_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Op' attribute. + * + * + * @generated + * @ordered + */ + int BINARY_EXPRESSION__OP = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Left' containment reference. + * + * + * @generated + * @ordered + */ + int BINARY_EXPRESSION__LEFT = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Right' containment reference. + * + * + * @generated + * @ordered + */ + int BINARY_EXPRESSION__RIGHT = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of structural features of the 'Binary Expression' class. + * + * + * @generated + * @ordered + */ + int BINARY_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3; + + /** + * The number of operations of the 'Binary Expression' class. + * + * + * @generated + * @ordered + */ + int BINARY_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl Disjunction}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDisjunction() + * @generated + */ + int DISJUNCTION = 14; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int DISJUNCTION__EXISTS_VARIABLES = MULTIARY_EXPESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int DISJUNCTION__CHILDREN = MULTIARY_EXPESSION__CHILDREN; + + /** + * The number of structural features of the 'Disjunction' class. + * + * + * @generated + * @ordered + */ + int DISJUNCTION_FEATURE_COUNT = MULTIARY_EXPESSION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Disjunction' class. + * + * + * @generated + * @ordered + */ + int DISJUNCTION_OPERATION_COUNT = MULTIARY_EXPESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl Conjunction}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConjunction() + * @generated + */ + int CONJUNCTION = 15; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int CONJUNCTION__EXISTS_VARIABLES = MULTIARY_EXPESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int CONJUNCTION__CHILDREN = MULTIARY_EXPESSION__CHILDREN; + + /** + * The number of structural features of the 'Conjunction' class. + * + * + * @generated + * @ordered + */ + int CONJUNCTION_FEATURE_COUNT = MULTIARY_EXPESSION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Conjunction' class. + * + * + * @generated + * @ordered + */ + int CONJUNCTION_OPERATION_COUNT = MULTIARY_EXPESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl Conditional Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConditionalExpression() + * @generated + */ + int CONDITIONAL_EXPRESSION = 16; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int CONDITIONAL_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Condition' containment reference. + * + * + * @generated + * @ordered + */ + int CONDITIONAL_EXPRESSION__CONDITION = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Then' containment reference. + * + * + * @generated + * @ordered + */ + int CONDITIONAL_EXPRESSION__THEN = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Else' containment reference. + * + * + * @generated + * @ordered + */ + int CONDITIONAL_EXPRESSION__ELSE = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of structural features of the 'Conditional Expression' class. + * + * + * @generated + * @ordered + */ + int CONDITIONAL_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3; + + /** + * The number of operations of the 'Conditional Expression' class. + * + * + * @generated + * @ordered + */ + int CONDITIONAL_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl Switch}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSwitch() + * @generated + */ + int SWITCH = 17; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int SWITCH__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Cases' containment reference list. + * + * + * @generated + * @ordered + */ + int SWITCH__CASES = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Switch' class. + * + * + * @generated + * @ordered + */ + int SWITCH_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Switch' class. + * + * + * @generated + * @ordered + */ + int SWITCH_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl Case}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCase() + * @generated + */ + int CASE = 18; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int CASE__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Condition' containment reference. + * + * + * @generated + * @ordered + */ + int CASE__CONDITION = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int CASE__BODY = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Case' class. + * + * + * @generated + * @ordered + */ + int CASE_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Case' class. + * + * + * @generated + * @ordered + */ + int CASE_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl Let Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetExpression() + * @generated + */ + int LET_EXPRESSION = 19; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int LET_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Bindings' containment reference list. + * + * + * @generated + * @ordered + */ + int LET_EXPRESSION__BINDINGS = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int LET_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Let Expression' class. + * + * + * @generated + * @ordered + */ + int LET_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Let Expression' class. + * + * + * @generated + * @ordered + */ + int LET_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl Let Binding}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetBinding() + * @generated + */ + int LET_BINDING = 20; + + /** + * The feature id for the 'Value' containment reference. + * + * + * @generated + * @ordered + */ + int LET_BINDING__VALUE = 0; + + /** + * The feature id for the 'Variable' containment reference. + * + * + * @generated + * @ordered + */ + int LET_BINDING__VARIABLE = 1; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int LET_BINDING__NAME = 2; + + /** + * The feature id for the 'Type' reference. + * + * + * @generated + * @ordered + */ + int LET_BINDING__TYPE = 3; + + /** + * The number of structural features of the 'Let Binding' class. + * + * + * @generated + * @ordered + */ + int LET_BINDING_FEATURE_COUNT = 4; + + /** + * The number of operations of the 'Let Binding' class. + * + * + * @generated + * @ordered + */ + int LET_BINDING_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLiteral() + * @generated + */ + int LITERAL = 21; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int LITERAL__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The number of structural features of the 'Literal' class. + * + * + * @generated + * @ordered + */ + int LITERAL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Literal' class. + * + * + * @generated + * @ordered + */ + int LITERAL_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl Int Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIntLiteral() + * @generated + */ + int INT_LITERAL = 22; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int INT_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES; + + /** + * The feature id for the 'Value' attribute. + * + * + * @generated + * @ordered + */ + int INT_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Int Literal' class. + * + * + * @generated + * @ordered + */ + int INT_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Int Literal' class. + * + * + * @generated + * @ordered + */ + int INT_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl Real Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRealLiteral() + * @generated + */ + int REAL_LITERAL = 23; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int REAL_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES; + + /** + * The feature id for the 'Value' attribute. + * + * + * @generated + * @ordered + */ + int REAL_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Real Literal' class. + * + * + * @generated + * @ordered + */ + int REAL_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Real Literal' class. + * + * + * @generated + * @ordered + */ + int REAL_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl String Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringLiteral() + * @generated + */ + int STRING_LITERAL = 24; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int STRING_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES; + + /** + * The feature id for the 'Value' attribute. + * + * + * @generated + * @ordered + */ + int STRING_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'String Literal' class. + * + * + * @generated + * @ordered + */ + int STRING_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'String Literal' class. + * + * + * @generated + * @ordered + */ + int STRING_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl Logic Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicLiteral() + * @generated + */ + int LOGIC_LITERAL = 25; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int LOGIC_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES; + + /** + * The feature id for the 'Value' attribute. + * + * + * @generated + * @ordered + */ + int LOGIC_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Logic Literal' class. + * + * + * @generated + * @ordered + */ + int LOGIC_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Logic Literal' class. + * + * + * @generated + * @ordered + */ + int LOGIC_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyLiteralImpl Empty Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEmptyLiteral() + * @generated + */ + int EMPTY_LITERAL = 26; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int EMPTY_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES; + + /** + * The number of structural features of the 'Empty Literal' class. + * + * + * @generated + * @ordered + */ + int EMPTY_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Empty Literal' class. + * + * + * @generated + * @ordered + */ + int EMPTY_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl Cast Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCastExpression() + * @generated + */ + int CAST_EXPRESSION = 27; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int CAST_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int CAST_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Target Type' reference. + * + * + * @generated + * @ordered + */ + int CAST_EXPRESSION__TARGET_TYPE = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Cast Expression' class. + * + * + * @generated + * @ordered + */ + int CAST_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Cast Expression' class. + * + * + * @generated + * @ordered + */ + int CAST_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl Aggregate Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregateExpression() + * @generated + */ + int AGGREGATE_EXPRESSION = 28; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int AGGREGATE_EXPRESSION__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Forall Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int AGGREGATE_EXPRESSION__FORALL_VARIABLES = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Condition' containment reference. + * + * + * @generated + * @ordered + */ + int AGGREGATE_EXPRESSION__CONDITION = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Aggregate Expression' class. + * + * + * @generated + * @ordered + */ + int AGGREGATE_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Aggregate Expression' class. + * + * + * @generated + * @ordered + */ + int AGGREGATE_EXPRESSION_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CountImpl Count}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CountImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCount() + * @generated + */ + int COUNT = 29; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int COUNT__EXISTS_VARIABLES = AGGREGATE_EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Forall Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int COUNT__FORALL_VARIABLES = AGGREGATE_EXPRESSION__FORALL_VARIABLES; + + /** + * The feature id for the 'Condition' containment reference. + * + * + * @generated + * @ordered + */ + int COUNT__CONDITION = AGGREGATE_EXPRESSION__CONDITION; + + /** + * The number of structural features of the 'Count' class. + * + * + * @generated + * @ordered + */ + int COUNT_FEATURE_COUNT = AGGREGATE_EXPRESSION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Count' class. + * + * + * @generated + * @ordered + */ + int COUNT_OPERATION_COUNT = AGGREGATE_EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl Aggregation}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregation() + * @generated + */ + int AGGREGATION = 30; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int AGGREGATION__EXISTS_VARIABLES = AGGREGATE_EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Forall Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int AGGREGATION__FORALL_VARIABLES = AGGREGATE_EXPRESSION__FORALL_VARIABLES; + + /** + * The feature id for the 'Condition' containment reference. + * + * + * @generated + * @ordered + */ + int AGGREGATION__CONDITION = AGGREGATE_EXPRESSION__CONDITION; + + /** + * The feature id for the 'Value' containment reference. + * + * + * @generated + * @ordered + */ + int AGGREGATION__VALUE = AGGREGATE_EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Op' reference. + * + * + * @generated + * @ordered + */ + int AGGREGATION__OP = AGGREGATE_EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Aggregation' class. + * + * + * @generated + * @ordered + */ + int AGGREGATION_FEATURE_COUNT = AGGREGATE_EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Aggregation' class. + * + * + * @generated + * @ordered + */ + int AGGREGATION_OPERATION_COUNT = AGGREGATE_EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl Forall}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getForall() + * @generated + */ + int FORALL = 31; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int FORALL__EXISTS_VARIABLES = AGGREGATE_EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Forall Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int FORALL__FORALL_VARIABLES = AGGREGATE_EXPRESSION__FORALL_VARIABLES; + + /** + * The feature id for the 'Condition' containment reference. + * + * + * @generated + * @ordered + */ + int FORALL__CONDITION = AGGREGATE_EXPRESSION__CONDITION; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int FORALL__BODY = AGGREGATE_EXPRESSION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Forall' class. + * + * + * @generated + * @ordered + */ + int FORALL_FEATURE_COUNT = AGGREGATE_EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Forall' class. + * + * + * @generated + * @ordered + */ + int FORALL_OPERATION_COUNT = AGGREGATE_EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl Type Reference}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypeReference() + * @generated + */ + int TYPE_REFERENCE = 32; + + /** + * The feature id for the 'Force Object Type' attribute. + * + * + * @generated + * @ordered + */ + int TYPE_REFERENCE__FORCE_OBJECT_TYPE = 0; + + /** + * The feature id for the 'Type' reference. + * + * + * @generated + * @ordered + */ + int TYPE_REFERENCE__TYPE = 1; + + /** + * The number of structural features of the 'Type Reference' class. + * + * + * @generated + * @ordered + */ + int TYPE_REFERENCE_FEATURE_COUNT = 2; + + /** + * The number of operations of the 'Type Reference' class. + * + * + * @generated + * @ordered + */ + int TYPE_REFERENCE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl Infinity Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInfinityLiteral() + * @generated + */ + int INFINITY_LITERAL = 33; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int INFINITY_LITERAL__EXISTS_VARIABLES = LITERAL__EXISTS_VARIABLES; + + /** + * The number of structural features of the 'Infinity Literal' class. + * + * + * @generated + * @ordered + */ + int INFINITY_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Infinity Literal' class. + * + * + * @generated + * @ordered + */ + int INFINITY_LITERAL_OPERATION_COUNT = LITERAL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl Interval}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterval() + * @generated + */ + int INTERVAL = 34; + + /** + * The feature id for the 'Exists Variables' containment reference list. + * + * + * @generated + * @ordered + */ + int INTERVAL__EXISTS_VARIABLES = EXPRESSION__EXISTS_VARIABLES; + + /** + * The feature id for the 'Lower Bound' containment reference. + * + * + * @generated + * @ordered + */ + int INTERVAL__LOWER_BOUND = EXPRESSION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Upper Bound' containment reference. + * + * + * @generated + * @ordered + */ + int INTERVAL__UPPER_BOUND = EXPRESSION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Interval' class. + * + * + * @generated + * @ordered + */ + int INTERVAL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Interval' class. + * + * + * @generated + * @ordered + */ + int INTERVAL_OPERATION_COUNT = EXPRESSION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl Functor}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctor() + * @generated + */ + int FUNCTOR = 35; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int FUNCTOR__NAME = SYMBOL__NAME; + + /** + * The feature id for the 'Parameters' containment reference list. + * + * + * @generated + * @ordered + */ + int FUNCTOR__PARAMETERS = SYMBOL_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Functor' class. + * + * + * @generated + * @ordered + */ + int FUNCTOR_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Functor' class. + * + * + * @generated + * @ordered + */ + int FUNCTOR_OPERATION_COUNT = SYMBOL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RelationImpl Relation}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RelationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRelation() + * @generated + */ + int RELATION = 36; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int RELATION__NAME = FUNCTOR__NAME; + + /** + * The feature id for the 'Parameters' containment reference list. + * + * + * @generated + * @ordered + */ + int RELATION__PARAMETERS = FUNCTOR__PARAMETERS; + + /** + * The number of structural features of the 'Relation' class. + * + * + * @generated + * @ordered + */ + int RELATION_FEATURE_COUNT = FUNCTOR_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Relation' class. + * + * + * @generated + * @ordered + */ + int RELATION_OPERATION_COUNT = FUNCTOR_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BaseRelationImpl Base Relation}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BaseRelationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBaseRelation() + * @generated + */ + int BASE_RELATION = 37; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int BASE_RELATION__NAME = RELATION__NAME; + + /** + * The feature id for the 'Parameters' containment reference list. + * + * + * @generated + * @ordered + */ + int BASE_RELATION__PARAMETERS = RELATION__PARAMETERS; + + /** + * The number of structural features of the 'Base Relation' class. + * + * + * @generated + * @ordered + */ + int BASE_RELATION_FEATURE_COUNT = RELATION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Base Relation' class. + * + * + * @generated + * @ordered + */ + int BASE_RELATION_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl Predicate}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicate() + * @generated + */ + int PREDICATE = 38; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int PREDICATE__NAME = RELATION__NAME; + + /** + * The feature id for the 'Parameters' containment reference list. + * + * + * @generated + * @ordered + */ + int PREDICATE__PARAMETERS = RELATION__PARAMETERS; + + /** + * The number of structural features of the 'Predicate' class. + * + * + * @generated + * @ordered + */ + int PREDICATE_FEATURE_COUNT = RELATION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Predicate' class. + * + * + * @generated + * @ordered + */ + int PREDICATE_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DatatypeImpl Datatype}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DatatypeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDatatype() + * @generated + */ + int DATATYPE = 39; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int DATATYPE__NAME = RELATION__NAME; + + /** + * The feature id for the 'Parameters' containment reference list. + * + * + * @generated + * @ordered + */ + int DATATYPE__PARAMETERS = RELATION__PARAMETERS; + + /** + * The number of structural features of the 'Datatype' class. + * + * + * @generated + * @ordered + */ + int DATATYPE_FEATURE_COUNT = RELATION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Datatype' class. + * + * + * @generated + * @ordered + */ + int DATATYPE_OPERATION_COUNT = RELATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl Function}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunction() + * @generated + */ + int FUNCTION = 40; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int FUNCTION__NAME = FUNCTOR__NAME; + + /** + * The feature id for the 'Parameters' containment reference list. + * + * + * @generated + * @ordered + */ + int FUNCTION__PARAMETERS = FUNCTOR__PARAMETERS; + + /** + * The feature id for the 'Result Type' reference. + * + * + * @generated + * @ordered + */ + int FUNCTION__RESULT_TYPE = FUNCTOR_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Function' class. + * + * + * @generated + * @ordered + */ + int FUNCTION_FEATURE_COUNT = FUNCTOR_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Function' class. + * + * + * @generated + * @ordered + */ + int FUNCTION_OPERATION_COUNT = FUNCTOR_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl Metric}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMetric() + * @generated + */ + int METRIC = 41; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int METRIC__NAME = FUNCTION__NAME; + + /** + * The feature id for the 'Parameters' containment reference list. + * + * + * @generated + * @ordered + */ + int METRIC__PARAMETERS = FUNCTION__PARAMETERS; + + /** + * The feature id for the 'Result Type' reference. + * + * + * @generated + * @ordered + */ + int METRIC__RESULT_TYPE = FUNCTION__RESULT_TYPE; + + /** + * The number of structural features of the 'Metric' class. + * + * + * @generated + * @ordered + */ + int METRIC_FEATURE_COUNT = FUNCTION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Metric' class. + * + * + * @generated + * @ordered + */ + int METRIC_OPERATION_COUNT = FUNCTION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.OperatorImpl Operator}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.OperatorImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getOperator() + * @generated + */ + int OPERATOR = 42; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int OPERATOR__NAME = FUNCTION__NAME; + + /** + * The feature id for the 'Parameters' containment reference list. + * + * + * @generated + * @ordered + */ + int OPERATOR__PARAMETERS = FUNCTION__PARAMETERS; + + /** + * The feature id for the 'Result Type' reference. + * + * + * @generated + * @ordered + */ + int OPERATOR__RESULT_TYPE = FUNCTION__RESULT_TYPE; + + /** + * The number of structural features of the 'Operator' class. + * + * + * @generated + * @ordered + */ + int OPERATOR_FEATURE_COUNT = FUNCTION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Operator' class. + * + * + * @generated + * @ordered + */ + int OPERATOR_OPERATION_COUNT = FUNCTION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl Node}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNode() + * @generated + */ + int NODE = 43; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int NODE__NAME = SYMBOL__NAME; + + /** + * The feature id for the 'Named' attribute. + * + * + * @generated + * @ordered + */ + int NODE__NAMED = SYMBOL_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Node' class. + * + * + * @generated + * @ordered + */ + int NODE_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Node' class. + * + * + * @generated + * @ordered + */ + int NODE_OPERATION_COUNT = SYMBOL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl Abstract Assertion}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAbstractAssertion() + * @generated + */ + int ABSTRACT_ASSERTION = 45; + + /** + * The feature id for the 'Expression' containment reference. + * + * + * @generated + * @ordered + */ + int ABSTRACT_ASSERTION__EXPRESSION = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Range' containment reference. + * + * + * @generated + * @ordered + */ + int ABSTRACT_ASSERTION__RANGE = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Abstract Assertion' class. + * + * + * @generated + * @ordered + */ + int ABSTRACT_ASSERTION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Abstract Assertion' class. + * + * + * @generated + * @ordered + */ + int ABSTRACT_ASSERTION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl Functor Definiton}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctorDefiniton() + * @generated + */ + int FUNCTOR_DEFINITON = 46; + + /** + * The feature id for the 'Head' containment reference. + * + * + * @generated + * @ordered + */ + int FUNCTOR_DEFINITON__HEAD = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int FUNCTOR_DEFINITON__BODY = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Functor Definiton' class. + * + * + * @generated + * @ordered + */ + int FUNCTOR_DEFINITON_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Functor Definiton' class. + * + * + * @generated + * @ordered + */ + int FUNCTOR_DEFINITON_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl Predicate Definition}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicateDefinition() + * @generated + */ + int PREDICATE_DEFINITION = 47; + + /** + * The feature id for the 'Head' containment reference. + * + * + * @generated + * @ordered + */ + int PREDICATE_DEFINITION__HEAD = FUNCTOR_DEFINITON__HEAD; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int PREDICATE_DEFINITION__BODY = FUNCTOR_DEFINITON__BODY; + + /** + * The feature id for the 'Error' attribute. + * + * + * @generated + * @ordered + */ + int PREDICATE_DEFINITION__ERROR = FUNCTOR_DEFINITON_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Functional' attribute. + * + * + * @generated + * @ordered + */ + int PREDICATE_DEFINITION__FUNCTIONAL = FUNCTOR_DEFINITON_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Predicate Definition' class. + * + * + * @generated + * @ordered + */ + int PREDICATE_DEFINITION_FEATURE_COUNT = FUNCTOR_DEFINITON_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Predicate Definition' class. + * + * + * @generated + * @ordered + */ + int PREDICATE_DEFINITION_OPERATION_COUNT = FUNCTOR_DEFINITON_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl Function Definition}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctionDefinition() + * @generated + */ + int FUNCTION_DEFINITION = 48; + + /** + * The feature id for the 'Head' containment reference. + * + * + * @generated + * @ordered + */ + int FUNCTION_DEFINITION__HEAD = FUNCTOR_DEFINITON__HEAD; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int FUNCTION_DEFINITION__BODY = FUNCTOR_DEFINITON__BODY; + + /** + * The feature id for the 'Result Type' reference. + * + * + * @generated + * @ordered + */ + int FUNCTION_DEFINITION__RESULT_TYPE = FUNCTOR_DEFINITON_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Function Definition' class. + * + * + * @generated + * @ordered + */ + int FUNCTION_DEFINITION_FEATURE_COUNT = FUNCTOR_DEFINITON_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Function Definition' class. + * + * + * @generated + * @ordered + */ + int FUNCTION_DEFINITION_OPERATION_COUNT = FUNCTOR_DEFINITON_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl Attribute}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAttribute() + * @generated + */ + int ATTRIBUTE = 49; + + /** + * The feature id for the 'Target' reference. + * + * + * @generated + * @ordered + */ + int ATTRIBUTE__TARGET = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Kind' attribute. + * + * + * @generated + * @ordered + */ + int ATTRIBUTE__KIND = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Attribute' class. + * + * + * @generated + * @ordered + */ + int ATTRIBUTE_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Attribute' class. + * + * + * @generated + * @ordered + */ + int ATTRIBUTE_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl Extern Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDeclaration() + * @generated + */ + int EXTERN_DECLARATION = 50; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int EXTERN_DECLARATION__NAME = STATEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Extern Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Extern Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl Extern Functor Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternFunctorDeclaration() + * @generated + */ + int EXTERN_FUNCTOR_DECLARATION = 51; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTOR_DECLARATION__NAME = EXTERN_DECLARATION__NAME; + + /** + * The feature id for the 'Argument List' containment reference. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST = EXTERN_DECLARATION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Extern Functor Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT = EXTERN_DECLARATION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Extern Functor Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTOR_DECLARATION_OPERATION_COUNT = EXTERN_DECLARATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl Extern Predicate Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternPredicateDeclaration() + * @generated + */ + int EXTERN_PREDICATE_DECLARATION = 52; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int EXTERN_PREDICATE_DECLARATION__NAME = EXTERN_FUNCTOR_DECLARATION__NAME; + + /** + * The feature id for the 'Argument List' containment reference. + * + * + * @generated + * @ordered + */ + int EXTERN_PREDICATE_DECLARATION__ARGUMENT_LIST = EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST; + + /** + * The feature id for the 'Error' attribute. + * + * + * @generated + * @ordered + */ + int EXTERN_PREDICATE_DECLARATION__ERROR = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Functional' attribute. + * + * + * @generated + * @ordered + */ + int EXTERN_PREDICATE_DECLARATION__FUNCTIONAL = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Extern Predicate Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_PREDICATE_DECLARATION_FEATURE_COUNT = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Extern Predicate Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_PREDICATE_DECLARATION_OPERATION_COUNT = EXTERN_FUNCTOR_DECLARATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl Extern Function Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternFunctionDeclaration() + * @generated + */ + int EXTERN_FUNCTION_DECLARATION = 53; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTION_DECLARATION__NAME = EXTERN_FUNCTOR_DECLARATION__NAME; + + /** + * The feature id for the 'Argument List' containment reference. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTION_DECLARATION__ARGUMENT_LIST = EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST; + + /** + * The feature id for the 'Result Type' reference. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTION_DECLARATION__RESULT_TYPE = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Extern Function Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTION_DECLARATION_FEATURE_COUNT = EXTERN_FUNCTOR_DECLARATION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Extern Function Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_FUNCTION_DECLARATION_OPERATION_COUNT = EXTERN_FUNCTOR_DECLARATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl Extern Aggregation Operator Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternAggregationOperatorDeclaration() + * @generated + */ + int EXTERN_AGGREGATION_OPERATOR_DECLARATION = 54; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int EXTERN_AGGREGATION_OPERATOR_DECLARATION__NAME = EXTERN_DECLARATION__NAME; + + /** + * The feature id for the 'Argument Type' reference. + * + * + * @generated + * @ordered + */ + int EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE = EXTERN_DECLARATION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Result Type' reference. + * + * + * @generated + * @ordered + */ + int EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE = EXTERN_DECLARATION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Extern Aggregation Operator Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_AGGREGATION_OPERATOR_DECLARATION_FEATURE_COUNT = EXTERN_DECLARATION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Extern Aggregation Operator Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_AGGREGATION_OPERATOR_DECLARATION_OPERATION_COUNT = EXTERN_DECLARATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDeclarationImpl Extern Datatype Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDatatypeDeclaration() + * @generated + */ + int EXTERN_DATATYPE_DECLARATION = 55; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int EXTERN_DATATYPE_DECLARATION__NAME = EXTERN_DECLARATION__NAME; + + /** + * The number of structural features of the 'Extern Datatype Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_DATATYPE_DECLARATION_FEATURE_COUNT = EXTERN_DECLARATION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Extern Datatype Declaration' class. + * + * + * @generated + * @ordered + */ + int EXTERN_DATATYPE_DECLARATION_OPERATION_COUNT = EXTERN_DECLARATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl Class Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClassDeclaration() + * @generated + */ + int CLASS_DECLARATION = 56; + + /** + * The feature id for the 'Fields' containment reference list. + * + * + * @generated + * @ordered + */ + int CLASS_DECLARATION__FIELDS = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int CLASS_DECLARATION__NAME = STATEMENT_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Abstract' attribute. + * + * + * @generated + * @ordered + */ + int CLASS_DECLARATION__ABSTRACT = STATEMENT_FEATURE_COUNT + 2; + + /** + * The feature id for the 'Supertypes' reference list. + * + * + * @generated + * @ordered + */ + int CLASS_DECLARATION__SUPERTYPES = STATEMENT_FEATURE_COUNT + 3; + + /** + * The feature id for the 'Root' attribute. + * + * + * @generated + * @ordered + */ + int CLASS_DECLARATION__ROOT = STATEMENT_FEATURE_COUNT + 4; + + /** + * The number of structural features of the 'Class Declaration' class. + * + * + * @generated + * @ordered + */ + int CLASS_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 5; + + /** + * The number of operations of the 'Class Declaration' class. + * + * + * @generated + * @ordered + */ + int CLASS_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl Enum Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumDeclaration() + * @generated + */ + int ENUM_DECLARATION = 57; + + /** + * The feature id for the 'Literals' containment reference list. + * + * + * @generated + * @ordered + */ + int ENUM_DECLARATION__LITERALS = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ENUM_DECLARATION__NAME = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Enum Declaration' class. + * + * + * @generated + * @ordered + */ + int ENUM_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Enum Declaration' class. + * + * + * @generated + * @ordered + */ + int ENUM_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl Enum Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumLiteral() + * @generated + */ + int ENUM_LITERAL = 58; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int ENUM_LITERAL__NAME = 0; + + /** + * The number of structural features of the 'Enum Literal' class. + * + * + * @generated + * @ordered + */ + int ENUM_LITERAL_FEATURE_COUNT = 1; + + /** + * The number of operations of the 'Enum Literal' class. + * + * + * @generated + * @ordered + */ + int ENUM_LITERAL_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl Field}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getField() + * @generated + */ + int FIELD = 59; + + /** + * The feature id for the 'Containment' attribute. + * + * + * @generated + * @ordered + */ + int FIELD__CONTAINMENT = 0; + + /** + * The feature id for the 'Cross Reference' attribute. + * + * + * @generated + * @ordered + */ + int FIELD__CROSS_REFERENCE = 1; + + /** + * The feature id for the 'Opposite' reference. + * + * + * @generated + * @ordered + */ + int FIELD__OPPOSITE = 2; + + /** + * The feature id for the 'Multiplicity' containment reference. + * + * + * @generated + * @ordered + */ + int FIELD__MULTIPLICITY = 3; + + /** + * The feature id for the 'Type' reference. + * + * + * @generated + * @ordered + */ + int FIELD__TYPE = 4; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int FIELD__NAME = 5; + + /** + * The number of structural features of the 'Field' class. + * + * + * @generated + * @ordered + */ + int FIELD_FEATURE_COUNT = 6; + + /** + * The number of operations of the 'Field' class. + * + * + * @generated + * @ordered + */ + int FIELD_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl Multiplicity}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiplicity() + * @generated + */ + int MULTIPLICITY = 60; + + /** + * The number of structural features of the 'Multiplicity' class. + * + * + * @generated + * @ordered + */ + int MULTIPLICITY_FEATURE_COUNT = 0; + + /** + * The number of operations of the 'Multiplicity' class. + * + * + * @generated + * @ordered + */ + int MULTIPLICITY_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultAssertionImpl Default Assertion}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultAssertionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDefaultAssertion() + * @generated + */ + int DEFAULT_ASSERTION = 61; + + /** + * The feature id for the 'Expression' containment reference. + * + * + * @generated + * @ordered + */ + int DEFAULT_ASSERTION__EXPRESSION = ABSTRACT_ASSERTION__EXPRESSION; + + /** + * The feature id for the 'Range' containment reference. + * + * + * @generated + * @ordered + */ + int DEFAULT_ASSERTION__RANGE = ABSTRACT_ASSERTION__RANGE; + + /** + * The number of structural features of the 'Default Assertion' class. + * + * + * @generated + * @ordered + */ + int DEFAULT_ASSERTION_FEATURE_COUNT = ABSTRACT_ASSERTION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Default Assertion' class. + * + * + * @generated + * @ordered + */ + int DEFAULT_ASSERTION_OPERATION_COUNT = ABSTRACT_ASSERTION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AssertionImpl Assertion}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AssertionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAssertion() + * @generated + */ + int ASSERTION = 62; + + /** + * The feature id for the 'Expression' containment reference. + * + * + * @generated + * @ordered + */ + int ASSERTION__EXPRESSION = ABSTRACT_ASSERTION__EXPRESSION; + + /** + * The feature id for the 'Range' containment reference. + * + * + * @generated + * @ordered + */ + int ASSERTION__RANGE = ABSTRACT_ASSERTION__RANGE; + + /** + * The number of structural features of the 'Assertion' class. + * + * + * @generated + * @ordered + */ + int ASSERTION_FEATURE_COUNT = ABSTRACT_ASSERTION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Assertion' class. + * + * + * @generated + * @ordered + */ + int ASSERTION_OPERATION_COUNT = ABSTRACT_ASSERTION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnboundedMultiplicityImpl Unbounded Multiplicity}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnboundedMultiplicityImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnboundedMultiplicity() + * @generated + */ + int UNBOUNDED_MULTIPLICITY = 63; + + /** + * The number of structural features of the 'Unbounded Multiplicity' class. + * + * + * @generated + * @ordered + */ + int UNBOUNDED_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Unbounded Multiplicity' class. + * + * + * @generated + * @ordered + */ + int UNBOUNDED_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl Exact Multiplicity}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactMultiplicity() + * @generated + */ + int EXACT_MULTIPLICITY = 64; + + /** + * The feature id for the 'Value' attribute. + * + * + * @generated + * @ordered + */ + int EXACT_MULTIPLICITY__VALUE = MULTIPLICITY_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Exact Multiplicity' class. + * + * + * @generated + * @ordered + */ + int EXACT_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Exact Multiplicity' class. + * + * + * @generated + * @ordered + */ + int EXACT_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl Bounded Multiplicity}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedMultiplicity() + * @generated + */ + int BOUNDED_MULTIPLICITY = 65; + + /** + * The feature id for the 'Lower Bound' attribute. + * + * + * @generated + * @ordered + */ + int BOUNDED_MULTIPLICITY__LOWER_BOUND = MULTIPLICITY_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Upper Bound' attribute. + * + * + * @generated + * @ordered + */ + int BOUNDED_MULTIPLICITY__UPPER_BOUND = MULTIPLICITY_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Bounded Multiplicity' class. + * + * + * @generated + * @ordered + */ + int BOUNDED_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Bounded Multiplicity' class. + * + * + * @generated + * @ordered + */ + int BOUNDED_MULTIPLICITY_OPERATION_COUNT = MULTIPLICITY_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes Inline Predicate Attrributes}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInlinePredicateAttrributes() + * @generated + */ + int INLINE_PREDICATE_ATTRRIBUTES = 66; + + /** + * The feature id for the 'Error' attribute. + * + * + * @generated + * @ordered + */ + int INLINE_PREDICATE_ATTRRIBUTES__ERROR = 0; + + /** + * The feature id for the 'Functional' attribute. + * + * + * @generated + * @ordered + */ + int INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL = 1; + + /** + * The number of structural features of the 'Inline Predicate Attrributes' class. + * + * + * @generated + * @ordered + */ + int INLINE_PREDICATE_ATTRRIBUTES_FEATURE_COUNT = 2; + + /** + * The number of operations of the 'Inline Predicate Attrributes' class. + * + * + * @generated + * @ordered + */ + int INLINE_PREDICATE_ATTRRIBUTES_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl Aggregation Operator}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregationOperator() + * @generated + */ + int AGGREGATION_OPERATOR = 67; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int AGGREGATION_OPERATOR__NAME = SYMBOL__NAME; + + /** + * The feature id for the 'Argument Type' reference. + * + * + * @generated + * @ordered + */ + int AGGREGATION_OPERATOR__ARGUMENT_TYPE = SYMBOL_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Result Type' reference. + * + * + * @generated + * @ordered + */ + int AGGREGATION_OPERATOR__RESULT_TYPE = SYMBOL_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Aggregation Operator' class. + * + * + * @generated + * @ordered + */ + int AGGREGATION_OPERATOR_FEATURE_COUNT = SYMBOL_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Aggregation Operator' class. + * + * + * @generated + * @ordered + */ + int AGGREGATION_OPERATOR_OPERATION_COUNT = SYMBOL_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl Problem}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getProblem() + * @generated + */ + int PROBLEM = 68; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int PROBLEM__NAME = 0; + + /** + * The feature id for the 'Statements' containment reference list. + * + * + * @generated + * @ordered + */ + int PROBLEM__STATEMENTS = 1; + + /** + * The feature id for the 'Symbols' containment reference list. + * + * + * @generated + * @ordered + */ + int PROBLEM__SYMBOLS = 2; + + /** + * The feature id for the 'Imports' containment reference list. + * + * + * @generated + * @ordered + */ + int PROBLEM__IMPORTS = 3; + + /** + * The number of structural features of the 'Problem' class. + * + * + * @generated + * @ordered + */ + int PROBLEM_FEATURE_COUNT = 4; + + /** + * The number of operations of the 'Problem' class. + * + * + * @generated + * @ordered + */ + int PROBLEM_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl Typed Star Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedStarArgument() + * @generated + */ + int TYPED_STAR_ARGUMENT = 69; + + /** + * The feature id for the 'Type Reference' containment reference. + * + * + * @generated + * @ordered + */ + int TYPED_STAR_ARGUMENT__TYPE_REFERENCE = TYPED_ARGUMENT__TYPE_REFERENCE; + + /** + * The number of structural features of the 'Typed Star Argument' class. + * + * + * @generated + * @ordered + */ + int TYPED_STAR_ARGUMENT_FEATURE_COUNT = TYPED_ARGUMENT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Typed Star Argument' class. + * + * + * @generated + * @ordered + */ + int TYPED_STAR_ARGUMENT_OPERATION_COUNT = TYPED_ARGUMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl Typed Variable Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedVariableArgument() + * @generated + */ + int TYPED_VARIABLE_ARGUMENT = 70; + + /** + * The feature id for the 'Type Reference' containment reference. + * + * + * @generated + * @ordered + */ + int TYPED_VARIABLE_ARGUMENT__TYPE_REFERENCE = TYPED_ARGUMENT__TYPE_REFERENCE; + + /** + * The feature id for the 'Name' attribute. + * + * + * @generated + * @ordered + */ + int TYPED_VARIABLE_ARGUMENT__NAME = TYPED_ARGUMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Typed Variable Argument' class. + * + * + * @generated + * @ordered + */ + int TYPED_VARIABLE_ARGUMENT_FEATURE_COUNT = TYPED_ARGUMENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Typed Variable Argument' class. + * + * + * @generated + * @ordered + */ + int TYPED_VARIABLE_ARGUMENT_OPERATION_COUNT = TYPED_ARGUMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl Unnamed Error Predicate Defintion}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnnamedErrorPredicateDefintion() + * @generated + */ + int UNNAMED_ERROR_PREDICATE_DEFINTION = 71; + + /** + * The feature id for the 'Argument List' containment reference. + * + * + * @generated + * @ordered + */ + int UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Body' containment reference. + * + * + * @generated + * @ordered + */ + int UNNAMED_ERROR_PREDICATE_DEFINTION__BODY = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Unnamed Error Predicate Defintion' class. + * + * + * @generated + * @ordered + */ + int UNNAMED_ERROR_PREDICATE_DEFINTION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Unnamed Error Predicate Defintion' class. + * + * + * @generated + * @ordered + */ + int UNNAMED_ERROR_PREDICATE_DEFINTION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl Objective Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveDeclaration() + * @generated + */ + int OBJECTIVE_DECLARATION = 72; + + /** + * The feature id for the 'Kind' attribute. + * + * + * @generated + * @ordered + */ + int OBJECTIVE_DECLARATION__KIND = STATEMENT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Objective' containment reference. + * + * + * @generated + * @ordered + */ + int OBJECTIVE_DECLARATION__OBJECTIVE = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Objective Declaration' class. + * + * + * @generated + * @ordered + */ + int OBJECTIVE_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Objective Declaration' class. + * + * + * @generated + * @ordered + */ + int OBJECTIVE_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl Scope Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getScopeDeclaration() + * @generated + */ + int SCOPE_DECLARATION = 73; + + /** + * The feature id for the 'Type' reference. + * + * + * @generated + * @ordered + */ + int SCOPE_DECLARATION__TYPE = STATEMENT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Scope Declaration' class. + * + * + * @generated + * @ordered + */ + int SCOPE_DECLARATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Scope Declaration' class. + * + * + * @generated + * @ordered + */ + int SCOPE_DECLARATION_OPERATION_COUNT = STATEMENT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl Exact Scope}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactScope() + * @generated + */ + int EXACT_SCOPE = 74; + + /** + * The feature id for the 'Type' reference. + * + * + * @generated + * @ordered + */ + int EXACT_SCOPE__TYPE = SCOPE_DECLARATION__TYPE; + + /** + * The feature id for the 'Size' attribute. + * + * + * @generated + * @ordered + */ + int EXACT_SCOPE__SIZE = SCOPE_DECLARATION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Exact Scope' class. + * + * + * @generated + * @ordered + */ + int EXACT_SCOPE_FEATURE_COUNT = SCOPE_DECLARATION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Exact Scope' class. + * + * + * @generated + * @ordered + */ + int EXACT_SCOPE_OPERATION_COUNT = SCOPE_DECLARATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl Bounded Scope}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedScope() + * @generated + */ + int BOUNDED_SCOPE = 75; + + /** + * The feature id for the 'Type' reference. + * + * + * @generated + * @ordered + */ + int BOUNDED_SCOPE__TYPE = SCOPE_DECLARATION__TYPE; + + /** + * The feature id for the 'Lower Bound' attribute. + * + * + * @generated + * @ordered + */ + int BOUNDED_SCOPE__LOWER_BOUND = SCOPE_DECLARATION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Upper Bound' attribute. + * + * + * @generated + * @ordered + */ + int BOUNDED_SCOPE__UPPER_BOUND = SCOPE_DECLARATION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Bounded Scope' class. + * + * + * @generated + * @ordered + */ + int BOUNDED_SCOPE_FEATURE_COUNT = SCOPE_DECLARATION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Bounded Scope' class. + * + * + * @generated + * @ordered + */ + int BOUNDED_SCOPE_OPERATION_COUNT = SCOPE_DECLARATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl Lower Bounded Scope}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLowerBoundedScope() + * @generated + */ + int LOWER_BOUNDED_SCOPE = 76; + + /** + * The feature id for the 'Type' reference. + * + * + * @generated + * @ordered + */ + int LOWER_BOUNDED_SCOPE__TYPE = SCOPE_DECLARATION__TYPE; + + /** + * The feature id for the 'Lower Bound' attribute. + * + * + * @generated + * @ordered + */ + int LOWER_BOUNDED_SCOPE__LOWER_BOUND = SCOPE_DECLARATION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Lower Bounded Scope' class. + * + * + * @generated + * @ordered + */ + int LOWER_BOUNDED_SCOPE_FEATURE_COUNT = SCOPE_DECLARATION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Lower Bounded Scope' class. + * + * + * @generated + * @ordered + */ + int LOWER_BOUNDED_SCOPE_OPERATION_COUNT = SCOPE_DECLARATION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl Import}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getImport() + * @generated + */ + int IMPORT = 78; + + /** + * The feature id for the 'Alias' attribute. + * + * + * @generated + * @ordered + */ + int IMPORT__ALIAS = 0; + + /** + * The number of structural features of the 'Import' class. + * + * + * @generated + * @ordered + */ + int IMPORT_FEATURE_COUNT = 1; + + /** + * The number of operations of the 'Import' class. + * + * + * @generated + * @ordered + */ + int IMPORT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl Namespace Import}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNamespaceImport() + * @generated + */ + int NAMESPACE_IMPORT = 77; + + /** + * The feature id for the 'Alias' attribute. + * + * + * @generated + * @ordered + */ + int NAMESPACE_IMPORT__ALIAS = IMPORT__ALIAS; + + /** + * The feature id for the 'Imported Namespace' attribute. + * + * + * @generated + * @ordered + */ + int NAMESPACE_IMPORT__IMPORTED_NAMESPACE = IMPORT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Namespace Import' class. + * + * + * @generated + * @ordered + */ + int NAMESPACE_IMPORT_FEATURE_COUNT = IMPORT_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Namespace Import' class. + * + * + * @generated + * @ordered + */ + int NAMESPACE_IMPORT_OPERATION_COUNT = IMPORT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl Uri Import}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUriImport() + * @generated + */ + int URI_IMPORT = 79; + + /** + * The feature id for the 'Alias' attribute. + * + * + * @generated + * @ordered + */ + int URI_IMPORT__ALIAS = IMPORT__ALIAS; + + /** + * The feature id for the 'Uri' attribute. + * + * + * @generated + * @ordered + */ + int URI_IMPORT__URI = IMPORT_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Uri Import' class. + * + * + * @generated + * @ordered + */ + int URI_IMPORT_FEATURE_COUNT = IMPORT_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Uri Import' class. + * + * + * @generated + * @ordered + */ + int URI_IMPORT_OPERATION_COUNT = IMPORT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator Unary Operator}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryOperator() + * @generated + */ + int UNARY_OPERATOR = 80; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator Binary Operator}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryOperator() + * @generated + */ + int BINARY_OPERATOR = 81; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue Logic Value}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicValue() + * @generated + */ + int LOGIC_VALUE = 82; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind Objective Kind}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveKind() + * @generated + */ + int OBJECTIVE_KIND = 83; + + /** + * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.AttributeKind Attribute Kind}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAttributeKind() + * @generated + */ + int ATTRIBUTE_KIND = 84; + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent Path Component}'. + * + * + * @return the meta object for class 'Path Component'. + * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent + * @generated + */ + EClass getPathComponent(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#getSymbol Symbol}'. + * + * + * @return the meta object for the reference 'Symbol'. + * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent#getSymbol() + * @see #getPathComponent() + * @generated + */ + EReference getPathComponent_Symbol(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isInverse Inverse}'. + * + * + * @return the meta object for the attribute 'Inverse'. + * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isInverse() + * @see #getPathComponent() + * @generated + */ + EAttribute getPathComponent_Inverse(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isTransitiveClosure Transitive Closure}'. + * + * + * @return the meta object for the attribute 'Transitive Closure'. + * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isTransitiveClosure() + * @see #getPathComponent() + * @generated + */ + EAttribute getPathComponent_TransitiveClosure(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isReflexiveTransitiveClosure Reflexive Transitive Closure}'. + * + * + * @return the meta object for the attribute 'Reflexive Transitive Closure'. + * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent#isReflexiveTransitiveClosure() + * @see #getPathComponent() + * @generated + */ + EAttribute getPathComponent_ReflexiveTransitiveClosure(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol Symbol}'. + * + * + * @return the meta object for class 'Symbol'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Symbol + * @generated + */ + EClass getSymbol(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Symbol#getName() + * @see #getSymbol() + * @generated + */ + EAttribute getSymbol_Name(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Call Call}'. + * + * + * @return the meta object for class 'Call'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Call + * @generated + */ + EClass getCall(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor Functor}'. + * + * + * @return the meta object for the containment reference 'Functor'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor() + * @see #getCall() + * @generated + */ + EReference getCall_Functor(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList Argument List}'. + * + * + * @return the meta object for the containment reference 'Argument List'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList() + * @see #getCall() + * @generated + */ + EReference getCall_ArgumentList(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference Reference}'. + * + * + * @return the meta object for class 'Reference'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Reference + * @generated + */ + EClass getReference(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference#getComponents Components}'. + * + * + * @return the meta object for the containment reference list 'Components'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Reference#getComponents() + * @see #getReference() + * @generated + */ + EReference getReference_Components(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Expression Expression}'. + * + * + * @return the meta object for class 'Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Expression + * @generated + */ + EClass getExpression(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Expression#getExistsVariables Exists Variables}'. + * + * + * @return the meta object for the containment reference list 'Exists Variables'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Expression#getExistsVariables() + * @see #getExpression() + * @generated + */ + EReference getExpression_ExistsVariables(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Argument Argument}'. + * + * + * @return the meta object for class 'Argument'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Argument + * @generated + */ + EClass getArgument(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList Argument List}'. + * + * + * @return the meta object for class 'Argument List'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList + * @generated + */ + EClass getArgumentList(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments Arguments}'. + * + * + * @return the meta object for the containment reference list 'Arguments'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments() + * @see #getArgumentList() + * @generated + */ + EReference getArgumentList_Arguments(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument Expression Argument}'. + * + * + * @return the meta object for class 'Expression Argument'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument + * @generated + */ + EClass getExpressionArgument(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getExpression Expression}'. + * + * + * @return the meta object for the containment reference 'Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getExpression() + * @see #getExpressionArgument() + * @generated + */ + EReference getExpressionArgument_Expression(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.StarArgument Star Argument}'. + * + * + * @return the meta object for class 'Star Argument'. + * @see org.eclipse.viatra.solver.language.solverLanguage.StarArgument + * @generated + */ + EClass getStarArgument(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument Typed Argument}'. + * + * + * @return the meta object for class 'Typed Argument'. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument + * @generated + */ + EClass getTypedArgument(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getTypeReference Type Reference}'. + * + * + * @return the meta object for the containment reference 'Type Reference'. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getTypeReference() + * @see #getTypedArgument() + * @generated + */ + EReference getTypedArgument_TypeReference(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession Multiary Expession}'. + * + * + * @return the meta object for class 'Multiary Expession'. + * @see org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession + * @generated + */ + EClass getMultiaryExpession(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession#getChildren Children}'. + * + * + * @return the meta object for the containment reference list 'Children'. + * @see org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession#getChildren() + * @see #getMultiaryExpession() + * @generated + */ + EReference getMultiaryExpession_Children(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable Variable}'. + * + * + * @return the meta object for class 'Variable'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Variable + * @generated + */ + EClass getVariable(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getTypeReference Type Reference}'. + * + * + * @return the meta object for the containment reference 'Type Reference'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Variable#getTypeReference() + * @see #getVariable() + * @generated + */ + EReference getVariable_TypeReference(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression Unary Expression}'. + * + * + * @return the meta object for class 'Unary Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression + * @generated + */ + EClass getUnaryExpression(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody Body}'. + * + * + * @return the meta object for the containment reference 'Body'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody() + * @see #getUnaryExpression() + * @generated + */ + EReference getUnaryExpression_Body(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp Op}'. + * + * + * @return the meta object for the attribute 'Op'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp() + * @see #getUnaryExpression() + * @generated + */ + EAttribute getUnaryExpression_Op(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression Binary Expression}'. + * + * + * @return the meta object for class 'Binary Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression + * @generated + */ + EClass getBinaryExpression(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp Op}'. + * + * + * @return the meta object for the attribute 'Op'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp() + * @see #getBinaryExpression() + * @generated + */ + EAttribute getBinaryExpression_Op(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft Left}'. + * + * + * @return the meta object for the containment reference 'Left'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft() + * @see #getBinaryExpression() + * @generated + */ + EReference getBinaryExpression_Left(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight Right}'. + * + * + * @return the meta object for the containment reference 'Right'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight() + * @see #getBinaryExpression() + * @generated + */ + EReference getBinaryExpression_Right(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Disjunction Disjunction}'. + * + * + * @return the meta object for class 'Disjunction'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Disjunction + * @generated + */ + EClass getDisjunction(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Conjunction Conjunction}'. + * + * + * @return the meta object for class 'Conjunction'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Conjunction + * @generated + */ + EClass getConjunction(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression Conditional Expression}'. + * + * + * @return the meta object for class 'Conditional Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression + * @generated + */ + EClass getConditionalExpression(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getCondition Condition}'. + * + * + * @return the meta object for the containment reference 'Condition'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getCondition() + * @see #getConditionalExpression() + * @generated + */ + EReference getConditionalExpression_Condition(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getThen Then}'. + * + * + * @return the meta object for the containment reference 'Then'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getThen() + * @see #getConditionalExpression() + * @generated + */ + EReference getConditionalExpression_Then(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getElse Else}'. + * + * + * @return the meta object for the containment reference 'Else'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression#getElse() + * @see #getConditionalExpression() + * @generated + */ + EReference getConditionalExpression_Else(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch Switch}'. + * + * + * @return the meta object for class 'Switch'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Switch + * @generated + */ + EClass getSwitch(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases Cases}'. + * + * + * @return the meta object for the containment reference list 'Cases'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases() + * @see #getSwitch() + * @generated + */ + EReference getSwitch_Cases(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Case Case}'. + * + * + * @return the meta object for class 'Case'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Case + * @generated + */ + EClass getCase(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition Condition}'. + * + * + * @return the meta object for the containment reference 'Condition'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition() + * @see #getCase() + * @generated + */ + EReference getCase_Condition(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody Body}'. + * + * + * @return the meta object for the containment reference 'Body'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Case#getBody() + * @see #getCase() + * @generated + */ + EReference getCase_Body(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression Let Expression}'. + * + * + * @return the meta object for class 'Let Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetExpression + * @generated + */ + EClass getLetExpression(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBindings Bindings}'. + * + * + * @return the meta object for the containment reference list 'Bindings'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBindings() + * @see #getLetExpression() + * @generated + */ + EReference getLetExpression_Bindings(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBody Body}'. + * + * + * @return the meta object for the containment reference 'Body'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetExpression#getBody() + * @see #getLetExpression() + * @generated + */ + EReference getLetExpression_Body(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding Let Binding}'. + * + * + * @return the meta object for class 'Let Binding'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding + * @generated + */ + EClass getLetBinding(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue Value}'. + * + * + * @return the meta object for the containment reference 'Value'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue() + * @see #getLetBinding() + * @generated + */ + EReference getLetBinding_Value(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable Variable}'. + * + * + * @return the meta object for the containment reference 'Variable'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable() + * @see #getLetBinding() + * @generated + */ + EReference getLetBinding_Variable(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getName() + * @see #getLetBinding() + * @generated + */ + EAttribute getLetBinding_Name(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getType Type}'. + * + * + * @return the meta object for the reference 'Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getType() + * @see #getLetBinding() + * @generated + */ + EReference getLetBinding_Type(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Literal Literal}'. + * + * + * @return the meta object for class 'Literal'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Literal + * @generated + */ + EClass getLiteral(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral Int Literal}'. + * + * + * @return the meta object for class 'Int Literal'. + * @see org.eclipse.viatra.solver.language.solverLanguage.IntLiteral + * @generated + */ + EClass getIntLiteral(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral#getValue Value}'. + * + * + * @return the meta object for the attribute 'Value'. + * @see org.eclipse.viatra.solver.language.solverLanguage.IntLiteral#getValue() + * @see #getIntLiteral() + * @generated + */ + EAttribute getIntLiteral_Value(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral Real Literal}'. + * + * + * @return the meta object for class 'Real Literal'. + * @see org.eclipse.viatra.solver.language.solverLanguage.RealLiteral + * @generated + */ + EClass getRealLiteral(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral#getValue Value}'. + * + * + * @return the meta object for the attribute 'Value'. + * @see org.eclipse.viatra.solver.language.solverLanguage.RealLiteral#getValue() + * @see #getRealLiteral() + * @generated + */ + EAttribute getRealLiteral_Value(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral String Literal}'. + * + * + * @return the meta object for class 'String Literal'. + * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral + * @generated + */ + EClass getStringLiteral(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue Value}'. + * + * + * @return the meta object for the attribute 'Value'. + * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue() + * @see #getStringLiteral() + * @generated + */ + EAttribute getStringLiteral_Value(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral Logic Literal}'. + * + * + * @return the meta object for class 'Logic Literal'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral + * @generated + */ + EClass getLogicLiteral(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue Value}'. + * + * + * @return the meta object for the attribute 'Value'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue() + * @see #getLogicLiteral() + * @generated + */ + EAttribute getLogicLiteral_Value(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral Empty Literal}'. + * + * + * @return the meta object for class 'Empty Literal'. + * @see org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral + * @generated + */ + EClass getEmptyLiteral(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression Cast Expression}'. + * + * + * @return the meta object for class 'Cast Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression + * @generated + */ + EClass getCastExpression(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody Body}'. + * + * + * @return the meta object for the containment reference 'Body'. + * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody() + * @see #getCastExpression() + * @generated + */ + EReference getCastExpression_Body(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getTargetType Target Type}'. + * + * + * @return the meta object for the reference 'Target Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getTargetType() + * @see #getCastExpression() + * @generated + */ + EReference getCastExpression_TargetType(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression Aggregate Expression}'. + * + * + * @return the meta object for class 'Aggregate Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression + * @generated + */ + EClass getAggregateExpression(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getForallVariables Forall Variables}'. + * + * + * @return the meta object for the containment reference list 'Forall Variables'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getForallVariables() + * @see #getAggregateExpression() + * @generated + */ + EReference getAggregateExpression_ForallVariables(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getCondition Condition}'. + * + * + * @return the meta object for the containment reference 'Condition'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression#getCondition() + * @see #getAggregateExpression() + * @generated + */ + EReference getAggregateExpression_Condition(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Count Count}'. + * + * + * @return the meta object for class 'Count'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Count + * @generated + */ + EClass getCount(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation Aggregation}'. + * + * + * @return the meta object for class 'Aggregation'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation + * @generated + */ + EClass getAggregation(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getValue Value}'. + * + * + * @return the meta object for the containment reference 'Value'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getValue() + * @see #getAggregation() + * @generated + */ + EReference getAggregation_Value(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp Op}'. + * + * + * @return the meta object for the reference 'Op'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp() + * @see #getAggregation() + * @generated + */ + EReference getAggregation_Op(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Forall Forall}'. + * + * + * @return the meta object for class 'Forall'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Forall + * @generated + */ + EClass getForall(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Forall#getBody Body}'. + * + * + * @return the meta object for the containment reference 'Body'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Forall#getBody() + * @see #getForall() + * @generated + */ + EReference getForall_Body(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference Type Reference}'. + * + * + * @return the meta object for class 'Type Reference'. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypeReference + * @generated + */ + EClass getTypeReference(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#isForceObjectType Force Object Type}'. + * + * + * @return the meta object for the attribute 'Force Object Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypeReference#isForceObjectType() + * @see #getTypeReference() + * @generated + */ + EAttribute getTypeReference_ForceObjectType(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#getType Type}'. + * + * + * @return the meta object for the reference 'Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypeReference#getType() + * @see #getTypeReference() + * @generated + */ + EReference getTypeReference_Type(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral Infinity Literal}'. + * + * + * @return the meta object for class 'Infinity Literal'. + * @see org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral + * @generated + */ + EClass getInfinityLiteral(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval Interval}'. + * + * + * @return the meta object for class 'Interval'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Interval + * @generated + */ + EClass getInterval(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound Lower Bound}'. + * + * + * @return the meta object for the containment reference 'Lower Bound'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound() + * @see #getInterval() + * @generated + */ + EReference getInterval_LowerBound(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound Upper Bound}'. + * + * + * @return the meta object for the containment reference 'Upper Bound'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound() + * @see #getInterval() + * @generated + */ + EReference getInterval_UpperBound(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor Functor}'. + * + * + * @return the meta object for class 'Functor'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Functor + * @generated + */ + EClass getFunctor(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters Parameters}'. + * + * + * @return the meta object for the containment reference list 'Parameters'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters() + * @see #getFunctor() + * @generated + */ + EReference getFunctor_Parameters(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Relation Relation}'. + * + * + * @return the meta object for class 'Relation'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Relation + * @generated + */ + EClass getRelation(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BaseRelation Base Relation}'. + * + * + * @return the meta object for class 'Base Relation'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BaseRelation + * @generated + */ + EClass getBaseRelation(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate Predicate}'. + * + * + * @return the meta object for class 'Predicate'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate + * @generated + */ + EClass getPredicate(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Datatype Datatype}'. + * + * + * @return the meta object for class 'Datatype'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Datatype + * @generated + */ + EClass getDatatype(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Function Function}'. + * + * + * @return the meta object for class 'Function'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Function + * @generated + */ + EClass getFunction(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Function#getResultType Result Type}'. + * + * + * @return the meta object for the reference 'Result Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Function#getResultType() + * @see #getFunction() + * @generated + */ + EReference getFunction_ResultType(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Metric Metric}'. + * + * + * @return the meta object for class 'Metric'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Metric + * @generated + */ + EClass getMetric(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Operator Operator}'. + * + * + * @return the meta object for class 'Operator'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Operator + * @generated + */ + EClass getOperator(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Node Node}'. + * + * + * @return the meta object for class 'Node'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Node + * @generated + */ + EClass getNode(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Node#isNamed Named}'. + * + * + * @return the meta object for the attribute 'Named'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Node#isNamed() + * @see #getNode() + * @generated + */ + EAttribute getNode_Named(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Statement Statement}'. + * + * + * @return the meta object for class 'Statement'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Statement + * @generated + */ + EClass getStatement(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion Abstract Assertion}'. + * + * + * @return the meta object for class 'Abstract Assertion'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion + * @generated + */ + EClass getAbstractAssertion(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getExpression Expression}'. + * + * + * @return the meta object for the containment reference 'Expression'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getExpression() + * @see #getAbstractAssertion() + * @generated + */ + EReference getAbstractAssertion_Expression(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getRange Range}'. + * + * + * @return the meta object for the containment reference 'Range'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion#getRange() + * @see #getAbstractAssertion() + * @generated + */ + EReference getAbstractAssertion_Range(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton Functor Definiton}'. + * + * + * @return the meta object for class 'Functor Definiton'. + * @see org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton + * @generated + */ + EClass getFunctorDefiniton(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getHead Head}'. + * + * + * @return the meta object for the containment reference 'Head'. + * @see org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getHead() + * @see #getFunctorDefiniton() + * @generated + */ + EReference getFunctorDefiniton_Head(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getBody Body}'. + * + * + * @return the meta object for the containment reference 'Body'. + * @see org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton#getBody() + * @see #getFunctorDefiniton() + * @generated + */ + EReference getFunctorDefiniton_Body(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition Predicate Definition}'. + * + * + * @return the meta object for class 'Predicate Definition'. + * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition + * @generated + */ + EClass getPredicateDefinition(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition Function Definition}'. + * + * + * @return the meta object for class 'Function Definition'. + * @see org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition + * @generated + */ + EClass getFunctionDefinition(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition#getResultType Result Type}'. + * + * + * @return the meta object for the reference 'Result Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition#getResultType() + * @see #getFunctionDefinition() + * @generated + */ + EReference getFunctionDefinition_ResultType(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute Attribute}'. + * + * + * @return the meta object for class 'Attribute'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Attribute + * @generated + */ + EClass getAttribute(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getTarget Target}'. + * + * + * @return the meta object for the reference 'Target'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Attribute#getTarget() + * @see #getAttribute() + * @generated + */ + EReference getAttribute_Target(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute#getKind Kind}'. + * + * + * @return the meta object for the attribute 'Kind'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Attribute#getKind() + * @see #getAttribute() + * @generated + */ + EAttribute getAttribute_Kind(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration Extern Declaration}'. + * + * + * @return the meta object for class 'Extern Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration + * @generated + */ + EClass getExternDeclaration(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration#getName() + * @see #getExternDeclaration() + * @generated + */ + EAttribute getExternDeclaration_Name(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration Extern Functor Declaration}'. + * + * + * @return the meta object for class 'Extern Functor Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration + * @generated + */ + EClass getExternFunctorDeclaration(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration#getArgumentList Argument List}'. + * + * + * @return the meta object for the containment reference 'Argument List'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration#getArgumentList() + * @see #getExternFunctorDeclaration() + * @generated + */ + EReference getExternFunctorDeclaration_ArgumentList(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration Extern Predicate Declaration}'. + * + * + * @return the meta object for class 'Extern Predicate Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration + * @generated + */ + EClass getExternPredicateDeclaration(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration Extern Function Declaration}'. + * + * + * @return the meta object for class 'Extern Function Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration + * @generated + */ + EClass getExternFunctionDeclaration(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration#getResultType Result Type}'. + * + * + * @return the meta object for the reference 'Result Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration#getResultType() + * @see #getExternFunctionDeclaration() + * @generated + */ + EReference getExternFunctionDeclaration_ResultType(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration Extern Aggregation Operator Declaration}'. + * + * + * @return the meta object for class 'Extern Aggregation Operator Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration + * @generated + */ + EClass getExternAggregationOperatorDeclaration(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getArgumentType Argument Type}'. + * + * + * @return the meta object for the reference 'Argument Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getArgumentType() + * @see #getExternAggregationOperatorDeclaration() + * @generated + */ + EReference getExternAggregationOperatorDeclaration_ArgumentType(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getResultType Result Type}'. + * + * + * @return the meta object for the reference 'Result Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration#getResultType() + * @see #getExternAggregationOperatorDeclaration() + * @generated + */ + EReference getExternAggregationOperatorDeclaration_ResultType(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration Extern Datatype Declaration}'. + * + * + * @return the meta object for class 'Extern Datatype Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration + * @generated + */ + EClass getExternDatatypeDeclaration(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration Class Declaration}'. + * + * + * @return the meta object for class 'Class Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration + * @generated + */ + EClass getClassDeclaration(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getFields Fields}'. + * + * + * @return the meta object for the containment reference list 'Fields'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getFields() + * @see #getClassDeclaration() + * @generated + */ + EReference getClassDeclaration_Fields(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getName() + * @see #getClassDeclaration() + * @generated + */ + EAttribute getClassDeclaration_Name(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isAbstract Abstract}'. + * + * + * @return the meta object for the attribute 'Abstract'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isAbstract() + * @see #getClassDeclaration() + * @generated + */ + EAttribute getClassDeclaration_Abstract(); + + /** + * Returns the meta object for the reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getSupertypes Supertypes}'. + * + * + * @return the meta object for the reference list 'Supertypes'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#getSupertypes() + * @see #getClassDeclaration() + * @generated + */ + EReference getClassDeclaration_Supertypes(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isRoot Root}'. + * + * + * @return the meta object for the attribute 'Root'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration#isRoot() + * @see #getClassDeclaration() + * @generated + */ + EAttribute getClassDeclaration_Root(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration Enum Declaration}'. + * + * + * @return the meta object for class 'Enum Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration + * @generated + */ + EClass getEnumDeclaration(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getLiterals Literals}'. + * + * + * @return the meta object for the containment reference list 'Literals'. + * @see org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getLiterals() + * @see #getEnumDeclaration() + * @generated + */ + EReference getEnumDeclaration_Literals(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration#getName() + * @see #getEnumDeclaration() + * @generated + */ + EAttribute getEnumDeclaration_Name(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral Enum Literal}'. + * + * + * @return the meta object for class 'Enum Literal'. + * @see org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral + * @generated + */ + EClass getEnumLiteral(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral#getName() + * @see #getEnumLiteral() + * @generated + */ + EAttribute getEnumLiteral_Name(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Field Field}'. + * + * + * @return the meta object for class 'Field'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Field + * @generated + */ + EClass getField(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isContainment Containment}'. + * + * + * @return the meta object for the attribute 'Containment'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Field#isContainment() + * @see #getField() + * @generated + */ + EAttribute getField_Containment(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#isCrossReference Cross Reference}'. + * + * + * @return the meta object for the attribute 'Cross Reference'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Field#isCrossReference() + * @see #getField() + * @generated + */ + EAttribute getField_CrossReference(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getOpposite Opposite}'. + * + * + * @return the meta object for the reference 'Opposite'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Field#getOpposite() + * @see #getField() + * @generated + */ + EReference getField_Opposite(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getMultiplicity Multiplicity}'. + * + * + * @return the meta object for the containment reference 'Multiplicity'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Field#getMultiplicity() + * @see #getField() + * @generated + */ + EReference getField_Multiplicity(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getType Type}'. + * + * + * @return the meta object for the reference 'Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Field#getType() + * @see #getField() + * @generated + */ + EReference getField_Type(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Field#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Field#getName() + * @see #getField() + * @generated + */ + EAttribute getField_Name(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Multiplicity Multiplicity}'. + * + * + * @return the meta object for class 'Multiplicity'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Multiplicity + * @generated + */ + EClass getMultiplicity(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion Default Assertion}'. + * + * + * @return the meta object for class 'Default Assertion'. + * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion + * @generated + */ + EClass getDefaultAssertion(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Assertion Assertion}'. + * + * + * @return the meta object for class 'Assertion'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Assertion + * @generated + */ + EClass getAssertion(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity Unbounded Multiplicity}'. + * + * + * @return the meta object for class 'Unbounded Multiplicity'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity + * @generated + */ + EClass getUnboundedMultiplicity(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity Exact Multiplicity}'. + * + * + * @return the meta object for class 'Exact Multiplicity'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity + * @generated + */ + EClass getExactMultiplicity(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getValue Value}'. + * + * + * @return the meta object for the attribute 'Value'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getValue() + * @see #getExactMultiplicity() + * @generated + */ + EAttribute getExactMultiplicity_Value(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity Bounded Multiplicity}'. + * + * + * @return the meta object for class 'Bounded Multiplicity'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity + * @generated + */ + EClass getBoundedMultiplicity(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound Lower Bound}'. + * + * + * @return the meta object for the attribute 'Lower Bound'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound() + * @see #getBoundedMultiplicity() + * @generated + */ + EAttribute getBoundedMultiplicity_LowerBound(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound Upper Bound}'. + * + * + * @return the meta object for the attribute 'Upper Bound'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound() + * @see #getBoundedMultiplicity() + * @generated + */ + EAttribute getBoundedMultiplicity_UpperBound(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes Inline Predicate Attrributes}'. + * + * + * @return the meta object for class 'Inline Predicate Attrributes'. + * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes + * @generated + */ + EClass getInlinePredicateAttrributes(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isError Error}'. + * + * + * @return the meta object for the attribute 'Error'. + * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isError() + * @see #getInlinePredicateAttrributes() + * @generated + */ + EAttribute getInlinePredicateAttrributes_Error(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isFunctional Functional}'. + * + * + * @return the meta object for the attribute 'Functional'. + * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes#isFunctional() + * @see #getInlinePredicateAttrributes() + * @generated + */ + EAttribute getInlinePredicateAttrributes_Functional(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator Aggregation Operator}'. + * + * + * @return the meta object for class 'Aggregation Operator'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator + * @generated + */ + EClass getAggregationOperator(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getArgumentType Argument Type}'. + * + * + * @return the meta object for the reference 'Argument Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getArgumentType() + * @see #getAggregationOperator() + * @generated + */ + EReference getAggregationOperator_ArgumentType(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getResultType Result Type}'. + * + * + * @return the meta object for the reference 'Result Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator#getResultType() + * @see #getAggregationOperator() + * @generated + */ + EReference getAggregationOperator_ResultType(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem Problem}'. + * + * + * @return the meta object for class 'Problem'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Problem + * @generated + */ + EClass getProblem(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getName() + * @see #getProblem() + * @generated + */ + EAttribute getProblem_Name(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements Statements}'. + * + * + * @return the meta object for the containment reference list 'Statements'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements() + * @see #getProblem() + * @generated + */ + EReference getProblem_Statements(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getSymbols Symbols}'. + * + * + * @return the meta object for the containment reference list 'Symbols'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getSymbols() + * @see #getProblem() + * @generated + */ + EReference getProblem_Symbols(); + + /** + * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getImports Imports}'. + * + * + * @return the meta object for the containment reference list 'Imports'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getImports() + * @see #getProblem() + * @generated + */ + EReference getProblem_Imports(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument Typed Star Argument}'. + * + * + * @return the meta object for class 'Typed Star Argument'. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument + * @generated + */ + EClass getTypedStarArgument(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument Typed Variable Argument}'. + * + * + * @return the meta object for class 'Typed Variable Argument'. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument + * @generated + */ + EClass getTypedVariableArgument(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument#getName Name}'. + * + * + * @return the meta object for the attribute 'Name'. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument#getName() + * @see #getTypedVariableArgument() + * @generated + */ + EAttribute getTypedVariableArgument_Name(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion Unnamed Error Predicate Defintion}'. + * + * + * @return the meta object for class 'Unnamed Error Predicate Defintion'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion + * @generated + */ + EClass getUnnamedErrorPredicateDefintion(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getArgumentList Argument List}'. + * + * + * @return the meta object for the containment reference 'Argument List'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getArgumentList() + * @see #getUnnamedErrorPredicateDefintion() + * @generated + */ + EReference getUnnamedErrorPredicateDefintion_ArgumentList(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getBody Body}'. + * + * + * @return the meta object for the containment reference 'Body'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getBody() + * @see #getUnnamedErrorPredicateDefintion() + * @generated + */ + EReference getUnnamedErrorPredicateDefintion_Body(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration Objective Declaration}'. + * + * + * @return the meta object for class 'Objective Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration + * @generated + */ + EClass getObjectiveDeclaration(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getKind Kind}'. + * + * + * @return the meta object for the attribute 'Kind'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getKind() + * @see #getObjectiveDeclaration() + * @generated + */ + EAttribute getObjectiveDeclaration_Kind(); + + /** + * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getObjective Objective}'. + * + * + * @return the meta object for the containment reference 'Objective'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration#getObjective() + * @see #getObjectiveDeclaration() + * @generated + */ + EReference getObjectiveDeclaration_Objective(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration Scope Declaration}'. + * + * + * @return the meta object for class 'Scope Declaration'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration + * @generated + */ + EClass getScopeDeclaration(); + + /** + * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration#getType Type}'. + * + * + * @return the meta object for the reference 'Type'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration#getType() + * @see #getScopeDeclaration() + * @generated + */ + EReference getScopeDeclaration_Type(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope Exact Scope}'. + * + * + * @return the meta object for class 'Exact Scope'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScope + * @generated + */ + EClass getExactScope(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope#getSize Size}'. + * + * + * @return the meta object for the attribute 'Size'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScope#getSize() + * @see #getExactScope() + * @generated + */ + EAttribute getExactScope_Size(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope Bounded Scope}'. + * + * + * @return the meta object for class 'Bounded Scope'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScope + * @generated + */ + EClass getBoundedScope(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getLowerBound Lower Bound}'. + * + * + * @return the meta object for the attribute 'Lower Bound'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getLowerBound() + * @see #getBoundedScope() + * @generated + */ + EAttribute getBoundedScope_LowerBound(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getUpperBound Upper Bound}'. + * + * + * @return the meta object for the attribute 'Upper Bound'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScope#getUpperBound() + * @see #getBoundedScope() + * @generated + */ + EAttribute getBoundedScope_UpperBound(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope Lower Bounded Scope}'. + * + * + * @return the meta object for class 'Lower Bounded Scope'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope + * @generated + */ + EClass getLowerBoundedScope(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope#getLowerBound Lower Bound}'. + * + * + * @return the meta object for the attribute 'Lower Bound'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope#getLowerBound() + * @see #getLowerBoundedScope() + * @generated + */ + EAttribute getLowerBoundedScope_LowerBound(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport Namespace Import}'. + * + * + * @return the meta object for class 'Namespace Import'. + * @see org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport + * @generated + */ + EClass getNamespaceImport(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport#getImportedNamespace Imported Namespace}'. + * + * + * @return the meta object for the attribute 'Imported Namespace'. + * @see org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport#getImportedNamespace() + * @see #getNamespaceImport() + * @generated + */ + EAttribute getNamespaceImport_ImportedNamespace(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Import Import}'. + * + * + * @return the meta object for class 'Import'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Import + * @generated + */ + EClass getImport(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Import#getAlias Alias}'. + * + * + * @return the meta object for the attribute 'Alias'. + * @see org.eclipse.viatra.solver.language.solverLanguage.Import#getAlias() + * @see #getImport() + * @generated + */ + EAttribute getImport_Alias(); + + /** + * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport Uri Import}'. + * + * + * @return the meta object for class 'Uri Import'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UriImport + * @generated + */ + EClass getUriImport(); + + /** + * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport#getUri Uri}'. + * + * + * @return the meta object for the attribute 'Uri'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UriImport#getUri() + * @see #getUriImport() + * @generated + */ + EAttribute getUriImport_Uri(); + + /** + * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator Unary Operator}'. + * + * + * @return the meta object for enum 'Unary Operator'. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator + * @generated + */ + EEnum getUnaryOperator(); + + /** + * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator Binary Operator}'. + * + * + * @return the meta object for enum 'Binary Operator'. + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator + * @generated + */ + EEnum getBinaryOperator(); + + /** + * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue Logic Value}'. + * + * + * @return the meta object for enum 'Logic Value'. + * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue + * @generated + */ + EEnum getLogicValue(); + + /** + * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind Objective Kind}'. + * + * + * @return the meta object for enum 'Objective Kind'. + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind + * @generated + */ + EEnum getObjectiveKind(); + + /** + * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.AttributeKind Attribute Kind}'. + * + * + * @return the meta object for enum 'Attribute Kind'. + * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind + * @generated + */ + EEnum getAttributeKind(); + + /** + * Returns the factory that creates the instances of the model. + * + * + * @return the factory that creates the instances of the model. + * @generated + */ + SolverLanguageFactory getSolverLanguageFactory(); + + /** + * + * Defines literals for the meta objects that represent + *
    + *
  • each class,
  • + *
  • each feature of each class,
  • + *
  • each operation of each class,
  • + *
  • each enum,
  • + *
  • and each data type
  • + *
+ * + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl Path Component}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPathComponent() + * @generated + */ + EClass PATH_COMPONENT = eINSTANCE.getPathComponent(); + + /** + * The meta object literal for the 'Symbol' reference feature. + * + * + * @generated + */ + EReference PATH_COMPONENT__SYMBOL = eINSTANCE.getPathComponent_Symbol(); + + /** + * The meta object literal for the 'Inverse' attribute feature. + * + * + * @generated + */ + EAttribute PATH_COMPONENT__INVERSE = eINSTANCE.getPathComponent_Inverse(); + + /** + * The meta object literal for the 'Transitive Closure' attribute feature. + * + * + * @generated + */ + EAttribute PATH_COMPONENT__TRANSITIVE_CLOSURE = eINSTANCE.getPathComponent_TransitiveClosure(); + + /** + * The meta object literal for the 'Reflexive Transitive Closure' attribute feature. + * + * + * @generated + */ + EAttribute PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE = eINSTANCE + .getPathComponent_ReflexiveTransitiveClosure(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl Symbol}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSymbol() + * @generated + */ + EClass SYMBOL = eINSTANCE.getSymbol(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute SYMBOL__NAME = eINSTANCE.getSymbol_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl Call}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCall() + * @generated + */ + EClass CALL = eINSTANCE.getCall(); + + /** + * The meta object literal for the 'Functor' containment reference feature. + * + * + * @generated + */ + EReference CALL__FUNCTOR = eINSTANCE.getCall_Functor(); + + /** + * The meta object literal for the 'Argument List' containment reference feature. + * + * + * @generated + */ + EReference CALL__ARGUMENT_LIST = eINSTANCE.getCall_ArgumentList(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl Reference}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getReference() + * @generated + */ + EClass REFERENCE = eINSTANCE.getReference(); + + /** + * The meta object literal for the 'Components' containment reference list feature. + * + * + * @generated + */ + EReference REFERENCE__COMPONENTS = eINSTANCE.getReference_Components(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpression() + * @generated + */ + EClass EXPRESSION = eINSTANCE.getExpression(); + + /** + * The meta object literal for the 'Exists Variables' containment reference list feature. + * + * + * @generated + */ + EReference EXPRESSION__EXISTS_VARIABLES = eINSTANCE.getExpression_ExistsVariables(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgument() + * @generated + */ + EClass ARGUMENT = eINSTANCE.getArgument(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl Argument List}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgumentList() + * @generated + */ + EClass ARGUMENT_LIST = eINSTANCE.getArgumentList(); + + /** + * The meta object literal for the 'Arguments' containment reference list feature. + * + * + * @generated + */ + EReference ARGUMENT_LIST__ARGUMENTS = eINSTANCE.getArgumentList_Arguments(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl Expression Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpressionArgument() + * @generated + */ + EClass EXPRESSION_ARGUMENT = eINSTANCE.getExpressionArgument(); + + /** + * The meta object literal for the 'Expression' containment reference feature. + * + * + * @generated + */ + EReference EXPRESSION_ARGUMENT__EXPRESSION = eINSTANCE.getExpressionArgument_Expression(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl Star Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStarArgument() + * @generated + */ + EClass STAR_ARGUMENT = eINSTANCE.getStarArgument(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl Typed Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedArgument() + * @generated + */ + EClass TYPED_ARGUMENT = eINSTANCE.getTypedArgument(); + + /** + * The meta object literal for the 'Type Reference' containment reference feature. + * + * + * @generated + */ + EReference TYPED_ARGUMENT__TYPE_REFERENCE = eINSTANCE.getTypedArgument_TypeReference(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl Multiary Expession}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiaryExpession() + * @generated + */ + EClass MULTIARY_EXPESSION = eINSTANCE.getMultiaryExpession(); + + /** + * The meta object literal for the 'Children' containment reference list feature. + * + * + * @generated + */ + EReference MULTIARY_EXPESSION__CHILDREN = eINSTANCE.getMultiaryExpession_Children(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl Variable}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getVariable() + * @generated + */ + EClass VARIABLE = eINSTANCE.getVariable(); + + /** + * The meta object literal for the 'Type Reference' containment reference feature. + * + * + * @generated + */ + EReference VARIABLE__TYPE_REFERENCE = eINSTANCE.getVariable_TypeReference(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl Unary Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryExpression() + * @generated + */ + EClass UNARY_EXPRESSION = eINSTANCE.getUnaryExpression(); + + /** + * The meta object literal for the 'Body' containment reference feature. + * + * + * @generated + */ + EReference UNARY_EXPRESSION__BODY = eINSTANCE.getUnaryExpression_Body(); + + /** + * The meta object literal for the 'Op' attribute feature. + * + * + * @generated + */ + EAttribute UNARY_EXPRESSION__OP = eINSTANCE.getUnaryExpression_Op(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl Binary Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryExpression() + * @generated + */ + EClass BINARY_EXPRESSION = eINSTANCE.getBinaryExpression(); + + /** + * The meta object literal for the 'Op' attribute feature. + * + * + * @generated + */ + EAttribute BINARY_EXPRESSION__OP = eINSTANCE.getBinaryExpression_Op(); + + /** + * The meta object literal for the 'Left' containment reference feature. + * + * + * @generated + */ + EReference BINARY_EXPRESSION__LEFT = eINSTANCE.getBinaryExpression_Left(); + + /** + * The meta object literal for the 'Right' containment reference feature. + * + * + * @generated + */ + EReference BINARY_EXPRESSION__RIGHT = eINSTANCE.getBinaryExpression_Right(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl Disjunction}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDisjunction() + * @generated + */ + EClass DISJUNCTION = eINSTANCE.getDisjunction(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl Conjunction}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConjunction() + * @generated + */ + EClass CONJUNCTION = eINSTANCE.getConjunction(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl Conditional Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConditionalExpression() + * @generated + */ + EClass CONDITIONAL_EXPRESSION = eINSTANCE.getConditionalExpression(); + + /** + * The meta object literal for the 'Condition' containment reference feature. + * + * + * @generated + */ + EReference CONDITIONAL_EXPRESSION__CONDITION = eINSTANCE.getConditionalExpression_Condition(); + + /** + * The meta object literal for the 'Then' containment reference feature. + * + * + * @generated + */ + EReference CONDITIONAL_EXPRESSION__THEN = eINSTANCE.getConditionalExpression_Then(); + + /** + * The meta object literal for the 'Else' containment reference feature. + * + * + * @generated + */ + EReference CONDITIONAL_EXPRESSION__ELSE = eINSTANCE.getConditionalExpression_Else(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl Switch}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSwitch() + * @generated + */ + EClass SWITCH = eINSTANCE.getSwitch(); + + /** + * The meta object literal for the 'Cases' containment reference list feature. + * + * + * @generated + */ + EReference SWITCH__CASES = eINSTANCE.getSwitch_Cases(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl Case}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCase() + * @generated + */ + EClass CASE = eINSTANCE.getCase(); + + /** + * The meta object literal for the 'Condition' containment reference feature. + * + * + * @generated + */ + EReference CASE__CONDITION = eINSTANCE.getCase_Condition(); + + /** + * The meta object literal for the 'Body' containment reference feature. + * + * + * @generated + */ + EReference CASE__BODY = eINSTANCE.getCase_Body(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl Let Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetExpression() + * @generated + */ + EClass LET_EXPRESSION = eINSTANCE.getLetExpression(); + + /** + * The meta object literal for the 'Bindings' containment reference list feature. + * + * + * @generated + */ + EReference LET_EXPRESSION__BINDINGS = eINSTANCE.getLetExpression_Bindings(); + + /** + * The meta object literal for the 'Body' containment reference feature. + * + * + * @generated + */ + EReference LET_EXPRESSION__BODY = eINSTANCE.getLetExpression_Body(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl Let Binding}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetBinding() + * @generated + */ + EClass LET_BINDING = eINSTANCE.getLetBinding(); + + /** + * The meta object literal for the 'Value' containment reference feature. + * + * + * @generated + */ + EReference LET_BINDING__VALUE = eINSTANCE.getLetBinding_Value(); + + /** + * The meta object literal for the 'Variable' containment reference feature. + * + * + * @generated + */ + EReference LET_BINDING__VARIABLE = eINSTANCE.getLetBinding_Variable(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute LET_BINDING__NAME = eINSTANCE.getLetBinding_Name(); + + /** + * The meta object literal for the 'Type' reference feature. + * + * + * @generated + */ + EReference LET_BINDING__TYPE = eINSTANCE.getLetBinding_Type(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLiteral() + * @generated + */ + EClass LITERAL = eINSTANCE.getLiteral(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl Int Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIntLiteral() + * @generated + */ + EClass INT_LITERAL = eINSTANCE.getIntLiteral(); + + /** + * The meta object literal for the 'Value' attribute feature. + * + * + * @generated + */ + EAttribute INT_LITERAL__VALUE = eINSTANCE.getIntLiteral_Value(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl Real Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRealLiteral() + * @generated + */ + EClass REAL_LITERAL = eINSTANCE.getRealLiteral(); + + /** + * The meta object literal for the 'Value' attribute feature. + * + * + * @generated + */ + EAttribute REAL_LITERAL__VALUE = eINSTANCE.getRealLiteral_Value(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl String Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringLiteral() + * @generated + */ + EClass STRING_LITERAL = eINSTANCE.getStringLiteral(); + + /** + * The meta object literal for the 'Value' attribute feature. + * + * + * @generated + */ + EAttribute STRING_LITERAL__VALUE = eINSTANCE.getStringLiteral_Value(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl Logic Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicLiteral() + * @generated + */ + EClass LOGIC_LITERAL = eINSTANCE.getLogicLiteral(); + + /** + * The meta object literal for the 'Value' attribute feature. + * + * + * @generated + */ + EAttribute LOGIC_LITERAL__VALUE = eINSTANCE.getLogicLiteral_Value(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyLiteralImpl Empty Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEmptyLiteral() + * @generated + */ + EClass EMPTY_LITERAL = eINSTANCE.getEmptyLiteral(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl Cast Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCastExpression() + * @generated + */ + EClass CAST_EXPRESSION = eINSTANCE.getCastExpression(); + + /** + * The meta object literal for the 'Body' containment reference feature. + * + * + * @generated + */ + EReference CAST_EXPRESSION__BODY = eINSTANCE.getCastExpression_Body(); + + /** + * The meta object literal for the 'Target Type' reference feature. + * + * + * @generated + */ + EReference CAST_EXPRESSION__TARGET_TYPE = eINSTANCE.getCastExpression_TargetType(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl Aggregate Expression}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregateExpression() + * @generated + */ + EClass AGGREGATE_EXPRESSION = eINSTANCE.getAggregateExpression(); + + /** + * The meta object literal for the 'Forall Variables' containment reference list feature. + * + * + * @generated + */ + EReference AGGREGATE_EXPRESSION__FORALL_VARIABLES = eINSTANCE.getAggregateExpression_ForallVariables(); + + /** + * The meta object literal for the 'Condition' containment reference feature. + * + * + * @generated + */ + EReference AGGREGATE_EXPRESSION__CONDITION = eINSTANCE.getAggregateExpression_Condition(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CountImpl Count}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CountImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCount() + * @generated + */ + EClass COUNT = eINSTANCE.getCount(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl Aggregation}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregation() + * @generated + */ + EClass AGGREGATION = eINSTANCE.getAggregation(); + + /** + * The meta object literal for the 'Value' containment reference feature. + * + * + * @generated + */ + EReference AGGREGATION__VALUE = eINSTANCE.getAggregation_Value(); + + /** + * The meta object literal for the 'Op' reference feature. + * + * + * @generated + */ + EReference AGGREGATION__OP = eINSTANCE.getAggregation_Op(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl Forall}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getForall() + * @generated + */ + EClass FORALL = eINSTANCE.getForall(); + + /** + * The meta object literal for the 'Body' containment reference feature. + * + * + * @generated + */ + EReference FORALL__BODY = eINSTANCE.getForall_Body(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl Type Reference}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypeReference() + * @generated + */ + EClass TYPE_REFERENCE = eINSTANCE.getTypeReference(); + + /** + * The meta object literal for the 'Force Object Type' attribute feature. + * + * + * @generated + */ + EAttribute TYPE_REFERENCE__FORCE_OBJECT_TYPE = eINSTANCE.getTypeReference_ForceObjectType(); + + /** + * The meta object literal for the 'Type' reference feature. + * + * + * @generated + */ + EReference TYPE_REFERENCE__TYPE = eINSTANCE.getTypeReference_Type(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl Infinity Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInfinityLiteral() + * @generated + */ + EClass INFINITY_LITERAL = eINSTANCE.getInfinityLiteral(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl Interval}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterval() + * @generated + */ + EClass INTERVAL = eINSTANCE.getInterval(); + + /** + * The meta object literal for the 'Lower Bound' containment reference feature. + * + * + * @generated + */ + EReference INTERVAL__LOWER_BOUND = eINSTANCE.getInterval_LowerBound(); + + /** + * The meta object literal for the 'Upper Bound' containment reference feature. + * + * + * @generated + */ + EReference INTERVAL__UPPER_BOUND = eINSTANCE.getInterval_UpperBound(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl Functor}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctor() + * @generated + */ + EClass FUNCTOR = eINSTANCE.getFunctor(); + + /** + * The meta object literal for the 'Parameters' containment reference list feature. + * + * + * @generated + */ + EReference FUNCTOR__PARAMETERS = eINSTANCE.getFunctor_Parameters(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.RelationImpl Relation}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.RelationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getRelation() + * @generated + */ + EClass RELATION = eINSTANCE.getRelation(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BaseRelationImpl Base Relation}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BaseRelationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBaseRelation() + * @generated + */ + EClass BASE_RELATION = eINSTANCE.getBaseRelation(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl Predicate}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicate() + * @generated + */ + EClass PREDICATE = eINSTANCE.getPredicate(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DatatypeImpl Datatype}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DatatypeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDatatype() + * @generated + */ + EClass DATATYPE = eINSTANCE.getDatatype(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl Function}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunction() + * @generated + */ + EClass FUNCTION = eINSTANCE.getFunction(); + + /** + * The meta object literal for the 'Result Type' reference feature. + * + * + * @generated + */ + EReference FUNCTION__RESULT_TYPE = eINSTANCE.getFunction_ResultType(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl Metric}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMetric() + * @generated + */ + EClass METRIC = eINSTANCE.getMetric(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.OperatorImpl Operator}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.OperatorImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getOperator() + * @generated + */ + EClass OPERATOR = eINSTANCE.getOperator(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl Node}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNode() + * @generated + */ + EClass NODE = eINSTANCE.getNode(); + + /** + * The meta object literal for the 'Named' attribute feature. + * + * + * @generated + */ + EAttribute NODE__NAMED = eINSTANCE.getNode_Named(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl Statement}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStatement() + * @generated + */ + EClass STATEMENT = eINSTANCE.getStatement(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl Abstract Assertion}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAbstractAssertion() + * @generated + */ + EClass ABSTRACT_ASSERTION = eINSTANCE.getAbstractAssertion(); + + /** + * The meta object literal for the 'Expression' containment reference feature. + * + * + * @generated + */ + EReference ABSTRACT_ASSERTION__EXPRESSION = eINSTANCE.getAbstractAssertion_Expression(); + + /** + * The meta object literal for the 'Range' containment reference feature. + * + * + * @generated + */ + EReference ABSTRACT_ASSERTION__RANGE = eINSTANCE.getAbstractAssertion_Range(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl Functor Definiton}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctorDefiniton() + * @generated + */ + EClass FUNCTOR_DEFINITON = eINSTANCE.getFunctorDefiniton(); + + /** + * The meta object literal for the 'Head' containment reference feature. + * + * + * @generated + */ + EReference FUNCTOR_DEFINITON__HEAD = eINSTANCE.getFunctorDefiniton_Head(); + + /** + * The meta object literal for the 'Body' containment reference feature. + * + * + * @generated + */ + EReference FUNCTOR_DEFINITON__BODY = eINSTANCE.getFunctorDefiniton_Body(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl Predicate Definition}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicateDefinition() + * @generated + */ + EClass PREDICATE_DEFINITION = eINSTANCE.getPredicateDefinition(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl Function Definition}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctionDefinition() + * @generated + */ + EClass FUNCTION_DEFINITION = eINSTANCE.getFunctionDefinition(); + + /** + * The meta object literal for the 'Result Type' reference feature. + * + * + * @generated + */ + EReference FUNCTION_DEFINITION__RESULT_TYPE = eINSTANCE.getFunctionDefinition_ResultType(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl Attribute}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAttribute() + * @generated + */ + EClass ATTRIBUTE = eINSTANCE.getAttribute(); + + /** + * The meta object literal for the 'Target' reference feature. + * + * + * @generated + */ + EReference ATTRIBUTE__TARGET = eINSTANCE.getAttribute_Target(); + + /** + * The meta object literal for the 'Kind' attribute feature. + * + * + * @generated + */ + EAttribute ATTRIBUTE__KIND = eINSTANCE.getAttribute_Kind(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl Extern Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDeclaration() + * @generated + */ + EClass EXTERN_DECLARATION = eINSTANCE.getExternDeclaration(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute EXTERN_DECLARATION__NAME = eINSTANCE.getExternDeclaration_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl Extern Functor Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternFunctorDeclaration() + * @generated + */ + EClass EXTERN_FUNCTOR_DECLARATION = eINSTANCE.getExternFunctorDeclaration(); + + /** + * The meta object literal for the 'Argument List' containment reference feature. + * + * + * @generated + */ + EReference EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST = eINSTANCE.getExternFunctorDeclaration_ArgumentList(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl Extern Predicate Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternPredicateDeclaration() + * @generated + */ + EClass EXTERN_PREDICATE_DECLARATION = eINSTANCE.getExternPredicateDeclaration(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl Extern Function Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternFunctionDeclaration() + * @generated + */ + EClass EXTERN_FUNCTION_DECLARATION = eINSTANCE.getExternFunctionDeclaration(); + + /** + * The meta object literal for the 'Result Type' reference feature. + * + * + * @generated + */ + EReference EXTERN_FUNCTION_DECLARATION__RESULT_TYPE = eINSTANCE.getExternFunctionDeclaration_ResultType(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl Extern Aggregation Operator Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternAggregationOperatorDeclaration() + * @generated + */ + EClass EXTERN_AGGREGATION_OPERATOR_DECLARATION = eINSTANCE.getExternAggregationOperatorDeclaration(); + + /** + * The meta object literal for the 'Argument Type' reference feature. + * + * + * @generated + */ + EReference EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE = eINSTANCE + .getExternAggregationOperatorDeclaration_ArgumentType(); + + /** + * The meta object literal for the 'Result Type' reference feature. + * + * + * @generated + */ + EReference EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE = eINSTANCE + .getExternAggregationOperatorDeclaration_ResultType(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDeclarationImpl Extern Datatype Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDatatypeDeclaration() + * @generated + */ + EClass EXTERN_DATATYPE_DECLARATION = eINSTANCE.getExternDatatypeDeclaration(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl Class Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClassDeclaration() + * @generated + */ + EClass CLASS_DECLARATION = eINSTANCE.getClassDeclaration(); + + /** + * The meta object literal for the 'Fields' containment reference list feature. + * + * + * @generated + */ + EReference CLASS_DECLARATION__FIELDS = eINSTANCE.getClassDeclaration_Fields(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute CLASS_DECLARATION__NAME = eINSTANCE.getClassDeclaration_Name(); + + /** + * The meta object literal for the 'Abstract' attribute feature. + * + * + * @generated + */ + EAttribute CLASS_DECLARATION__ABSTRACT = eINSTANCE.getClassDeclaration_Abstract(); + + /** + * The meta object literal for the 'Supertypes' reference list feature. + * + * + * @generated + */ + EReference CLASS_DECLARATION__SUPERTYPES = eINSTANCE.getClassDeclaration_Supertypes(); + + /** + * The meta object literal for the 'Root' attribute feature. + * + * + * @generated + */ + EAttribute CLASS_DECLARATION__ROOT = eINSTANCE.getClassDeclaration_Root(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl Enum Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumDeclaration() + * @generated + */ + EClass ENUM_DECLARATION = eINSTANCE.getEnumDeclaration(); + + /** + * The meta object literal for the 'Literals' containment reference list feature. + * + * + * @generated + */ + EReference ENUM_DECLARATION__LITERALS = eINSTANCE.getEnumDeclaration_Literals(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute ENUM_DECLARATION__NAME = eINSTANCE.getEnumDeclaration_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl Enum Literal}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEnumLiteral() + * @generated + */ + EClass ENUM_LITERAL = eINSTANCE.getEnumLiteral(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute ENUM_LITERAL__NAME = eINSTANCE.getEnumLiteral_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl Field}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getField() + * @generated + */ + EClass FIELD = eINSTANCE.getField(); + + /** + * The meta object literal for the 'Containment' attribute feature. + * + * + * @generated + */ + EAttribute FIELD__CONTAINMENT = eINSTANCE.getField_Containment(); + + /** + * The meta object literal for the 'Cross Reference' attribute feature. + * + * + * @generated + */ + EAttribute FIELD__CROSS_REFERENCE = eINSTANCE.getField_CrossReference(); + + /** + * The meta object literal for the 'Opposite' reference feature. + * + * + * @generated + */ + EReference FIELD__OPPOSITE = eINSTANCE.getField_Opposite(); + + /** + * The meta object literal for the 'Multiplicity' containment reference feature. + * + * + * @generated + */ + EReference FIELD__MULTIPLICITY = eINSTANCE.getField_Multiplicity(); + + /** + * The meta object literal for the 'Type' reference feature. + * + * + * @generated + */ + EReference FIELD__TYPE = eINSTANCE.getField_Type(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute FIELD__NAME = eINSTANCE.getField_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl Multiplicity}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiplicity() + * @generated + */ + EClass MULTIPLICITY = eINSTANCE.getMultiplicity(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultAssertionImpl Default Assertion}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultAssertionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDefaultAssertion() + * @generated + */ + EClass DEFAULT_ASSERTION = eINSTANCE.getDefaultAssertion(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AssertionImpl Assertion}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AssertionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAssertion() + * @generated + */ + EClass ASSERTION = eINSTANCE.getAssertion(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnboundedMultiplicityImpl Unbounded Multiplicity}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnboundedMultiplicityImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnboundedMultiplicity() + * @generated + */ + EClass UNBOUNDED_MULTIPLICITY = eINSTANCE.getUnboundedMultiplicity(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl Exact Multiplicity}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactMultiplicity() + * @generated + */ + EClass EXACT_MULTIPLICITY = eINSTANCE.getExactMultiplicity(); + + /** + * The meta object literal for the 'Value' attribute feature. + * + * + * @generated + */ + EAttribute EXACT_MULTIPLICITY__VALUE = eINSTANCE.getExactMultiplicity_Value(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl Bounded Multiplicity}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedMultiplicity() + * @generated + */ + EClass BOUNDED_MULTIPLICITY = eINSTANCE.getBoundedMultiplicity(); + + /** + * The meta object literal for the 'Lower Bound' attribute feature. + * + * + * @generated + */ + EAttribute BOUNDED_MULTIPLICITY__LOWER_BOUND = eINSTANCE.getBoundedMultiplicity_LowerBound(); + + /** + * The meta object literal for the 'Upper Bound' attribute feature. + * + * + * @generated + */ + EAttribute BOUNDED_MULTIPLICITY__UPPER_BOUND = eINSTANCE.getBoundedMultiplicity_UpperBound(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes Inline Predicate Attrributes}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInlinePredicateAttrributes() + * @generated + */ + EClass INLINE_PREDICATE_ATTRRIBUTES = eINSTANCE.getInlinePredicateAttrributes(); + + /** + * The meta object literal for the 'Error' attribute feature. + * + * + * @generated + */ + EAttribute INLINE_PREDICATE_ATTRRIBUTES__ERROR = eINSTANCE.getInlinePredicateAttrributes_Error(); + + /** + * The meta object literal for the 'Functional' attribute feature. + * + * + * @generated + */ + EAttribute INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL = eINSTANCE.getInlinePredicateAttrributes_Functional(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl Aggregation Operator}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregationOperator() + * @generated + */ + EClass AGGREGATION_OPERATOR = eINSTANCE.getAggregationOperator(); + + /** + * The meta object literal for the 'Argument Type' reference feature. + * + * + * @generated + */ + EReference AGGREGATION_OPERATOR__ARGUMENT_TYPE = eINSTANCE.getAggregationOperator_ArgumentType(); + + /** + * The meta object literal for the 'Result Type' reference feature. + * + * + * @generated + */ + EReference AGGREGATION_OPERATOR__RESULT_TYPE = eINSTANCE.getAggregationOperator_ResultType(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl Problem}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getProblem() + * @generated + */ + EClass PROBLEM = eINSTANCE.getProblem(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute PROBLEM__NAME = eINSTANCE.getProblem_Name(); + + /** + * The meta object literal for the 'Statements' containment reference list feature. + * + * + * @generated + */ + EReference PROBLEM__STATEMENTS = eINSTANCE.getProblem_Statements(); + + /** + * The meta object literal for the 'Symbols' containment reference list feature. + * + * + * @generated + */ + EReference PROBLEM__SYMBOLS = eINSTANCE.getProblem_Symbols(); + + /** + * The meta object literal for the 'Imports' containment reference list feature. + * + * + * @generated + */ + EReference PROBLEM__IMPORTS = eINSTANCE.getProblem_Imports(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl Typed Star Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedStarArgument() + * @generated + */ + EClass TYPED_STAR_ARGUMENT = eINSTANCE.getTypedStarArgument(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl Typed Variable Argument}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedVariableArgument() + * @generated + */ + EClass TYPED_VARIABLE_ARGUMENT = eINSTANCE.getTypedVariableArgument(); + + /** + * The meta object literal for the 'Name' attribute feature. + * + * + * @generated + */ + EAttribute TYPED_VARIABLE_ARGUMENT__NAME = eINSTANCE.getTypedVariableArgument_Name(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl Unnamed Error Predicate Defintion}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnnamedErrorPredicateDefintion() + * @generated + */ + EClass UNNAMED_ERROR_PREDICATE_DEFINTION = eINSTANCE.getUnnamedErrorPredicateDefintion(); + + /** + * The meta object literal for the 'Argument List' containment reference feature. + * + * + * @generated + */ + EReference UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST = eINSTANCE + .getUnnamedErrorPredicateDefintion_ArgumentList(); + + /** + * The meta object literal for the 'Body' containment reference feature. + * + * + * @generated + */ + EReference UNNAMED_ERROR_PREDICATE_DEFINTION__BODY = eINSTANCE.getUnnamedErrorPredicateDefintion_Body(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl Objective Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveDeclaration() + * @generated + */ + EClass OBJECTIVE_DECLARATION = eINSTANCE.getObjectiveDeclaration(); + + /** + * The meta object literal for the 'Kind' attribute feature. + * + * + * @generated + */ + EAttribute OBJECTIVE_DECLARATION__KIND = eINSTANCE.getObjectiveDeclaration_Kind(); + + /** + * The meta object literal for the 'Objective' containment reference feature. + * + * + * @generated + */ + EReference OBJECTIVE_DECLARATION__OBJECTIVE = eINSTANCE.getObjectiveDeclaration_Objective(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl Scope Declaration}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getScopeDeclaration() + * @generated + */ + EClass SCOPE_DECLARATION = eINSTANCE.getScopeDeclaration(); + + /** + * The meta object literal for the 'Type' reference feature. + * + * + * @generated + */ + EReference SCOPE_DECLARATION__TYPE = eINSTANCE.getScopeDeclaration_Type(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl Exact Scope}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactScope() + * @generated + */ + EClass EXACT_SCOPE = eINSTANCE.getExactScope(); + + /** + * The meta object literal for the 'Size' attribute feature. + * + * + * @generated + */ + EAttribute EXACT_SCOPE__SIZE = eINSTANCE.getExactScope_Size(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl Bounded Scope}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedScope() + * @generated + */ + EClass BOUNDED_SCOPE = eINSTANCE.getBoundedScope(); + + /** + * The meta object literal for the 'Lower Bound' attribute feature. + * + * + * @generated + */ + EAttribute BOUNDED_SCOPE__LOWER_BOUND = eINSTANCE.getBoundedScope_LowerBound(); + + /** + * The meta object literal for the 'Upper Bound' attribute feature. + * + * + * @generated + */ + EAttribute BOUNDED_SCOPE__UPPER_BOUND = eINSTANCE.getBoundedScope_UpperBound(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl Lower Bounded Scope}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLowerBoundedScope() + * @generated + */ + EClass LOWER_BOUNDED_SCOPE = eINSTANCE.getLowerBoundedScope(); + + /** + * The meta object literal for the 'Lower Bound' attribute feature. + * + * + * @generated + */ + EAttribute LOWER_BOUNDED_SCOPE__LOWER_BOUND = eINSTANCE.getLowerBoundedScope_LowerBound(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl Namespace Import}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNamespaceImport() + * @generated + */ + EClass NAMESPACE_IMPORT = eINSTANCE.getNamespaceImport(); + + /** + * The meta object literal for the 'Imported Namespace' attribute feature. + * + * + * @generated + */ + EAttribute NAMESPACE_IMPORT__IMPORTED_NAMESPACE = eINSTANCE.getNamespaceImport_ImportedNamespace(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl Import}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getImport() + * @generated + */ + EClass IMPORT = eINSTANCE.getImport(); + + /** + * The meta object literal for the 'Alias' attribute feature. + * + * + * @generated + */ + EAttribute IMPORT__ALIAS = eINSTANCE.getImport_Alias(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl Uri Import}' class. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUriImport() + * @generated + */ + EClass URI_IMPORT = eINSTANCE.getUriImport(); + + /** + * The meta object literal for the 'Uri' attribute feature. + * + * + * @generated + */ + EAttribute URI_IMPORT__URI = eINSTANCE.getUriImport_Uri(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator Unary Operator}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryOperator() + * @generated + */ + EEnum UNARY_OPERATOR = eINSTANCE.getUnaryOperator(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator Binary Operator}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryOperator() + * @generated + */ + EEnum BINARY_OPERATOR = eINSTANCE.getBinaryOperator(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue Logic Value}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicValue() + * @generated + */ + EEnum LOGIC_VALUE = eINSTANCE.getLogicValue(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind Objective Kind}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveKind() + * @generated + */ + EEnum OBJECTIVE_KIND = eINSTANCE.getObjectiveKind(); + + /** + * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.AttributeKind Attribute Kind}' enum. + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.AttributeKind + * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAttributeKind() + * @generated + */ + EEnum ATTRIBUTE_KIND = eINSTANCE.getAttributeKind(); + + } + +} //SolverLanguagePackage diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java new file mode 100644 index 00000000..c81bd654 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Star Argument'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStarArgument() + * @model + * @generated + */ +public interface StarArgument extends Argument { +} // StarArgument diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java new file mode 100644 index 00000000..0db8c675 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java @@ -0,0 +1,18 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Statement'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStatement() + * @model abstract="true" + * @generated + */ +public interface Statement extends EObject { +} // Statement diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java new file mode 100644 index 00000000..cc361917 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'String Literal'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue Value}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringLiteral() + * @model + * @generated + */ +public interface StringLiteral extends Literal { + /** + * Returns the value of the 'Value' attribute. + * + * + * @return the value of the 'Value' attribute. + * @see #setValue(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringLiteral_Value() + * @model + * @generated + */ + String getValue(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue Value}' attribute. + * + * + * @param value the new value of the 'Value' attribute. + * @see #getValue() + * @generated + */ + void setValue(String value); + +} // StringLiteral diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java new file mode 100644 index 00000000..7f2111bd --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java @@ -0,0 +1,36 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Switch'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases Cases}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSwitch() + * @model + * @generated + */ +public interface Switch extends Expression { + /** + * Returns the value of the 'Cases' containment reference list. + * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Case}. + * + * + * @return the value of the 'Cases' containment reference list. + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSwitch_Cases() + * @model containment="true" + * @generated + */ + EList getCases(); + +} // Switch diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java new file mode 100644 index 00000000..bf8f220b --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Symbol.java @@ -0,0 +1,46 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Symbol'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Symbol#getName Name}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSymbol() + * @model abstract="true" + * @generated + */ +public interface Symbol extends EObject { + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSymbol_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // Symbol diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypeReference.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypeReference.java new file mode 100644 index 00000000..9a448bba --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypeReference.java @@ -0,0 +1,69 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Type Reference'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#isForceObjectType Force Object Type}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#getType Type}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypeReference() + * @model + * @generated + */ +public interface TypeReference extends EObject { + /** + * Returns the value of the 'Force Object Type' attribute. + * + * + * @return the value of the 'Force Object Type' attribute. + * @see #setForceObjectType(boolean) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypeReference_ForceObjectType() + * @model + * @generated + */ + boolean isForceObjectType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#isForceObjectType Force Object Type}' attribute. + * + * + * @param value the new value of the 'Force Object Type' attribute. + * @see #isForceObjectType() + * @generated + */ + void setForceObjectType(boolean value); + + /** + * Returns the value of the 'Type' reference. + * + * + * @return the value of the 'Type' reference. + * @see #setType(Symbol) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypeReference_Type() + * @model + * @generated + */ + Symbol getType(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference#getType Type}' reference. + * + * + * @param value the new value of the 'Type' reference. + * @see #getType() + * @generated + */ + void setType(Symbol value); + +} // TypeReference diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java new file mode 100644 index 00000000..b9b411f5 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Typed Argument'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getTypeReference Type Reference}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedArgument() + * @model abstract="true" + * @generated + */ +public interface TypedArgument extends Argument { + /** + * Returns the value of the 'Type Reference' containment reference. + * + * + * @return the value of the 'Type Reference' containment reference. + * @see #setTypeReference(TypeReference) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedArgument_TypeReference() + * @model containment="true" + * @generated + */ + TypeReference getTypeReference(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getTypeReference Type Reference}' containment reference. + * + * + * @param value the new value of the 'Type Reference' containment reference. + * @see #getTypeReference() + * @generated + */ + void setTypeReference(TypeReference value); + +} // TypedArgument diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java new file mode 100644 index 00000000..0693f4e0 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Typed Star Argument'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedStarArgument() + * @model + * @generated + */ +public interface TypedStarArgument extends TypedArgument { +} // TypedStarArgument diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedVariableArgument.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedVariableArgument.java new file mode 100644 index 00000000..8a86fd9a --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedVariableArgument.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Typed Variable Argument'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument#getName Name}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedVariableArgument() + * @model + * @generated + */ +public interface TypedVariableArgument extends TypedArgument { + /** + * Returns the value of the 'Name' attribute. + * + * + * @return the value of the 'Name' attribute. + * @see #setName(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedVariableArgument_Name() + * @model + * @generated + */ + String getName(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument#getName Name}' attribute. + * + * + * @param value the new value of the 'Name' attribute. + * @see #getName() + * @generated + */ + void setName(String value); + +} // TypedVariableArgument diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java new file mode 100644 index 00000000..a317b366 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java @@ -0,0 +1,70 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Unary Expression'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody Body}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp Op}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression() + * @model + * @generated + */ +public interface UnaryExpression extends Expression { + /** + * Returns the value of the 'Body' containment reference. + * + * + * @return the value of the 'Body' containment reference. + * @see #setBody(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression_Body() + * @model containment="true" + * @generated + */ + Expression getBody(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody Body}' containment reference. + * + * + * @param value the new value of the 'Body' containment reference. + * @see #getBody() + * @generated + */ + void setBody(Expression value); + + /** + * Returns the value of the 'Op' attribute. + * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator}. + * + * + * @return the value of the 'Op' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator + * @see #setOp(UnaryOperator) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression_Op() + * @model + * @generated + */ + UnaryOperator getOp(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp Op}' attribute. + * + * + * @param value the new value of the 'Op' attribute. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator + * @see #getOp() + * @generated + */ + void setOp(UnaryOperator value); + +} // UnaryExpression diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOperator.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOperator.java new file mode 100644 index 00000000..ef404f46 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOperator.java @@ -0,0 +1,250 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Unary Operator', + * and utility methods for working with them. + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryOperator() + * @model + * @generated + */ +public enum UnaryOperator implements Enumerator { + /** + * The 'NOT' literal object. + * + * + * @see #NOT_VALUE + * @generated + * @ordered + */ + NOT(0, "NOT", "NOT"), + + /** + * The 'PLUS' literal object. + * + * + * @see #PLUS_VALUE + * @generated + * @ordered + */ + PLUS(1, "PLUS", "PLUS"), + + /** + * The 'MINUS' literal object. + * + * + * @see #MINUS_VALUE + * @generated + * @ordered + */ + MINUS(2, "MINUS", "MINUS"), + + /** + * The 'MAYBE' literal object. + * + * + * @see #MAYBE_VALUE + * @generated + * @ordered + */ + MAYBE(3, "MAYBE", "MAYBE"); + + /** + * The 'NOT' literal value. + * + * + * @see #NOT + * @model + * @generated + * @ordered + */ + public static final int NOT_VALUE = 0; + + /** + * The 'PLUS' literal value. + * + * + * @see #PLUS + * @model + * @generated + * @ordered + */ + public static final int PLUS_VALUE = 1; + + /** + * The 'MINUS' literal value. + * + * + * @see #MINUS + * @model + * @generated + * @ordered + */ + public static final int MINUS_VALUE = 2; + + /** + * The 'MAYBE' literal value. + * + * + * @see #MAYBE + * @model + * @generated + * @ordered + */ + public static final int MAYBE_VALUE = 3; + + /** + * An array of all the 'Unary Operator' enumerators. + * + * + * @generated + */ + private static final UnaryOperator[] VALUES_ARRAY = new UnaryOperator[] { NOT, PLUS, MINUS, MAYBE, }; + + /** + * A public read-only list of all the 'Unary Operator' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Unary Operator' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static UnaryOperator get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + UnaryOperator result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Unary Operator' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static UnaryOperator getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + UnaryOperator result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Unary Operator' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static UnaryOperator get(int value) { + switch (value) { + case NOT_VALUE: + return NOT; + case PLUS_VALUE: + return PLUS; + case MINUS_VALUE: + return MINUS; + case MAYBE_VALUE: + return MAYBE; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private UnaryOperator(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //UnaryOperator diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnboundedMultiplicity.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnboundedMultiplicity.java new file mode 100644 index 00000000..b6ce711e --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnboundedMultiplicity.java @@ -0,0 +1,16 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Unbounded Multiplicity'. + * + * + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnboundedMultiplicity() + * @model + * @generated + */ +public interface UnboundedMultiplicity extends Multiplicity { +} // UnboundedMultiplicity diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPredicateDefintion.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPredicateDefintion.java new file mode 100644 index 00000000..9b9fc4eb --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPredicateDefintion.java @@ -0,0 +1,67 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Unnamed Error Predicate Defintion'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getArgumentList Argument List}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getBody Body}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPredicateDefintion() + * @model + * @generated + */ +public interface UnnamedErrorPredicateDefintion extends Statement { + /** + * Returns the value of the 'Argument List' containment reference. + * + * + * @return the value of the 'Argument List' containment reference. + * @see #setArgumentList(ArgumentList) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPredicateDefintion_ArgumentList() + * @model containment="true" + * @generated + */ + ArgumentList getArgumentList(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getArgumentList Argument List}' containment reference. + * + * + * @param value the new value of the 'Argument List' containment reference. + * @see #getArgumentList() + * @generated + */ + void setArgumentList(ArgumentList value); + + /** + * Returns the value of the 'Body' containment reference. + * + * + * @return the value of the 'Body' containment reference. + * @see #setBody(Expression) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPredicateDefintion_Body() + * @model containment="true" + * @generated + */ + Expression getBody(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion#getBody Body}' containment reference. + * + * + * @param value the new value of the 'Body' containment reference. + * @see #getBody() + * @generated + */ + void setBody(Expression value); + +} // UnnamedErrorPredicateDefintion diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UriImport.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UriImport.java new file mode 100644 index 00000000..1256deb8 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/UriImport.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Uri Import'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UriImport#getUri Uri}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUriImport() + * @model + * @generated + */ +public interface UriImport extends Import { + /** + * Returns the value of the 'Uri' attribute. + * + * + * @return the value of the 'Uri' attribute. + * @see #setUri(String) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUriImport_Uri() + * @model + * @generated + */ + String getUri(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport#getUri Uri}' attribute. + * + * + * @param value the new value of the 'Uri' attribute. + * @see #getUri() + * @generated + */ + void setUri(String value); + +} // UriImport diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java new file mode 100644 index 00000000..5e5f9298 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java @@ -0,0 +1,44 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage; + +/** + * + * A representation of the model object 'Variable'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getTypeReference Type Reference}
  • + *
+ * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getVariable() + * @model + * @generated + */ +public interface Variable extends Symbol { + /** + * Returns the value of the 'Type Reference' containment reference. + * + * + * @return the value of the 'Type Reference' containment reference. + * @see #setTypeReference(TypeReference) + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getVariable_TypeReference() + * @model containment="true" + * @generated + */ + TypeReference getTypeReference(); + + /** + * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getTypeReference Type Reference}' containment reference. + * + * + * @param value the new value of the 'Type Reference' containment reference. + * @see #getTypeReference() + * @generated + */ + void setTypeReference(TypeReference value); + +} // Variable diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AbstractAssertionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AbstractAssertionImpl.java new file mode 100644 index 00000000..ec01140f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AbstractAssertionImpl.java @@ -0,0 +1,255 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Abstract Assertion'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl#getExpression Expression}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AbstractAssertionImpl#getRange Range}
  • + *
+ * + * @generated + */ +public abstract class AbstractAssertionImpl extends StatementImpl implements AbstractAssertion { + /** + * The cached value of the '{@link #getExpression() Expression}' containment reference. + * + * + * @see #getExpression() + * @generated + * @ordered + */ + protected Expression expression; + + /** + * The cached value of the '{@link #getRange() Range}' containment reference. + * + * + * @see #getRange() + * @generated + * @ordered + */ + protected Expression range; + + /** + * + * + * @generated + */ + protected AbstractAssertionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.ABSTRACT_ASSERTION; + } + + /** + * + * + * @generated + */ + public Expression getExpression() { + return expression; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetExpression(Expression newExpression, NotificationChain msgs) { + Expression oldExpression = expression; + expression = newExpression; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION, oldExpression, newExpression); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setExpression(Expression newExpression) { + if (newExpression != expression) { + NotificationChain msgs = null; + if (expression != null) + msgs = ((InternalEObject) expression).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION, null, msgs); + if (newExpression != null) + msgs = ((InternalEObject) newExpression).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION, null, msgs); + msgs = basicSetExpression(newExpression, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION, + newExpression, newExpression)); + } + + /** + * + * + * @generated + */ + public Expression getRange() { + return range; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRange(Expression newRange, NotificationChain msgs) { + Expression oldRange = range; + range = newRange; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE, oldRange, newRange); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRange(Expression newRange) { + if (newRange != range) { + NotificationChain msgs = null; + if (range != null) + msgs = ((InternalEObject) range).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE, null, msgs); + if (newRange != null) + msgs = ((InternalEObject) newRange).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE, null, msgs); + msgs = basicSetRange(newRange, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE, + newRange, newRange)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION: + return basicSetExpression(null, msgs); + case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE: + return basicSetRange(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION: + return getExpression(); + case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE: + return getRange(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION: + setExpression((Expression) newValue); + return; + case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE: + setRange((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION: + setExpression((Expression) null); + return; + case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE: + setRange((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ABSTRACT_ASSERTION__EXPRESSION: + return expression != null; + case SolverLanguagePackage.ABSTRACT_ASSERTION__RANGE: + return range != null; + } + return super.eIsSet(featureID); + } + +} //AbstractAssertionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregateExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregateExpressionImpl.java new file mode 100644 index 00000000..9427a84d --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregateExpressionImpl.java @@ -0,0 +1,228 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Variable; + +/** + * + * An implementation of the model object 'Aggregate Expression'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl#getForallVariables Forall Variables}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregateExpressionImpl#getCondition Condition}
  • + *
+ * + * @generated + */ +public abstract class AggregateExpressionImpl extends ExpressionImpl implements AggregateExpression { + /** + * The cached value of the '{@link #getForallVariables() Forall Variables}' containment reference list. + * + * + * @see #getForallVariables() + * @generated + * @ordered + */ + protected EList forallVariables; + + /** + * The cached value of the '{@link #getCondition() Condition}' containment reference. + * + * + * @see #getCondition() + * @generated + * @ordered + */ + protected Expression condition; + + /** + * + * + * @generated + */ + protected AggregateExpressionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.AGGREGATE_EXPRESSION; + } + + /** + * + * + * @generated + */ + public EList getForallVariables() { + if (forallVariables == null) { + forallVariables = new EObjectContainmentEList(Variable.class, this, + SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES); + } + return forallVariables; + } + + /** + * + * + * @generated + */ + public Expression getCondition() { + return condition; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) { + Expression oldCondition = condition; + condition = newCondition; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION, oldCondition, newCondition); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setCondition(Expression newCondition) { + if (newCondition != condition) { + NotificationChain msgs = null; + if (condition != null) + msgs = ((InternalEObject) condition).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION, null, msgs); + if (newCondition != null) + msgs = ((InternalEObject) newCondition).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION, null, msgs); + msgs = basicSetCondition(newCondition, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION, + newCondition, newCondition)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES: + return ((InternalEList) getForallVariables()).basicRemove(otherEnd, msgs); + case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION: + return basicSetCondition(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES: + return getForallVariables(); + case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION: + return getCondition(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES: + getForallVariables().clear(); + getForallVariables().addAll((Collection) newValue); + return; + case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION: + setCondition((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES: + getForallVariables().clear(); + return; + case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION: + setCondition((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATE_EXPRESSION__FORALL_VARIABLES: + return forallVariables != null && !forallVariables.isEmpty(); + case SolverLanguagePackage.AGGREGATE_EXPRESSION__CONDITION: + return condition != null; + } + return super.eIsSet(featureID); + } + +} //AggregateExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java new file mode 100644 index 00000000..f67de89a --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java @@ -0,0 +1,245 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Aggregation; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Aggregation'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl#getValue Value}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl#getOp Op}
  • + *
+ * + * @generated + */ +public class AggregationImpl extends AggregateExpressionImpl implements Aggregation { + /** + * The cached value of the '{@link #getValue() Value}' containment reference. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected Expression value; + + /** + * The cached value of the '{@link #getOp() Op}' reference. + * + * + * @see #getOp() + * @generated + * @ordered + */ + protected Symbol op; + + /** + * + * + * @generated + */ + protected AggregationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.AGGREGATION; + } + + /** + * + * + * @generated + */ + public Expression getValue() { + return value; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetValue(Expression newValue, NotificationChain msgs) { + Expression oldValue = value; + value = newValue; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.AGGREGATION__VALUE, oldValue, newValue); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setValue(Expression newValue) { + if (newValue != value) { + NotificationChain msgs = null; + if (value != null) + msgs = ((InternalEObject) value).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__VALUE, null, msgs); + if (newValue != null) + msgs = ((InternalEObject) newValue).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__VALUE, null, msgs); + msgs = basicSetValue(newValue, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__VALUE, newValue, + newValue)); + } + + /** + * + * + * @generated + */ + public Symbol getOp() { + if (op != null && op.eIsProxy()) { + InternalEObject oldOp = (InternalEObject) op; + op = (Symbol) eResolveProxy(oldOp); + if (op != oldOp) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.AGGREGATION__OP, + oldOp, op)); + } + } + return op; + } + + /** + * + * + * @generated + */ + public Symbol basicGetOp() { + return op; + } + + /** + * + * + * @generated + */ + public void setOp(Symbol newOp) { + Symbol oldOp = op; + op = newOp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__OP, oldOp, op)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION__VALUE: + return basicSetValue(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION__VALUE: + return getValue(); + case SolverLanguagePackage.AGGREGATION__OP: + if (resolve) + return getOp(); + return basicGetOp(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION__VALUE: + setValue((Expression) newValue); + return; + case SolverLanguagePackage.AGGREGATION__OP: + setOp((Symbol) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION__VALUE: + setValue((Expression) null); + return; + case SolverLanguagePackage.AGGREGATION__OP: + setOp((Symbol) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION__VALUE: + return value != null; + case SolverLanguagePackage.AGGREGATION__OP: + return op != null; + } + return super.eIsSet(featureID); + } + +} //AggregationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationOperatorImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationOperatorImpl.java new file mode 100644 index 00000000..6842754e --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationOperatorImpl.java @@ -0,0 +1,222 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator; +import org.eclipse.viatra.solver.language.solverLanguage.Datatype; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Aggregation Operator'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl#getArgumentType Argument Type}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationOperatorImpl#getResultType Result Type}
  • + *
+ * + * @generated + */ +public class AggregationOperatorImpl extends SymbolImpl implements AggregationOperator { + /** + * The cached value of the '{@link #getArgumentType() Argument Type}' reference. + * + * + * @see #getArgumentType() + * @generated + * @ordered + */ + protected Datatype argumentType; + + /** + * The cached value of the '{@link #getResultType() Result Type}' reference. + * + * + * @see #getResultType() + * @generated + * @ordered + */ + protected Datatype resultType; + + /** + * + * + * @generated + */ + protected AggregationOperatorImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.AGGREGATION_OPERATOR; + } + + /** + * + * + * @generated + */ + public Datatype getArgumentType() { + if (argumentType != null && argumentType.eIsProxy()) { + InternalEObject oldArgumentType = (InternalEObject) argumentType; + argumentType = (Datatype) eResolveProxy(oldArgumentType); + if (argumentType != oldArgumentType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE, oldArgumentType, argumentType)); + } + } + return argumentType; + } + + /** + * + * + * @generated + */ + public Datatype basicGetArgumentType() { + return argumentType; + } + + /** + * + * + * @generated + */ + public void setArgumentType(Datatype newArgumentType) { + Datatype oldArgumentType = argumentType; + argumentType = newArgumentType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE, oldArgumentType, argumentType)); + } + + /** + * + * + * @generated + */ + public Datatype getResultType() { + if (resultType != null && resultType.eIsProxy()) { + InternalEObject oldResultType = (InternalEObject) resultType; + resultType = (Datatype) eResolveProxy(oldResultType); + if (resultType != oldResultType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE, oldResultType, resultType)); + } + } + return resultType; + } + + /** + * + * + * @generated + */ + public Datatype basicGetResultType() { + return resultType; + } + + /** + * + * + * @generated + */ + public void setResultType(Datatype newResultType) { + Datatype oldResultType = resultType; + resultType = newResultType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE, oldResultType, resultType)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE: + if (resolve) + return getArgumentType(); + return basicGetArgumentType(); + case SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE: + if (resolve) + return getResultType(); + return basicGetResultType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE: + setArgumentType((Datatype) newValue); + return; + case SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE: + setResultType((Datatype) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE: + setArgumentType((Datatype) null); + return; + case SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE: + setResultType((Datatype) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.AGGREGATION_OPERATOR__ARGUMENT_TYPE: + return argumentType != null; + case SolverLanguagePackage.AGGREGATION_OPERATOR__RESULT_TYPE: + return resultType != null; + } + return super.eIsSet(featureID); + } + +} //AggregationOperatorImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java new file mode 100644 index 00000000..c245d5aa --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java @@ -0,0 +1,39 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Argument; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Argument'. + * + * + * @generated + */ +public abstract class ArgumentImpl extends MinimalEObjectImpl.Container implements Argument { + /** + * + * + * @generated + */ + protected ArgumentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.ARGUMENT; + } + +} //ArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java new file mode 100644 index 00000000..9d6cc468 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java @@ -0,0 +1,153 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.Argument; +import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Argument List'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl#getArguments Arguments}
  • + *
+ * + * @generated + */ +public class ArgumentListImpl extends MinimalEObjectImpl.Container implements ArgumentList { + /** + * The cached value of the '{@link #getArguments() Arguments}' containment reference list. + * + * + * @see #getArguments() + * @generated + * @ordered + */ + protected EList arguments; + + /** + * + * + * @generated + */ + protected ArgumentListImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.ARGUMENT_LIST; + } + + /** + * + * + * @generated + */ + public EList getArguments() { + if (arguments == null) { + arguments = new EObjectContainmentEList(Argument.class, this, + SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS); + } + return arguments; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: + return ((InternalEList) getArguments()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: + return getArguments(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: + getArguments().clear(); + getArguments().addAll((Collection) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: + getArguments().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: + return arguments != null && !arguments.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ArgumentListImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AssertionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AssertionImpl.java new file mode 100644 index 00000000..8b4e2cde --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AssertionImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Assertion; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Assertion'. + * + * + * @generated + */ +public class AssertionImpl extends AbstractAssertionImpl implements Assertion { + /** + * + * + * @generated + */ + protected AssertionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.ASSERTION; + } + +} //AssertionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AttributeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AttributeImpl.java new file mode 100644 index 00000000..c9974907 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AttributeImpl.java @@ -0,0 +1,230 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Attribute; +import org.eclipse.viatra.solver.language.solverLanguage.AttributeKind; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Attribute'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl#getTarget Target}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AttributeImpl#getKind Kind}
  • + *
+ * + * @generated + */ +public abstract class AttributeImpl extends StatementImpl implements Attribute { + /** + * The cached value of the '{@link #getTarget() Target}' reference. + * + * + * @see #getTarget() + * @generated + * @ordered + */ + protected Symbol target; + + /** + * The default value of the '{@link #getKind() Kind}' attribute. + * + * + * @see #getKind() + * @generated + * @ordered + */ + protected static final AttributeKind KIND_EDEFAULT = AttributeKind.FUNCTIONAL; + + /** + * The cached value of the '{@link #getKind() Kind}' attribute. + * + * + * @see #getKind() + * @generated + * @ordered + */ + protected AttributeKind kind = KIND_EDEFAULT; + + /** + * + * + * @generated + */ + protected AttributeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.ATTRIBUTE; + } + + /** + * + * + * @generated + */ + public Symbol getTarget() { + if (target != null && target.eIsProxy()) { + InternalEObject oldTarget = (InternalEObject) target; + target = (Symbol) eResolveProxy(oldTarget); + if (target != oldTarget) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.ATTRIBUTE__TARGET, + oldTarget, target)); + } + } + return target; + } + + /** + * + * + * @generated + */ + public Symbol basicGetTarget() { + return target; + } + + /** + * + * + * @generated + */ + public void setTarget(Symbol newTarget) { + Symbol oldTarget = target; + target = newTarget; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ATTRIBUTE__TARGET, oldTarget, + target)); + } + + /** + * + * + * @generated + */ + public AttributeKind getKind() { + return kind; + } + + /** + * + * + * @generated + */ + public void setKind(AttributeKind newKind) { + AttributeKind oldKind = kind; + kind = newKind == null ? KIND_EDEFAULT : newKind; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ATTRIBUTE__KIND, oldKind, + kind)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.ATTRIBUTE__TARGET: + if (resolve) + return getTarget(); + return basicGetTarget(); + case SolverLanguagePackage.ATTRIBUTE__KIND: + return getKind(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.ATTRIBUTE__TARGET: + setTarget((Symbol) newValue); + return; + case SolverLanguagePackage.ATTRIBUTE__KIND: + setKind((AttributeKind) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ATTRIBUTE__TARGET: + setTarget((Symbol) null); + return; + case SolverLanguagePackage.ATTRIBUTE__KIND: + setKind(KIND_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ATTRIBUTE__TARGET: + return target != null; + case SolverLanguagePackage.ATTRIBUTE__KIND: + return kind != KIND_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (kind: "); + result.append(kind); + result.append(')'); + return result.toString(); + } + +} //AttributeImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BaseRelationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BaseRelationImpl.java new file mode 100644 index 00000000..797b3a48 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BaseRelationImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.BaseRelation; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Base Relation'. + * + * + * @generated + */ +public class BaseRelationImpl extends RelationImpl implements BaseRelation { + /** + * + * + * @generated + */ + protected BaseRelationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.BASE_RELATION; + } + +} //BaseRelationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java new file mode 100644 index 00000000..e93a12ce --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java @@ -0,0 +1,326 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression; +import org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Binary Expression'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getOp Op}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getLeft Left}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getRight Right}
  • + *
+ * + * @generated + */ +public class BinaryExpressionImpl extends ExpressionImpl implements BinaryExpression { + /** + * The default value of the '{@link #getOp() Op}' attribute. + * + * + * @see #getOp() + * @generated + * @ordered + */ + protected static final BinaryOperator OP_EDEFAULT = BinaryOperator.PLUS; + + /** + * The cached value of the '{@link #getOp() Op}' attribute. + * + * + * @see #getOp() + * @generated + * @ordered + */ + protected BinaryOperator op = OP_EDEFAULT; + + /** + * The cached value of the '{@link #getLeft() Left}' containment reference. + * + * + * @see #getLeft() + * @generated + * @ordered + */ + protected Expression left; + + /** + * The cached value of the '{@link #getRight() Right}' containment reference. + * + * + * @see #getRight() + * @generated + * @ordered + */ + protected Expression right; + + /** + * + * + * @generated + */ + protected BinaryExpressionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.BINARY_EXPRESSION; + } + + /** + * + * + * @generated + */ + public BinaryOperator getOp() { + return op; + } + + /** + * + * + * @generated + */ + public void setOp(BinaryOperator newOp) { + BinaryOperator oldOp = op; + op = newOp == null ? OP_EDEFAULT : newOp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__OP, oldOp, + op)); + } + + /** + * + * + * @generated + */ + public Expression getLeft() { + return left; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLeft(Expression newLeft, NotificationChain msgs) { + Expression oldLeft = left; + left = newLeft; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.BINARY_EXPRESSION__LEFT, oldLeft, newLeft); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLeft(Expression newLeft) { + if (newLeft != left) { + NotificationChain msgs = null; + if (left != null) + msgs = ((InternalEObject) left).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__LEFT, null, msgs); + if (newLeft != null) + msgs = ((InternalEObject) newLeft).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__LEFT, null, msgs); + msgs = basicSetLeft(newLeft, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__LEFT, + newLeft, newLeft)); + } + + /** + * + * + * @generated + */ + public Expression getRight() { + return right; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetRight(Expression newRight, NotificationChain msgs) { + Expression oldRight = right; + right = newRight; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, oldRight, newRight); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setRight(Expression newRight) { + if (newRight != right) { + NotificationChain msgs = null; + if (right != null) + msgs = ((InternalEObject) right).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, null, msgs); + if (newRight != null) + msgs = ((InternalEObject) newRight).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, null, msgs); + msgs = basicSetRight(newRight, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, + newRight, newRight)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: + return basicSetLeft(null, msgs); + case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: + return basicSetRight(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.BINARY_EXPRESSION__OP: + return getOp(); + case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: + return getLeft(); + case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: + return getRight(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.BINARY_EXPRESSION__OP: + setOp((BinaryOperator) newValue); + return; + case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: + setLeft((Expression) newValue); + return; + case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: + setRight((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.BINARY_EXPRESSION__OP: + setOp(OP_EDEFAULT); + return; + case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: + setLeft((Expression) null); + return; + case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: + setRight((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.BINARY_EXPRESSION__OP: + return op != OP_EDEFAULT; + case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: + return left != null; + case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: + return right != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (op: "); + result.append(op); + result.append(')'); + return result.toString(); + } + +} //BinaryExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java new file mode 100644 index 00000000..c4aa7dfd --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java @@ -0,0 +1,219 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Bounded Multiplicity'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl#getLowerBound Lower Bound}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl#getUpperBound Upper Bound}
  • + *
+ * + * @generated + */ +public class BoundedMultiplicityImpl extends MultiplicityImpl implements BoundedMultiplicity { + /** + * The default value of the '{@link #getLowerBound() Lower Bound}' attribute. + * + * + * @see #getLowerBound() + * @generated + * @ordered + */ + protected static final int LOWER_BOUND_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getLowerBound() Lower Bound}' attribute. + * + * + * @see #getLowerBound() + * @generated + * @ordered + */ + protected int lowerBound = LOWER_BOUND_EDEFAULT; + + /** + * The default value of the '{@link #getUpperBound() Upper Bound}' attribute. + * + * + * @see #getUpperBound() + * @generated + * @ordered + */ + protected static final int UPPER_BOUND_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getUpperBound() Upper Bound}' attribute. + * + * + * @see #getUpperBound() + * @generated + * @ordered + */ + protected int upperBound = UPPER_BOUND_EDEFAULT; + + /** + * + * + * @generated + */ + protected BoundedMultiplicityImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.BOUNDED_MULTIPLICITY; + } + + /** + * + * + * @generated + */ + public int getLowerBound() { + return lowerBound; + } + + /** + * + * + * @generated + */ + public void setLowerBound(int newLowerBound) { + int oldLowerBound = lowerBound; + lowerBound = newLowerBound; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND, oldLowerBound, lowerBound)); + } + + /** + * + * + * @generated + */ + public int getUpperBound() { + return upperBound; + } + + /** + * + * + * @generated + */ + public void setUpperBound(int newUpperBound) { + int oldUpperBound = upperBound; + upperBound = newUpperBound; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND, oldUpperBound, upperBound)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND: + return getLowerBound(); + case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND: + return getUpperBound(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND: + setLowerBound((Integer) newValue); + return; + case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND: + setUpperBound((Integer) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND: + setLowerBound(LOWER_BOUND_EDEFAULT); + return; + case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND: + setUpperBound(UPPER_BOUND_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND: + return lowerBound != LOWER_BOUND_EDEFAULT; + case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND: + return upperBound != UPPER_BOUND_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (lowerBound: "); + result.append(lowerBound); + result.append(", upperBound: "); + result.append(upperBound); + result.append(')'); + return result.toString(); + } + +} //BoundedMultiplicityImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeImpl.java new file mode 100644 index 00000000..acd63c55 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeImpl.java @@ -0,0 +1,219 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.BoundedScope; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Bounded Scope'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl#getLowerBound Lower Bound}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeImpl#getUpperBound Upper Bound}
  • + *
+ * + * @generated + */ +public class BoundedScopeImpl extends ScopeDeclarationImpl implements BoundedScope { + /** + * The default value of the '{@link #getLowerBound() Lower Bound}' attribute. + * + * + * @see #getLowerBound() + * @generated + * @ordered + */ + protected static final int LOWER_BOUND_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getLowerBound() Lower Bound}' attribute. + * + * + * @see #getLowerBound() + * @generated + * @ordered + */ + protected int lowerBound = LOWER_BOUND_EDEFAULT; + + /** + * The default value of the '{@link #getUpperBound() Upper Bound}' attribute. + * + * + * @see #getUpperBound() + * @generated + * @ordered + */ + protected static final int UPPER_BOUND_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getUpperBound() Upper Bound}' attribute. + * + * + * @see #getUpperBound() + * @generated + * @ordered + */ + protected int upperBound = UPPER_BOUND_EDEFAULT; + + /** + * + * + * @generated + */ + protected BoundedScopeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.BOUNDED_SCOPE; + } + + /** + * + * + * @generated + */ + public int getLowerBound() { + return lowerBound; + } + + /** + * + * + * @generated + */ + public void setLowerBound(int newLowerBound) { + int oldLowerBound = lowerBound; + lowerBound = newLowerBound; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND, + oldLowerBound, lowerBound)); + } + + /** + * + * + * @generated + */ + public int getUpperBound() { + return upperBound; + } + + /** + * + * + * @generated + */ + public void setUpperBound(int newUpperBound) { + int oldUpperBound = upperBound; + upperBound = newUpperBound; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND, + oldUpperBound, upperBound)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND: + return getLowerBound(); + case SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND: + return getUpperBound(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND: + setLowerBound((Integer) newValue); + return; + case SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND: + setUpperBound((Integer) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND: + setLowerBound(LOWER_BOUND_EDEFAULT); + return; + case SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND: + setUpperBound(UPPER_BOUND_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.BOUNDED_SCOPE__LOWER_BOUND: + return lowerBound != LOWER_BOUND_EDEFAULT; + case SolverLanguagePackage.BOUNDED_SCOPE__UPPER_BOUND: + return upperBound != UPPER_BOUND_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (lowerBound: "); + result.append(lowerBound); + result.append(", upperBound: "); + result.append(upperBound); + result.append(')'); + return result.toString(); + } + +} //BoundedScopeImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java new file mode 100644 index 00000000..59c2a372 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java @@ -0,0 +1,256 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; +import org.eclipse.viatra.solver.language.solverLanguage.Call; +import org.eclipse.viatra.solver.language.solverLanguage.Reference; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Call'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl#getFunctor Functor}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl#getArgumentList Argument List}
  • + *
+ * + * @generated + */ +public class CallImpl extends ExpressionImpl implements Call { + /** + * The cached value of the '{@link #getFunctor() Functor}' containment reference. + * + * + * @see #getFunctor() + * @generated + * @ordered + */ + protected Reference functor; + + /** + * The cached value of the '{@link #getArgumentList() Argument List}' containment reference. + * + * + * @see #getArgumentList() + * @generated + * @ordered + */ + protected ArgumentList argumentList; + + /** + * + * + * @generated + */ + protected CallImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.CALL; + } + + /** + * + * + * @generated + */ + public Reference getFunctor() { + return functor; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFunctor(Reference newFunctor, NotificationChain msgs) { + Reference oldFunctor = functor; + functor = newFunctor; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CALL__FUNCTOR, oldFunctor, newFunctor); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setFunctor(Reference newFunctor) { + if (newFunctor != functor) { + NotificationChain msgs = null; + if (functor != null) + msgs = ((InternalEObject) functor).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__FUNCTOR, null, msgs); + if (newFunctor != null) + msgs = ((InternalEObject) newFunctor).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__FUNCTOR, null, msgs); + msgs = basicSetFunctor(newFunctor, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__FUNCTOR, newFunctor, + newFunctor)); + } + + /** + * + * + * @generated + */ + public ArgumentList getArgumentList() { + return argumentList; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) { + ArgumentList oldArgumentList = argumentList; + argumentList = newArgumentList; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CALL__ARGUMENT_LIST, oldArgumentList, newArgumentList); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setArgumentList(ArgumentList newArgumentList) { + if (newArgumentList != argumentList) { + NotificationChain msgs = null; + if (argumentList != null) + msgs = ((InternalEObject) argumentList).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__ARGUMENT_LIST, null, msgs); + if (newArgumentList != null) + msgs = ((InternalEObject) newArgumentList).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__ARGUMENT_LIST, null, msgs); + msgs = basicSetArgumentList(newArgumentList, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__ARGUMENT_LIST, + newArgumentList, newArgumentList)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.CALL__FUNCTOR: + return basicSetFunctor(null, msgs); + case SolverLanguagePackage.CALL__ARGUMENT_LIST: + return basicSetArgumentList(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.CALL__FUNCTOR: + return getFunctor(); + case SolverLanguagePackage.CALL__ARGUMENT_LIST: + return getArgumentList(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.CALL__FUNCTOR: + setFunctor((Reference) newValue); + return; + case SolverLanguagePackage.CALL__ARGUMENT_LIST: + setArgumentList((ArgumentList) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CALL__FUNCTOR: + setFunctor((Reference) null); + return; + case SolverLanguagePackage.CALL__ARGUMENT_LIST: + setArgumentList((ArgumentList) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CALL__FUNCTOR: + return functor != null; + case SolverLanguagePackage.CALL__ARGUMENT_LIST: + return argumentList != null; + } + return super.eIsSet(featureID); + } + +} //CallImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java new file mode 100644 index 00000000..9c4d6820 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java @@ -0,0 +1,254 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Case; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Case'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl#getCondition Condition}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl#getBody Body}
  • + *
+ * + * @generated + */ +public class CaseImpl extends ExpressionImpl implements Case { + /** + * The cached value of the '{@link #getCondition() Condition}' containment reference. + * + * + * @see #getCondition() + * @generated + * @ordered + */ + protected Expression condition; + + /** + * The cached value of the '{@link #getBody() Body}' containment reference. + * + * + * @see #getBody() + * @generated + * @ordered + */ + protected Expression body; + + /** + * + * + * @generated + */ + protected CaseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.CASE; + } + + /** + * + * + * @generated + */ + public Expression getCondition() { + return condition; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) { + Expression oldCondition = condition; + condition = newCondition; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CASE__CONDITION, oldCondition, newCondition); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setCondition(Expression newCondition) { + if (newCondition != condition) { + NotificationChain msgs = null; + if (condition != null) + msgs = ((InternalEObject) condition).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__CONDITION, null, msgs); + if (newCondition != null) + msgs = ((InternalEObject) newCondition).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__CONDITION, null, msgs); + msgs = basicSetCondition(newCondition, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CASE__CONDITION, newCondition, + newCondition)); + } + + /** + * + * + * @generated + */ + public Expression getBody() { + return body; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { + Expression oldBody = body; + body = newBody; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CASE__BODY, oldBody, newBody); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setBody(Expression newBody) { + if (newBody != body) { + NotificationChain msgs = null; + if (body != null) + msgs = ((InternalEObject) body).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__BODY, null, msgs); + if (newBody != null) + msgs = ((InternalEObject) newBody).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__BODY, null, msgs); + msgs = basicSetBody(newBody, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CASE__BODY, newBody, newBody)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.CASE__CONDITION: + return basicSetCondition(null, msgs); + case SolverLanguagePackage.CASE__BODY: + return basicSetBody(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.CASE__CONDITION: + return getCondition(); + case SolverLanguagePackage.CASE__BODY: + return getBody(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.CASE__CONDITION: + setCondition((Expression) newValue); + return; + case SolverLanguagePackage.CASE__BODY: + setBody((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CASE__CONDITION: + setCondition((Expression) null); + return; + case SolverLanguagePackage.CASE__BODY: + setBody((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CASE__CONDITION: + return condition != null; + case SolverLanguagePackage.CASE__BODY: + return body != null; + } + return super.eIsSet(featureID); + } + +} //CaseImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java new file mode 100644 index 00000000..66baf204 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java @@ -0,0 +1,246 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.CastExpression; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Cast Expression'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl#getBody Body}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl#getTargetType Target Type}
  • + *
+ * + * @generated + */ +public class CastExpressionImpl extends ExpressionImpl implements CastExpression { + /** + * The cached value of the '{@link #getBody() Body}' containment reference. + * + * + * @see #getBody() + * @generated + * @ordered + */ + protected Expression body; + + /** + * The cached value of the '{@link #getTargetType() Target Type}' reference. + * + * + * @see #getTargetType() + * @generated + * @ordered + */ + protected Symbol targetType; + + /** + * + * + * @generated + */ + protected CastExpressionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.CAST_EXPRESSION; + } + + /** + * + * + * @generated + */ + public Expression getBody() { + return body; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { + Expression oldBody = body; + body = newBody; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CAST_EXPRESSION__BODY, oldBody, newBody); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setBody(Expression newBody) { + if (newBody != body) { + NotificationChain msgs = null; + if (body != null) + msgs = ((InternalEObject) body).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CAST_EXPRESSION__BODY, null, msgs); + if (newBody != null) + msgs = ((InternalEObject) newBody).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CAST_EXPRESSION__BODY, null, msgs); + msgs = basicSetBody(newBody, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CAST_EXPRESSION__BODY, newBody, + newBody)); + } + + /** + * + * + * @generated + */ + public Symbol getTargetType() { + if (targetType != null && targetType.eIsProxy()) { + InternalEObject oldTargetType = (InternalEObject) targetType; + targetType = (Symbol) eResolveProxy(oldTargetType); + if (targetType != oldTargetType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE, oldTargetType, targetType)); + } + } + return targetType; + } + + /** + * + * + * @generated + */ + public Symbol basicGetTargetType() { + return targetType; + } + + /** + * + * + * @generated + */ + public void setTargetType(Symbol newTargetType) { + Symbol oldTargetType = targetType; + targetType = newTargetType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE, + oldTargetType, targetType)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.CAST_EXPRESSION__BODY: + return basicSetBody(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.CAST_EXPRESSION__BODY: + return getBody(); + case SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE: + if (resolve) + return getTargetType(); + return basicGetTargetType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.CAST_EXPRESSION__BODY: + setBody((Expression) newValue); + return; + case SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE: + setTargetType((Symbol) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CAST_EXPRESSION__BODY: + setBody((Expression) null); + return; + case SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE: + setTargetType((Symbol) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CAST_EXPRESSION__BODY: + return body != null; + case SolverLanguagePackage.CAST_EXPRESSION__TARGET_TYPE: + return targetType != null; + } + return super.eIsSet(featureID); + } + +} //CastExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDeclarationImpl.java new file mode 100644 index 00000000..a9bfeab7 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDeclarationImpl.java @@ -0,0 +1,371 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.EObjectResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.Field; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Class Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#getFields Fields}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#getName Name}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#isAbstract Abstract}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#getSupertypes Supertypes}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDeclarationImpl#isRoot Root}
  • + *
+ * + * @generated + */ +public class ClassDeclarationImpl extends StatementImpl implements ClassDeclaration { + /** + * The cached value of the '{@link #getFields() Fields}' containment reference list. + * + * + * @see #getFields() + * @generated + * @ordered + */ + protected EList fields; + + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The default value of the '{@link #isAbstract() Abstract}' attribute. + * + * + * @see #isAbstract() + * @generated + * @ordered + */ + protected static final boolean ABSTRACT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isAbstract() Abstract}' attribute. + * + * + * @see #isAbstract() + * @generated + * @ordered + */ + protected boolean abstract_ = ABSTRACT_EDEFAULT; + + /** + * The cached value of the '{@link #getSupertypes() Supertypes}' reference list. + * + * + * @see #getSupertypes() + * @generated + * @ordered + */ + protected EList supertypes; + + /** + * The default value of the '{@link #isRoot() Root}' attribute. + * + * + * @see #isRoot() + * @generated + * @ordered + */ + protected static final boolean ROOT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isRoot() Root}' attribute. + * + * + * @see #isRoot() + * @generated + * @ordered + */ + protected boolean root = ROOT_EDEFAULT; + + /** + * + * + * @generated + */ + protected ClassDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.CLASS_DECLARATION; + } + + /** + * + * + * @generated + */ + public EList getFields() { + if (fields == null) { + fields = new EObjectContainmentEList(Field.class, this, + SolverLanguagePackage.CLASS_DECLARATION__FIELDS); + } + return fields; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_DECLARATION__NAME, + oldName, name)); + } + + /** + * + * + * @generated + */ + public boolean isAbstract() { + return abstract_; + } + + /** + * + * + * @generated + */ + public void setAbstract(boolean newAbstract) { + boolean oldAbstract = abstract_; + abstract_ = newAbstract; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT, + oldAbstract, abstract_)); + } + + /** + * + * + * @generated + */ + public EList getSupertypes() { + if (supertypes == null) { + supertypes = new EObjectResolvingEList(Symbol.class, this, + SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES); + } + return supertypes; + } + + /** + * + * + * @generated + */ + public boolean isRoot() { + return root; + } + + /** + * + * + * @generated + */ + public void setRoot(boolean newRoot) { + boolean oldRoot = root; + root = newRoot; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_DECLARATION__ROOT, + oldRoot, root)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.CLASS_DECLARATION__FIELDS: + return ((InternalEList) getFields()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.CLASS_DECLARATION__FIELDS: + return getFields(); + case SolverLanguagePackage.CLASS_DECLARATION__NAME: + return getName(); + case SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT: + return isAbstract(); + case SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES: + return getSupertypes(); + case SolverLanguagePackage.CLASS_DECLARATION__ROOT: + return isRoot(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.CLASS_DECLARATION__FIELDS: + getFields().clear(); + getFields().addAll((Collection) newValue); + return; + case SolverLanguagePackage.CLASS_DECLARATION__NAME: + setName((String) newValue); + return; + case SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT: + setAbstract((Boolean) newValue); + return; + case SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES: + getSupertypes().clear(); + getSupertypes().addAll((Collection) newValue); + return; + case SolverLanguagePackage.CLASS_DECLARATION__ROOT: + setRoot((Boolean) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CLASS_DECLARATION__FIELDS: + getFields().clear(); + return; + case SolverLanguagePackage.CLASS_DECLARATION__NAME: + setName(NAME_EDEFAULT); + return; + case SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT: + setAbstract(ABSTRACT_EDEFAULT); + return; + case SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES: + getSupertypes().clear(); + return; + case SolverLanguagePackage.CLASS_DECLARATION__ROOT: + setRoot(ROOT_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CLASS_DECLARATION__FIELDS: + return fields != null && !fields.isEmpty(); + case SolverLanguagePackage.CLASS_DECLARATION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case SolverLanguagePackage.CLASS_DECLARATION__ABSTRACT: + return abstract_ != ABSTRACT_EDEFAULT; + case SolverLanguagePackage.CLASS_DECLARATION__SUPERTYPES: + return supertypes != null && !supertypes.isEmpty(); + case SolverLanguagePackage.CLASS_DECLARATION__ROOT: + return root != ROOT_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(", abstract: "); + result.append(abstract_); + result.append(", root: "); + result.append(root); + result.append(')'); + return result.toString(); + } + +} //ClassDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConditionalExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConditionalExpressionImpl.java new file mode 100644 index 00000000..30d5c6c1 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConditionalExpressionImpl.java @@ -0,0 +1,328 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Conditional Expression'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl#getCondition Condition}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl#getThen Then}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConditionalExpressionImpl#getElse Else}
  • + *
+ * + * @generated + */ +public class ConditionalExpressionImpl extends ExpressionImpl implements ConditionalExpression { + /** + * The cached value of the '{@link #getCondition() Condition}' containment reference. + * + * + * @see #getCondition() + * @generated + * @ordered + */ + protected Expression condition; + + /** + * The cached value of the '{@link #getThen() Then}' containment reference. + * + * + * @see #getThen() + * @generated + * @ordered + */ + protected Expression then; + + /** + * The cached value of the '{@link #getElse() Else}' containment reference. + * + * + * @see #getElse() + * @generated + * @ordered + */ + protected Expression else_; + + /** + * + * + * @generated + */ + protected ConditionalExpressionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.CONDITIONAL_EXPRESSION; + } + + /** + * + * + * @generated + */ + public Expression getCondition() { + return condition; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) { + Expression oldCondition = condition; + condition = newCondition; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION, oldCondition, newCondition); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setCondition(Expression newCondition) { + if (newCondition != condition) { + NotificationChain msgs = null; + if (condition != null) + msgs = ((InternalEObject) condition).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION, null, msgs); + if (newCondition != null) + msgs = ((InternalEObject) newCondition).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION, null, msgs); + msgs = basicSetCondition(newCondition, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION, newCondition, newCondition)); + } + + /** + * + * + * @generated + */ + public Expression getThen() { + return then; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetThen(Expression newThen, NotificationChain msgs) { + Expression oldThen = then; + then = newThen; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN, oldThen, newThen); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setThen(Expression newThen) { + if (newThen != then) { + NotificationChain msgs = null; + if (then != null) + msgs = ((InternalEObject) then).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN, null, msgs); + if (newThen != null) + msgs = ((InternalEObject) newThen).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN, null, msgs); + msgs = basicSetThen(newThen, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN, + newThen, newThen)); + } + + /** + * + * + * @generated + */ + public Expression getElse() { + return else_; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetElse(Expression newElse, NotificationChain msgs) { + Expression oldElse = else_; + else_ = newElse; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE, oldElse, newElse); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setElse(Expression newElse) { + if (newElse != else_) { + NotificationChain msgs = null; + if (else_ != null) + msgs = ((InternalEObject) else_).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE, null, msgs); + if (newElse != null) + msgs = ((InternalEObject) newElse).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE, null, msgs); + msgs = basicSetElse(newElse, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE, + newElse, newElse)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION: + return basicSetCondition(null, msgs); + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN: + return basicSetThen(null, msgs); + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE: + return basicSetElse(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION: + return getCondition(); + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN: + return getThen(); + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE: + return getElse(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION: + setCondition((Expression) newValue); + return; + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN: + setThen((Expression) newValue); + return; + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE: + setElse((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION: + setCondition((Expression) null); + return; + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN: + setThen((Expression) null); + return; + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE: + setElse((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__CONDITION: + return condition != null; + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__THEN: + return then != null; + case SolverLanguagePackage.CONDITIONAL_EXPRESSION__ELSE: + return else_ != null; + } + return super.eIsSet(featureID); + } + +} //ConditionalExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java new file mode 100644 index 00000000..6ac60dc1 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Conjunction; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Conjunction'. + * + * + * @generated + */ +public class ConjunctionImpl extends MultiaryExpessionImpl implements Conjunction { + /** + * + * + * @generated + */ + protected ConjunctionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.CONJUNCTION; + } + +} //ConjunctionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CountImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CountImpl.java new file mode 100644 index 00000000..b4a870c7 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CountImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Count; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Count'. + * + * + * @generated + */ +public class CountImpl extends AggregateExpressionImpl implements Count { + /** + * + * + * @generated + */ + protected CountImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.COUNT; + } + +} //CountImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DatatypeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DatatypeImpl.java new file mode 100644 index 00000000..eeb6a1d4 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DatatypeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Datatype; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Datatype'. + * + * + * @generated + */ +public class DatatypeImpl extends RelationImpl implements Datatype { + /** + * + * + * @generated + */ + protected DatatypeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.DATATYPE; + } + +} //DatatypeImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultAssertionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultAssertionImpl.java new file mode 100644 index 00000000..52d5240c --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultAssertionImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Default Assertion'. + * + * + * @generated + */ +public class DefaultAssertionImpl extends AbstractAssertionImpl implements DefaultAssertion { + /** + * + * + * @generated + */ + protected DefaultAssertionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.DEFAULT_ASSERTION; + } + +} //DefaultAssertionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java new file mode 100644 index 00000000..a13a92f5 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Disjunction; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Disjunction'. + * + * + * @generated + */ +public class DisjunctionImpl extends MultiaryExpessionImpl implements Disjunction { + /** + * + * + * @generated + */ + protected DisjunctionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.DISJUNCTION; + } + +} //DisjunctionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyLiteralImpl.java new file mode 100644 index 00000000..b5dc7e54 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyLiteralImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Empty Literal'. + * + * + * @generated + */ +public class EmptyLiteralImpl extends LiteralImpl implements EmptyLiteral { + /** + * + * + * @generated + */ + protected EmptyLiteralImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EMPTY_LITERAL; + } + +} //EmptyLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumDeclarationImpl.java new file mode 100644 index 00000000..1ddcc2f1 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumDeclarationImpl.java @@ -0,0 +1,224 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Enum Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl#getLiterals Literals}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumDeclarationImpl#getName Name}
  • + *
+ * + * @generated + */ +public class EnumDeclarationImpl extends StatementImpl implements EnumDeclaration { + /** + * The cached value of the '{@link #getLiterals() Literals}' containment reference list. + * + * + * @see #getLiterals() + * @generated + * @ordered + */ + protected EList literals; + + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * + * + * @generated + */ + protected EnumDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.ENUM_DECLARATION; + } + + /** + * + * + * @generated + */ + public EList getLiterals() { + if (literals == null) { + literals = new EObjectContainmentEList(EnumLiteral.class, this, + SolverLanguagePackage.ENUM_DECLARATION__LITERALS); + } + return literals; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ENUM_DECLARATION__NAME, oldName, + name)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.ENUM_DECLARATION__LITERALS: + return ((InternalEList) getLiterals()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.ENUM_DECLARATION__LITERALS: + return getLiterals(); + case SolverLanguagePackage.ENUM_DECLARATION__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.ENUM_DECLARATION__LITERALS: + getLiterals().clear(); + getLiterals().addAll((Collection) newValue); + return; + case SolverLanguagePackage.ENUM_DECLARATION__NAME: + setName((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ENUM_DECLARATION__LITERALS: + getLiterals().clear(); + return; + case SolverLanguagePackage.ENUM_DECLARATION__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ENUM_DECLARATION__LITERALS: + return literals != null && !literals.isEmpty(); + case SolverLanguagePackage.ENUM_DECLARATION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //EnumDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumLiteralImpl.java new file mode 100644 index 00000000..5b7f9cb1 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EnumLiteralImpl.java @@ -0,0 +1,165 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Enum Literal'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.EnumLiteralImpl#getName Name}
  • + *
+ * + * @generated + */ +public class EnumLiteralImpl extends MinimalEObjectImpl.Container implements EnumLiteral { + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * + * + * @generated + */ + protected EnumLiteralImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.ENUM_LITERAL; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.ENUM_LITERAL__NAME, oldName, + name)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.ENUM_LITERAL__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.ENUM_LITERAL__NAME: + setName((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ENUM_LITERAL__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.ENUM_LITERAL__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //EnumLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java new file mode 100644 index 00000000..f981aede --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Exact Multiplicity'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl#getValue Value}
  • + *
+ * + * @generated + */ +public class ExactMultiplicityImpl extends MultiplicityImpl implements ExactMultiplicity { + /** + * The default value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected static final int VALUE_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected int value = VALUE_EDEFAULT; + + /** + * + * + * @generated + */ + protected ExactMultiplicityImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXACT_MULTIPLICITY; + } + + /** + * + * + * @generated + */ + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + public void setValue(int newValue) { + int oldValue = value; + value = newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE, + oldValue, value)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE: + setValue((Integer) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXACT_MULTIPLICITY__VALUE: + return value != VALUE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} //ExactMultiplicityImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeImpl.java new file mode 100644 index 00000000..80b06171 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ExactScope; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Exact Scope'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeImpl#getSize Size}
  • + *
+ * + * @generated + */ +public class ExactScopeImpl extends ScopeDeclarationImpl implements ExactScope { + /** + * The default value of the '{@link #getSize() Size}' attribute. + * + * + * @see #getSize() + * @generated + * @ordered + */ + protected static final int SIZE_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getSize() Size}' attribute. + * + * + * @see #getSize() + * @generated + * @ordered + */ + protected int size = SIZE_EDEFAULT; + + /** + * + * + * @generated + */ + protected ExactScopeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXACT_SCOPE; + } + + /** + * + * + * @generated + */ + public int getSize() { + return size; + } + + /** + * + * + * @generated + */ + public void setSize(int newSize) { + int oldSize = size; + size = newSize; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXACT_SCOPE__SIZE, oldSize, + size)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXACT_SCOPE__SIZE: + return getSize(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXACT_SCOPE__SIZE: + setSize((Integer) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXACT_SCOPE__SIZE: + setSize(SIZE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXACT_SCOPE__SIZE: + return size != SIZE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (size: "); + result.append(size); + result.append(')'); + return result.toString(); + } + +} //ExactScopeImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java new file mode 100644 index 00000000..7e84a49a --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java @@ -0,0 +1,182 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Expression Argument'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl#getExpression Expression}
  • + *
+ * + * @generated + */ +public class ExpressionArgumentImpl extends ArgumentImpl implements ExpressionArgument { + /** + * The cached value of the '{@link #getExpression() Expression}' containment reference. + * + * + * @see #getExpression() + * @generated + * @ordered + */ + protected Expression expression; + + /** + * + * + * @generated + */ + protected ExpressionArgumentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXPRESSION_ARGUMENT; + } + + /** + * + * + * @generated + */ + public Expression getExpression() { + return expression; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetExpression(Expression newExpression, NotificationChain msgs) { + Expression oldExpression = expression; + expression = newExpression; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION, oldExpression, newExpression); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setExpression(Expression newExpression) { + if (newExpression != expression) { + NotificationChain msgs = null; + if (expression != null) + msgs = ((InternalEObject) expression).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION, null, msgs); + if (newExpression != null) + msgs = ((InternalEObject) newExpression).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION, null, msgs); + msgs = basicSetExpression(newExpression, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION, + newExpression, newExpression)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION: + return basicSetExpression(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION: + return getExpression(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION: + setExpression((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION: + setExpression((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION_ARGUMENT__EXPRESSION: + return expression != null; + } + return super.eIsSet(featureID); + } + +} //ExpressionArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java new file mode 100644 index 00000000..0b917b30 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java @@ -0,0 +1,151 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Variable; + +/** + * + * An implementation of the model object 'Expression'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl#getExistsVariables Exists Variables}
  • + *
+ * + * @generated + */ +public abstract class ExpressionImpl extends StatementImpl implements Expression { + /** + * The cached value of the '{@link #getExistsVariables() Exists Variables}' containment reference list. + * + * + * @see #getExistsVariables() + * @generated + * @ordered + */ + protected EList existsVariables; + + /** + * + * + * @generated + */ + protected ExpressionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXPRESSION; + } + + /** + * + * + * @generated + */ + public EList getExistsVariables() { + if (existsVariables == null) { + existsVariables = new EObjectContainmentEList(Variable.class, this, + SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES); + } + return existsVariables; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES: + return ((InternalEList) getExistsVariables()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES: + return getExistsVariables(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES: + getExistsVariables().clear(); + getExistsVariables().addAll((Collection) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES: + getExistsVariables().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXPRESSION__EXISTS_VARIABLES: + return existsVariables != null && !existsVariables.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregationOperatorDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregationOperatorDeclarationImpl.java new file mode 100644 index 00000000..f3a34f73 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregationOperatorDeclarationImpl.java @@ -0,0 +1,227 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Extern Aggregation Operator Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl#getArgumentType Argument Type}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregationOperatorDeclarationImpl#getResultType Result Type}
  • + *
+ * + * @generated + */ +public class ExternAggregationOperatorDeclarationImpl extends ExternDeclarationImpl + implements ExternAggregationOperatorDeclaration { + /** + * The cached value of the '{@link #getArgumentType() Argument Type}' reference. + * + * + * @see #getArgumentType() + * @generated + * @ordered + */ + protected Symbol argumentType; + + /** + * The cached value of the '{@link #getResultType() Result Type}' reference. + * + * + * @see #getResultType() + * @generated + * @ordered + */ + protected Symbol resultType; + + /** + * + * + * @generated + */ + protected ExternAggregationOperatorDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXTERN_AGGREGATION_OPERATOR_DECLARATION; + } + + /** + * + * + * @generated + */ + public Symbol getArgumentType() { + if (argumentType != null && argumentType.eIsProxy()) { + InternalEObject oldArgumentType = (InternalEObject) argumentType; + argumentType = (Symbol) eResolveProxy(oldArgumentType); + if (argumentType != oldArgumentType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE, + oldArgumentType, argumentType)); + } + } + return argumentType; + } + + /** + * + * + * @generated + */ + public Symbol basicGetArgumentType() { + return argumentType; + } + + /** + * + * + * @generated + */ + public void setArgumentType(Symbol newArgumentType) { + Symbol oldArgumentType = argumentType; + argumentType = newArgumentType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE, oldArgumentType, + argumentType)); + } + + /** + * + * + * @generated + */ + public Symbol getResultType() { + if (resultType != null && resultType.eIsProxy()) { + InternalEObject oldResultType = (InternalEObject) resultType; + resultType = (Symbol) eResolveProxy(oldResultType); + if (resultType != oldResultType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE, oldResultType, + resultType)); + } + } + return resultType; + } + + /** + * + * + * @generated + */ + public Symbol basicGetResultType() { + return resultType; + } + + /** + * + * + * @generated + */ + public void setResultType(Symbol newResultType) { + Symbol oldResultType = resultType; + resultType = newResultType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE, oldResultType, + resultType)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE: + if (resolve) + return getArgumentType(); + return basicGetArgumentType(); + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE: + if (resolve) + return getResultType(); + return basicGetResultType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE: + setArgumentType((Symbol) newValue); + return; + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE: + setResultType((Symbol) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE: + setArgumentType((Symbol) null); + return; + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE: + setResultType((Symbol) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE: + return argumentType != null; + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE: + return resultType != null; + } + return super.eIsSet(featureID); + } + +} //ExternAggregationOperatorDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDeclarationImpl.java new file mode 100644 index 00000000..f2411a6b --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDeclarationImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Extern Datatype Declaration'. + * + * + * @generated + */ +public class ExternDatatypeDeclarationImpl extends ExternDeclarationImpl implements ExternDatatypeDeclaration { + /** + * + * + * @generated + */ + protected ExternDatatypeDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXTERN_DATATYPE_DECLARATION; + } + +} //ExternDatatypeDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDeclarationImpl.java new file mode 100644 index 00000000..4086decd --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDeclarationImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Extern Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDeclarationImpl#getName Name}
  • + *
+ * + * @generated + */ +public abstract class ExternDeclarationImpl extends StatementImpl implements ExternDeclaration { + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * + * + * @generated + */ + protected ExternDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXTERN_DECLARATION; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_DECLARATION__NAME, + oldName, name)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_DECLARATION__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_DECLARATION__NAME: + setName((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_DECLARATION__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_DECLARATION__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //ExternDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctionDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctionDeclarationImpl.java new file mode 100644 index 00000000..83ec9f13 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctionDeclarationImpl.java @@ -0,0 +1,159 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Extern Function Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctionDeclarationImpl#getResultType Result Type}
  • + *
+ * + * @generated + */ +public class ExternFunctionDeclarationImpl extends ExternFunctorDeclarationImpl implements ExternFunctionDeclaration { + /** + * The cached value of the '{@link #getResultType() Result Type}' reference. + * + * + * @see #getResultType() + * @generated + * @ordered + */ + protected Symbol resultType; + + /** + * + * + * @generated + */ + protected ExternFunctionDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXTERN_FUNCTION_DECLARATION; + } + + /** + * + * + * @generated + */ + public Symbol getResultType() { + if (resultType != null && resultType.eIsProxy()) { + InternalEObject oldResultType = (InternalEObject) resultType; + resultType = (Symbol) eResolveProxy(oldResultType); + if (resultType != oldResultType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE, oldResultType, resultType)); + } + } + return resultType; + } + + /** + * + * + * @generated + */ + public Symbol basicGetResultType() { + return resultType; + } + + /** + * + * + * @generated + */ + public void setResultType(Symbol newResultType) { + Symbol oldResultType = resultType; + resultType = newResultType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE, oldResultType, resultType)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE: + if (resolve) + return getResultType(); + return basicGetResultType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE: + setResultType((Symbol) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE: + setResultType((Symbol) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE: + return resultType != null; + } + return super.eIsSet(featureID); + } + +} //ExternFunctionDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctorDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctorDeclarationImpl.java new file mode 100644 index 00000000..f3c58b99 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternFunctorDeclarationImpl.java @@ -0,0 +1,184 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; +import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Extern Functor Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternFunctorDeclarationImpl#getArgumentList Argument List}
  • + *
+ * + * @generated + */ +public abstract class ExternFunctorDeclarationImpl extends ExternDeclarationImpl implements ExternFunctorDeclaration { + /** + * The cached value of the '{@link #getArgumentList() Argument List}' containment reference. + * + * + * @see #getArgumentList() + * @generated + * @ordered + */ + protected ArgumentList argumentList; + + /** + * + * + * @generated + */ + protected ExternFunctorDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXTERN_FUNCTOR_DECLARATION; + } + + /** + * + * + * @generated + */ + public ArgumentList getArgumentList() { + return argumentList; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) { + ArgumentList oldArgumentList = argumentList; + argumentList = newArgumentList; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST, oldArgumentList, newArgumentList); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setArgumentList(ArgumentList newArgumentList) { + if (newArgumentList != argumentList) { + NotificationChain msgs = null; + if (argumentList != null) + msgs = ((InternalEObject) argumentList).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST, null, + msgs); + if (newArgumentList != null) + msgs = ((InternalEObject) newArgumentList).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST, null, + msgs); + msgs = basicSetArgumentList(newArgumentList, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST, newArgumentList, newArgumentList)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST: + return basicSetArgumentList(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST: + return getArgumentList(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST: + setArgumentList((ArgumentList) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST: + setArgumentList((ArgumentList) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST: + return argumentList != null; + } + return super.eIsSet(featureID); + } + +} //ExternFunctorDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDeclarationImpl.java new file mode 100644 index 00000000..fa6646bf --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDeclarationImpl.java @@ -0,0 +1,260 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Extern Predicate Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl#isError Error}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDeclarationImpl#isFunctional Functional}
  • + *
+ * + * @generated + */ +public class ExternPredicateDeclarationImpl extends ExternFunctorDeclarationImpl implements ExternPredicateDeclaration { + /** + * The default value of the '{@link #isError() Error}' attribute. + * + * + * @see #isError() + * @generated + * @ordered + */ + protected static final boolean ERROR_EDEFAULT = false; + + /** + * The cached value of the '{@link #isError() Error}' attribute. + * + * + * @see #isError() + * @generated + * @ordered + */ + protected boolean error = ERROR_EDEFAULT; + + /** + * The default value of the '{@link #isFunctional() Functional}' attribute. + * + * + * @see #isFunctional() + * @generated + * @ordered + */ + protected static final boolean FUNCTIONAL_EDEFAULT = false; + + /** + * The cached value of the '{@link #isFunctional() Functional}' attribute. + * + * + * @see #isFunctional() + * @generated + * @ordered + */ + protected boolean functional = FUNCTIONAL_EDEFAULT; + + /** + * + * + * @generated + */ + protected ExternPredicateDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.EXTERN_PREDICATE_DECLARATION; + } + + /** + * + * + * @generated + */ + public boolean isError() { + return error; + } + + /** + * + * + * @generated + */ + public void setError(boolean newError) { + boolean oldError = error; + error = newError; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR, oldError, error)); + } + + /** + * + * + * @generated + */ + public boolean isFunctional() { + return functional; + } + + /** + * + * + * @generated + */ + public void setFunctional(boolean newFunctional) { + boolean oldFunctional = functional; + functional = newFunctional; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL, oldFunctional, functional)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR: + return isError(); + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL: + return isFunctional(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR: + setError((Boolean) newValue); + return; + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL: + setFunctional((Boolean) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR: + setError(ERROR_EDEFAULT); + return; + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL: + setFunctional(FUNCTIONAL_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR: + return error != ERROR_EDEFAULT; + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL: + return functional != FUNCTIONAL_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class baseClass) { + if (baseClass == InlinePredicateAttrributes.class) { + switch (derivedFeatureID) { + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR: + return SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__ERROR; + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL: + return SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL; + default: + return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * + * + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class baseClass) { + if (baseClass == InlinePredicateAttrributes.class) { + switch (baseFeatureID) { + case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__ERROR: + return SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__ERROR; + case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL: + return SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION__FUNCTIONAL; + default: + return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (error: "); + result.append(error); + result.append(", functional: "); + result.append(functional); + result.append(')'); + return result.toString(); + } + +} //ExternPredicateDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldImpl.java new file mode 100644 index 00000000..20fc50b9 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FieldImpl.java @@ -0,0 +1,488 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Field; +import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Field'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#isContainment Containment}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#isCrossReference Cross Reference}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#getOpposite Opposite}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#getMultiplicity Multiplicity}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#getType Type}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FieldImpl#getName Name}
  • + *
+ * + * @generated + */ +public class FieldImpl extends MinimalEObjectImpl.Container implements Field { + /** + * The default value of the '{@link #isContainment() Containment}' attribute. + * + * + * @see #isContainment() + * @generated + * @ordered + */ + protected static final boolean CONTAINMENT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isContainment() Containment}' attribute. + * + * + * @see #isContainment() + * @generated + * @ordered + */ + protected boolean containment = CONTAINMENT_EDEFAULT; + + /** + * The default value of the '{@link #isCrossReference() Cross Reference}' attribute. + * + * + * @see #isCrossReference() + * @generated + * @ordered + */ + protected static final boolean CROSS_REFERENCE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCrossReference() Cross Reference}' attribute. + * + * + * @see #isCrossReference() + * @generated + * @ordered + */ + protected boolean crossReference = CROSS_REFERENCE_EDEFAULT; + + /** + * The cached value of the '{@link #getOpposite() Opposite}' reference. + * + * + * @see #getOpposite() + * @generated + * @ordered + */ + protected Symbol opposite; + + /** + * The cached value of the '{@link #getMultiplicity() Multiplicity}' containment reference. + * + * + * @see #getMultiplicity() + * @generated + * @ordered + */ + protected Multiplicity multiplicity; + + /** + * The cached value of the '{@link #getType() Type}' reference. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected Symbol type; + + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * + * + * @generated + */ + protected FieldImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.FIELD; + } + + /** + * + * + * @generated + */ + public boolean isContainment() { + return containment; + } + + /** + * + * + * @generated + */ + public void setContainment(boolean newContainment) { + boolean oldContainment = containment; + containment = newContainment; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__CONTAINMENT, + oldContainment, containment)); + } + + /** + * + * + * @generated + */ + public boolean isCrossReference() { + return crossReference; + } + + /** + * + * + * @generated + */ + public void setCrossReference(boolean newCrossReference) { + boolean oldCrossReference = crossReference; + crossReference = newCrossReference; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__CROSS_REFERENCE, + oldCrossReference, crossReference)); + } + + /** + * + * + * @generated + */ + public Symbol getOpposite() { + if (opposite != null && opposite.eIsProxy()) { + InternalEObject oldOpposite = (InternalEObject) opposite; + opposite = (Symbol) eResolveProxy(oldOpposite); + if (opposite != oldOpposite) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.FIELD__OPPOSITE, + oldOpposite, opposite)); + } + } + return opposite; + } + + /** + * + * + * @generated + */ + public Symbol basicGetOpposite() { + return opposite; + } + + /** + * + * + * @generated + */ + public void setOpposite(Symbol newOpposite) { + Symbol oldOpposite = opposite; + opposite = newOpposite; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__OPPOSITE, oldOpposite, + opposite)); + } + + /** + * + * + * @generated + */ + public Multiplicity getMultiplicity() { + return multiplicity; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetMultiplicity(Multiplicity newMultiplicity, NotificationChain msgs) { + Multiplicity oldMultiplicity = multiplicity; + multiplicity = newMultiplicity; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.FIELD__MULTIPLICITY, oldMultiplicity, newMultiplicity); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setMultiplicity(Multiplicity newMultiplicity) { + if (newMultiplicity != multiplicity) { + NotificationChain msgs = null; + if (multiplicity != null) + msgs = ((InternalEObject) multiplicity).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD__MULTIPLICITY, null, msgs); + if (newMultiplicity != null) + msgs = ((InternalEObject) newMultiplicity).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FIELD__MULTIPLICITY, null, msgs); + msgs = basicSetMultiplicity(newMultiplicity, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__MULTIPLICITY, + newMultiplicity, newMultiplicity)); + } + + /** + * + * + * @generated + */ + public Symbol getType() { + if (type != null && type.eIsProxy()) { + InternalEObject oldType = (InternalEObject) type; + type = (Symbol) eResolveProxy(oldType); + if (type != oldType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.FIELD__TYPE, + oldType, type)); + } + } + return type; + } + + /** + * + * + * @generated + */ + public Symbol basicGetType() { + return type; + } + + /** + * + * + * @generated + */ + public void setType(Symbol newType) { + Symbol oldType = type; + type = newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__TYPE, oldType, type)); + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FIELD__NAME, oldName, name)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.FIELD__MULTIPLICITY: + return basicSetMultiplicity(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.FIELD__CONTAINMENT: + return isContainment(); + case SolverLanguagePackage.FIELD__CROSS_REFERENCE: + return isCrossReference(); + case SolverLanguagePackage.FIELD__OPPOSITE: + if (resolve) + return getOpposite(); + return basicGetOpposite(); + case SolverLanguagePackage.FIELD__MULTIPLICITY: + return getMultiplicity(); + case SolverLanguagePackage.FIELD__TYPE: + if (resolve) + return getType(); + return basicGetType(); + case SolverLanguagePackage.FIELD__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.FIELD__CONTAINMENT: + setContainment((Boolean) newValue); + return; + case SolverLanguagePackage.FIELD__CROSS_REFERENCE: + setCrossReference((Boolean) newValue); + return; + case SolverLanguagePackage.FIELD__OPPOSITE: + setOpposite((Symbol) newValue); + return; + case SolverLanguagePackage.FIELD__MULTIPLICITY: + setMultiplicity((Multiplicity) newValue); + return; + case SolverLanguagePackage.FIELD__TYPE: + setType((Symbol) newValue); + return; + case SolverLanguagePackage.FIELD__NAME: + setName((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FIELD__CONTAINMENT: + setContainment(CONTAINMENT_EDEFAULT); + return; + case SolverLanguagePackage.FIELD__CROSS_REFERENCE: + setCrossReference(CROSS_REFERENCE_EDEFAULT); + return; + case SolverLanguagePackage.FIELD__OPPOSITE: + setOpposite((Symbol) null); + return; + case SolverLanguagePackage.FIELD__MULTIPLICITY: + setMultiplicity((Multiplicity) null); + return; + case SolverLanguagePackage.FIELD__TYPE: + setType((Symbol) null); + return; + case SolverLanguagePackage.FIELD__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FIELD__CONTAINMENT: + return containment != CONTAINMENT_EDEFAULT; + case SolverLanguagePackage.FIELD__CROSS_REFERENCE: + return crossReference != CROSS_REFERENCE_EDEFAULT; + case SolverLanguagePackage.FIELD__OPPOSITE: + return opposite != null; + case SolverLanguagePackage.FIELD__MULTIPLICITY: + return multiplicity != null; + case SolverLanguagePackage.FIELD__TYPE: + return type != null; + case SolverLanguagePackage.FIELD__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (containment: "); + result.append(containment); + result.append(", crossReference: "); + result.append(crossReference); + result.append(", name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //FieldImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ForallImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ForallImpl.java new file mode 100644 index 00000000..0007f67f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ForallImpl.java @@ -0,0 +1,182 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.Forall; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Forall'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ForallImpl#getBody Body}
  • + *
+ * + * @generated + */ +public class ForallImpl extends AggregateExpressionImpl implements Forall { + /** + * The cached value of the '{@link #getBody() Body}' containment reference. + * + * + * @see #getBody() + * @generated + * @ordered + */ + protected Expression body; + + /** + * + * + * @generated + */ + protected ForallImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.FORALL; + } + + /** + * + * + * @generated + */ + public Expression getBody() { + return body; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { + Expression oldBody = body; + body = newBody; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.FORALL__BODY, oldBody, newBody); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setBody(Expression newBody) { + if (newBody != body) { + NotificationChain msgs = null; + if (body != null) + msgs = ((InternalEObject) body).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FORALL__BODY, null, msgs); + if (newBody != null) + msgs = ((InternalEObject) newBody).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FORALL__BODY, null, msgs); + msgs = basicSetBody(newBody, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FORALL__BODY, newBody, + newBody)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.FORALL__BODY: + return basicSetBody(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.FORALL__BODY: + return getBody(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.FORALL__BODY: + setBody((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FORALL__BODY: + setBody((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FORALL__BODY: + return body != null; + } + return super.eIsSet(featureID); + } + +} //ForallImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionDefinitionImpl.java new file mode 100644 index 00000000..9fa59d1c --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionDefinitionImpl.java @@ -0,0 +1,159 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Function Definition'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionDefinitionImpl#getResultType Result Type}
  • + *
+ * + * @generated + */ +public class FunctionDefinitionImpl extends FunctorDefinitonImpl implements FunctionDefinition { + /** + * The cached value of the '{@link #getResultType() Result Type}' reference. + * + * + * @see #getResultType() + * @generated + * @ordered + */ + protected Symbol resultType; + + /** + * + * + * @generated + */ + protected FunctionDefinitionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.FUNCTION_DEFINITION; + } + + /** + * + * + * @generated + */ + public Symbol getResultType() { + if (resultType != null && resultType.eIsProxy()) { + InternalEObject oldResultType = (InternalEObject) resultType; + resultType = (Symbol) eResolveProxy(oldResultType); + if (resultType != oldResultType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE, oldResultType, resultType)); + } + } + return resultType; + } + + /** + * + * + * @generated + */ + public Symbol basicGetResultType() { + return resultType; + } + + /** + * + * + * @generated + */ + public void setResultType(Symbol newResultType) { + Symbol oldResultType = resultType; + resultType = newResultType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE, oldResultType, resultType)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE: + if (resolve) + return getResultType(); + return basicGetResultType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE: + setResultType((Symbol) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE: + setResultType((Symbol) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FUNCTION_DEFINITION__RESULT_TYPE: + return resultType != null; + } + return super.eIsSet(featureID); + } + +} //FunctionDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionImpl.java new file mode 100644 index 00000000..2a3e7e8b --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctionImpl.java @@ -0,0 +1,159 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Datatype; +import org.eclipse.viatra.solver.language.solverLanguage.Function; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Function'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctionImpl#getResultType Result Type}
  • + *
+ * + * @generated + */ +public abstract class FunctionImpl extends FunctorImpl implements Function { + /** + * The cached value of the '{@link #getResultType() Result Type}' reference. + * + * + * @see #getResultType() + * @generated + * @ordered + */ + protected Datatype resultType; + + /** + * + * + * @generated + */ + protected FunctionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.FUNCTION; + } + + /** + * + * + * @generated + */ + public Datatype getResultType() { + if (resultType != null && resultType.eIsProxy()) { + InternalEObject oldResultType = (InternalEObject) resultType; + resultType = (Datatype) eResolveProxy(oldResultType); + if (resultType != oldResultType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.FUNCTION__RESULT_TYPE, oldResultType, resultType)); + } + } + return resultType; + } + + /** + * + * + * @generated + */ + public Datatype basicGetResultType() { + return resultType; + } + + /** + * + * + * @generated + */ + public void setResultType(Datatype newResultType) { + Datatype oldResultType = resultType; + resultType = newResultType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FUNCTION__RESULT_TYPE, + oldResultType, resultType)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.FUNCTION__RESULT_TYPE: + if (resolve) + return getResultType(); + return basicGetResultType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.FUNCTION__RESULT_TYPE: + setResultType((Datatype) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FUNCTION__RESULT_TYPE: + setResultType((Datatype) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FUNCTION__RESULT_TYPE: + return resultType != null; + } + return super.eIsSet(featureID); + } + +} //FunctionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorDefinitonImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorDefinitonImpl.java new file mode 100644 index 00000000..0dff447f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorDefinitonImpl.java @@ -0,0 +1,255 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Functor Definiton'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl#getHead Head}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorDefinitonImpl#getBody Body}
  • + *
+ * + * @generated + */ +public abstract class FunctorDefinitonImpl extends StatementImpl implements FunctorDefiniton { + /** + * The cached value of the '{@link #getHead() Head}' containment reference. + * + * + * @see #getHead() + * @generated + * @ordered + */ + protected Expression head; + + /** + * The cached value of the '{@link #getBody() Body}' containment reference. + * + * + * @see #getBody() + * @generated + * @ordered + */ + protected Expression body; + + /** + * + * + * @generated + */ + protected FunctorDefinitonImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.FUNCTOR_DEFINITON; + } + + /** + * + * + * @generated + */ + public Expression getHead() { + return head; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetHead(Expression newHead, NotificationChain msgs) { + Expression oldHead = head; + head = newHead; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD, oldHead, newHead); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setHead(Expression newHead) { + if (newHead != head) { + NotificationChain msgs = null; + if (head != null) + msgs = ((InternalEObject) head).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD, null, msgs); + if (newHead != null) + msgs = ((InternalEObject) newHead).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD, null, msgs); + msgs = basicSetHead(newHead, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD, + newHead, newHead)); + } + + /** + * + * + * @generated + */ + public Expression getBody() { + return body; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { + Expression oldBody = body; + body = newBody; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.FUNCTOR_DEFINITON__BODY, oldBody, newBody); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setBody(Expression newBody) { + if (newBody != body) { + NotificationChain msgs = null; + if (body != null) + msgs = ((InternalEObject) body).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FUNCTOR_DEFINITON__BODY, null, msgs); + if (newBody != null) + msgs = ((InternalEObject) newBody).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.FUNCTOR_DEFINITON__BODY, null, msgs); + msgs = basicSetBody(newBody, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.FUNCTOR_DEFINITON__BODY, + newBody, newBody)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD: + return basicSetHead(null, msgs); + case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY: + return basicSetBody(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD: + return getHead(); + case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY: + return getBody(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD: + setHead((Expression) newValue); + return; + case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY: + setBody((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD: + setHead((Expression) null); + return; + case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY: + setBody((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR_DEFINITON__HEAD: + return head != null; + case SolverLanguagePackage.FUNCTOR_DEFINITON__BODY: + return body != null; + } + return super.eIsSet(featureID); + } + +} //FunctorDefinitonImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java new file mode 100644 index 00000000..f0003552 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java @@ -0,0 +1,151 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.Functor; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Variable; + +/** + * + * An implementation of the model object 'Functor'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl#getParameters Parameters}
  • + *
+ * + * @generated + */ +public abstract class FunctorImpl extends SymbolImpl implements Functor { + /** + * The cached value of the '{@link #getParameters() Parameters}' containment reference list. + * + * + * @see #getParameters() + * @generated + * @ordered + */ + protected EList parameters; + + /** + * + * + * @generated + */ + protected FunctorImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.FUNCTOR; + } + + /** + * + * + * @generated + */ + public EList getParameters() { + if (parameters == null) { + parameters = new EObjectContainmentEList(Variable.class, this, + SolverLanguagePackage.FUNCTOR__PARAMETERS); + } + return parameters; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR__PARAMETERS: + return ((InternalEList) getParameters()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR__PARAMETERS: + return getParameters(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR__PARAMETERS: + getParameters().clear(); + getParameters().addAll((Collection) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR__PARAMETERS: + getParameters().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.FUNCTOR__PARAMETERS: + return parameters != null && !parameters.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //FunctorImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ImportImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ImportImpl.java new file mode 100644 index 00000000..5d37e837 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ImportImpl.java @@ -0,0 +1,165 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Import; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Import'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ImportImpl#getAlias Alias}
  • + *
+ * + * @generated + */ +public class ImportImpl extends MinimalEObjectImpl.Container implements Import { + /** + * The default value of the '{@link #getAlias() Alias}' attribute. + * + * + * @see #getAlias() + * @generated + * @ordered + */ + protected static final String ALIAS_EDEFAULT = null; + + /** + * The cached value of the '{@link #getAlias() Alias}' attribute. + * + * + * @see #getAlias() + * @generated + * @ordered + */ + protected String alias = ALIAS_EDEFAULT; + + /** + * + * + * @generated + */ + protected ImportImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.IMPORT; + } + + /** + * + * + * @generated + */ + public String getAlias() { + return alias; + } + + /** + * + * + * @generated + */ + public void setAlias(String newAlias) { + String oldAlias = alias; + alias = newAlias; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.IMPORT__ALIAS, oldAlias, + alias)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.IMPORT__ALIAS: + return getAlias(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.IMPORT__ALIAS: + setAlias((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.IMPORT__ALIAS: + setAlias(ALIAS_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.IMPORT__ALIAS: + return ALIAS_EDEFAULT == null ? alias != null : !ALIAS_EDEFAULT.equals(alias); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (alias: "); + result.append(alias); + result.append(')'); + return result.toString(); + } + +} //ImportImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java new file mode 100644 index 00000000..ab6025ff --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Infinity Literal'. + * + * + * @generated + */ +public class InfinityLiteralImpl extends LiteralImpl implements InfinityLiteral { + /** + * + * + * @generated + */ + protected InfinityLiteralImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.INFINITY_LITERAL; + } + +} //InfinityLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntLiteralImpl.java new file mode 100644 index 00000000..0e247f42 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntLiteralImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.IntLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Int Literal'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntLiteralImpl#getValue Value}
  • + *
+ * + * @generated + */ +public class IntLiteralImpl extends LiteralImpl implements IntLiteral { + /** + * The default value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected static final int VALUE_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected int value = VALUE_EDEFAULT; + + /** + * + * + * @generated + */ + protected IntLiteralImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.INT_LITERAL; + } + + /** + * + * + * @generated + */ + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + public void setValue(int newValue) { + int oldValue = value; + value = newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INT_LITERAL__VALUE, oldValue, + value)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.INT_LITERAL__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.INT_LITERAL__VALUE: + setValue((Integer) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.INT_LITERAL__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.INT_LITERAL__VALUE: + return value != VALUE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} //IntLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java new file mode 100644 index 00000000..d599db6d --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java @@ -0,0 +1,255 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.Interval; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Interval'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl#getLowerBound Lower Bound}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl#getUpperBound Upper Bound}
  • + *
+ * + * @generated + */ +public class IntervalImpl extends ExpressionImpl implements Interval { + /** + * The cached value of the '{@link #getLowerBound() Lower Bound}' containment reference. + * + * + * @see #getLowerBound() + * @generated + * @ordered + */ + protected Expression lowerBound; + + /** + * The cached value of the '{@link #getUpperBound() Upper Bound}' containment reference. + * + * + * @see #getUpperBound() + * @generated + * @ordered + */ + protected Expression upperBound; + + /** + * + * + * @generated + */ + protected IntervalImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.INTERVAL; + } + + /** + * + * + * @generated + */ + public Expression getLowerBound() { + return lowerBound; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetLowerBound(Expression newLowerBound, NotificationChain msgs) { + Expression oldLowerBound = lowerBound; + lowerBound = newLowerBound; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.INTERVAL__LOWER_BOUND, oldLowerBound, newLowerBound); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setLowerBound(Expression newLowerBound) { + if (newLowerBound != lowerBound) { + NotificationChain msgs = null; + if (lowerBound != null) + msgs = ((InternalEObject) lowerBound).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__LOWER_BOUND, null, msgs); + if (newLowerBound != null) + msgs = ((InternalEObject) newLowerBound).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__LOWER_BOUND, null, msgs); + msgs = basicSetLowerBound(newLowerBound, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERVAL__LOWER_BOUND, + newLowerBound, newLowerBound)); + } + + /** + * + * + * @generated + */ + public Expression getUpperBound() { + return upperBound; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetUpperBound(Expression newUpperBound, NotificationChain msgs) { + Expression oldUpperBound = upperBound; + upperBound = newUpperBound; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.INTERVAL__UPPER_BOUND, oldUpperBound, newUpperBound); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setUpperBound(Expression newUpperBound) { + if (newUpperBound != upperBound) { + NotificationChain msgs = null; + if (upperBound != null) + msgs = ((InternalEObject) upperBound).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__UPPER_BOUND, null, msgs); + if (newUpperBound != null) + msgs = ((InternalEObject) newUpperBound).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__UPPER_BOUND, null, msgs); + msgs = basicSetUpperBound(newUpperBound, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERVAL__UPPER_BOUND, + newUpperBound, newUpperBound)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.INTERVAL__LOWER_BOUND: + return basicSetLowerBound(null, msgs); + case SolverLanguagePackage.INTERVAL__UPPER_BOUND: + return basicSetUpperBound(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.INTERVAL__LOWER_BOUND: + return getLowerBound(); + case SolverLanguagePackage.INTERVAL__UPPER_BOUND: + return getUpperBound(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.INTERVAL__LOWER_BOUND: + setLowerBound((Expression) newValue); + return; + case SolverLanguagePackage.INTERVAL__UPPER_BOUND: + setUpperBound((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.INTERVAL__LOWER_BOUND: + setLowerBound((Expression) null); + return; + case SolverLanguagePackage.INTERVAL__UPPER_BOUND: + setUpperBound((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.INTERVAL__LOWER_BOUND: + return lowerBound != null; + case SolverLanguagePackage.INTERVAL__UPPER_BOUND: + return upperBound != null; + } + return super.eIsSet(featureID); + } + +} //IntervalImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java new file mode 100644 index 00000000..1f724c55 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java @@ -0,0 +1,391 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.LetBinding; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; +import org.eclipse.viatra.solver.language.solverLanguage.Variable; + +/** + * + * An implementation of the model object 'Let Binding'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getValue Value}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getVariable Variable}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getName Name}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getType Type}
  • + *
+ * + * @generated + */ +public class LetBindingImpl extends MinimalEObjectImpl.Container implements LetBinding { + /** + * The cached value of the '{@link #getValue() Value}' containment reference. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected Expression value; + + /** + * The cached value of the '{@link #getVariable() Variable}' containment reference. + * + * + * @see #getVariable() + * @generated + * @ordered + */ + protected Variable variable; + + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getType() Type}' reference. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected Symbol type; + + /** + * + * + * @generated + */ + protected LetBindingImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.LET_BINDING; + } + + /** + * + * + * @generated + */ + public Expression getValue() { + return value; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetValue(Expression newValue, NotificationChain msgs) { + Expression oldValue = value; + value = newValue; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.LET_BINDING__VALUE, oldValue, newValue); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setValue(Expression newValue) { + if (newValue != value) { + NotificationChain msgs = null; + if (value != null) + msgs = ((InternalEObject) value).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VALUE, null, msgs); + if (newValue != null) + msgs = ((InternalEObject) newValue).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VALUE, null, msgs); + msgs = basicSetValue(newValue, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__VALUE, newValue, + newValue)); + } + + /** + * + * + * @generated + */ + public Variable getVariable() { + return variable; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetVariable(Variable newVariable, NotificationChain msgs) { + Variable oldVariable = variable; + variable = newVariable; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.LET_BINDING__VARIABLE, oldVariable, newVariable); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setVariable(Variable newVariable) { + if (newVariable != variable) { + NotificationChain msgs = null; + if (variable != null) + msgs = ((InternalEObject) variable).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VARIABLE, null, msgs); + if (newVariable != null) + msgs = ((InternalEObject) newVariable).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VARIABLE, null, msgs); + msgs = basicSetVariable(newVariable, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__VARIABLE, + newVariable, newVariable)); + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__NAME, oldName, + name)); + } + + /** + * + * + * @generated + */ + public Symbol getType() { + if (type != null && type.eIsProxy()) { + InternalEObject oldType = (InternalEObject) type; + type = (Symbol) eResolveProxy(oldType); + if (type != oldType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.LET_BINDING__TYPE, + oldType, type)); + } + } + return type; + } + + /** + * + * + * @generated + */ + public Symbol basicGetType() { + return type; + } + + /** + * + * + * @generated + */ + public void setType(Symbol newType) { + Symbol oldType = type; + type = newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__TYPE, oldType, + type)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.LET_BINDING__VALUE: + return basicSetValue(null, msgs); + case SolverLanguagePackage.LET_BINDING__VARIABLE: + return basicSetVariable(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.LET_BINDING__VALUE: + return getValue(); + case SolverLanguagePackage.LET_BINDING__VARIABLE: + return getVariable(); + case SolverLanguagePackage.LET_BINDING__NAME: + return getName(); + case SolverLanguagePackage.LET_BINDING__TYPE: + if (resolve) + return getType(); + return basicGetType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.LET_BINDING__VALUE: + setValue((Expression) newValue); + return; + case SolverLanguagePackage.LET_BINDING__VARIABLE: + setVariable((Variable) newValue); + return; + case SolverLanguagePackage.LET_BINDING__NAME: + setName((String) newValue); + return; + case SolverLanguagePackage.LET_BINDING__TYPE: + setType((Symbol) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.LET_BINDING__VALUE: + setValue((Expression) null); + return; + case SolverLanguagePackage.LET_BINDING__VARIABLE: + setVariable((Variable) null); + return; + case SolverLanguagePackage.LET_BINDING__NAME: + setName(NAME_EDEFAULT); + return; + case SolverLanguagePackage.LET_BINDING__TYPE: + setType((Symbol) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.LET_BINDING__VALUE: + return value != null; + case SolverLanguagePackage.LET_BINDING__VARIABLE: + return variable != null; + case SolverLanguagePackage.LET_BINDING__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case SolverLanguagePackage.LET_BINDING__TYPE: + return type != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //LetBindingImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetExpressionImpl.java new file mode 100644 index 00000000..2aa319c6 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetExpressionImpl.java @@ -0,0 +1,228 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.LetBinding; +import org.eclipse.viatra.solver.language.solverLanguage.LetExpression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Let Expression'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl#getBindings Bindings}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetExpressionImpl#getBody Body}
  • + *
+ * + * @generated + */ +public class LetExpressionImpl extends ExpressionImpl implements LetExpression { + /** + * The cached value of the '{@link #getBindings() Bindings}' containment reference list. + * + * + * @see #getBindings() + * @generated + * @ordered + */ + protected EList bindings; + + /** + * The cached value of the '{@link #getBody() Body}' containment reference. + * + * + * @see #getBody() + * @generated + * @ordered + */ + protected Expression body; + + /** + * + * + * @generated + */ + protected LetExpressionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.LET_EXPRESSION; + } + + /** + * + * + * @generated + */ + public EList getBindings() { + if (bindings == null) { + bindings = new EObjectContainmentEList(LetBinding.class, this, + SolverLanguagePackage.LET_EXPRESSION__BINDINGS); + } + return bindings; + } + + /** + * + * + * @generated + */ + public Expression getBody() { + return body; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { + Expression oldBody = body; + body = newBody; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.LET_EXPRESSION__BODY, oldBody, newBody); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setBody(Expression newBody) { + if (newBody != body) { + NotificationChain msgs = null; + if (body != null) + msgs = ((InternalEObject) body).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_EXPRESSION__BODY, null, msgs); + if (newBody != null) + msgs = ((InternalEObject) newBody).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_EXPRESSION__BODY, null, msgs); + msgs = basicSetBody(newBody, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_EXPRESSION__BODY, newBody, + newBody)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.LET_EXPRESSION__BINDINGS: + return ((InternalEList) getBindings()).basicRemove(otherEnd, msgs); + case SolverLanguagePackage.LET_EXPRESSION__BODY: + return basicSetBody(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.LET_EXPRESSION__BINDINGS: + return getBindings(); + case SolverLanguagePackage.LET_EXPRESSION__BODY: + return getBody(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.LET_EXPRESSION__BINDINGS: + getBindings().clear(); + getBindings().addAll((Collection) newValue); + return; + case SolverLanguagePackage.LET_EXPRESSION__BODY: + setBody((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.LET_EXPRESSION__BINDINGS: + getBindings().clear(); + return; + case SolverLanguagePackage.LET_EXPRESSION__BODY: + setBody((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.LET_EXPRESSION__BINDINGS: + return bindings != null && !bindings.isEmpty(); + case SolverLanguagePackage.LET_EXPRESSION__BODY: + return body != null; + } + return super.eIsSet(featureID); + } + +} //LetExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java new file mode 100644 index 00000000..4222a258 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Literal; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Literal'. + * + * + * @generated + */ +public abstract class LiteralImpl extends ExpressionImpl implements Literal { + /** + * + * + * @generated + */ + protected LiteralImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.LITERAL; + } + +} //LiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java new file mode 100644 index 00000000..6eb60cd5 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java @@ -0,0 +1,165 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.LogicValue; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Logic Literal'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl#getValue Value}
  • + *
+ * + * @generated + */ +public class LogicLiteralImpl extends LiteralImpl implements LogicLiteral { + /** + * The default value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected static final LogicValue VALUE_EDEFAULT = LogicValue.UNKNOWN; + + /** + * The cached value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected LogicValue value = VALUE_EDEFAULT; + + /** + * + * + * @generated + */ + protected LogicLiteralImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.LOGIC_LITERAL; + } + + /** + * + * + * @generated + */ + public LogicValue getValue() { + return value; + } + + /** + * + * + * @generated + */ + public void setValue(LogicValue newValue) { + LogicValue oldValue = value; + value = newValue == null ? VALUE_EDEFAULT : newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LOGIC_LITERAL__VALUE, oldValue, + value)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.LOGIC_LITERAL__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.LOGIC_LITERAL__VALUE: + setValue((LogicValue) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.LOGIC_LITERAL__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.LOGIC_LITERAL__VALUE: + return value != VALUE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} //LogicLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeImpl.java new file mode 100644 index 00000000..56716e2c --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Lower Bounded Scope'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeImpl#getLowerBound Lower Bound}
  • + *
+ * + * @generated + */ +public class LowerBoundedScopeImpl extends ScopeDeclarationImpl implements LowerBoundedScope { + /** + * The default value of the '{@link #getLowerBound() Lower Bound}' attribute. + * + * + * @see #getLowerBound() + * @generated + * @ordered + */ + protected static final int LOWER_BOUND_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getLowerBound() Lower Bound}' attribute. + * + * + * @see #getLowerBound() + * @generated + * @ordered + */ + protected int lowerBound = LOWER_BOUND_EDEFAULT; + + /** + * + * + * @generated + */ + protected LowerBoundedScopeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.LOWER_BOUNDED_SCOPE; + } + + /** + * + * + * @generated + */ + public int getLowerBound() { + return lowerBound; + } + + /** + * + * + * @generated + */ + public void setLowerBound(int newLowerBound) { + int oldLowerBound = lowerBound; + lowerBound = newLowerBound; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND, oldLowerBound, lowerBound)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND: + return getLowerBound(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND: + setLowerBound((Integer) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND: + setLowerBound(LOWER_BOUND_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.LOWER_BOUNDED_SCOPE__LOWER_BOUND: + return lowerBound != LOWER_BOUND_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (lowerBound: "); + result.append(lowerBound); + result.append(')'); + return result.toString(); + } + +} //LowerBoundedScopeImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java new file mode 100644 index 00000000..0dfc03a6 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Metric; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Metric'. + * + * + * @generated + */ +public class MetricImpl extends FunctionImpl implements Metric { + /** + * + * + * @generated + */ + protected MetricImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.METRIC; + } + +} //MetricImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiaryExpessionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiaryExpessionImpl.java new file mode 100644 index 00000000..75d28976 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiaryExpessionImpl.java @@ -0,0 +1,151 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Multiary Expession'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiaryExpessionImpl#getChildren Children}
  • + *
+ * + * @generated + */ +public abstract class MultiaryExpessionImpl extends ExpressionImpl implements MultiaryExpession { + /** + * The cached value of the '{@link #getChildren() Children}' containment reference list. + * + * + * @see #getChildren() + * @generated + * @ordered + */ + protected EList children; + + /** + * + * + * @generated + */ + protected MultiaryExpessionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.MULTIARY_EXPESSION; + } + + /** + * + * + * @generated + */ + public EList getChildren() { + if (children == null) { + children = new EObjectContainmentEList(Expression.class, this, + SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN); + } + return children; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN: + return ((InternalEList) getChildren()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN: + return getChildren(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN: + getChildren().clear(); + getChildren().addAll((Collection) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN: + getChildren().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.MULTIARY_EXPESSION__CHILDREN: + return children != null && !children.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //MultiaryExpessionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java new file mode 100644 index 00000000..1f8c27a4 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java @@ -0,0 +1,39 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Multiplicity'. + * + * + * @generated + */ +public abstract class MultiplicityImpl extends MinimalEObjectImpl.Container implements Multiplicity { + /** + * + * + * @generated + */ + protected MultiplicityImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.MULTIPLICITY; + } + +} //MultiplicityImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamespaceImportImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamespaceImportImpl.java new file mode 100644 index 00000000..24ac11e5 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamespaceImportImpl.java @@ -0,0 +1,166 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Namespace Import'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamespaceImportImpl#getImportedNamespace Imported Namespace}
  • + *
+ * + * @generated + */ +public class NamespaceImportImpl extends ImportImpl implements NamespaceImport { + /** + * The default value of the '{@link #getImportedNamespace() Imported Namespace}' attribute. + * + * + * @see #getImportedNamespace() + * @generated + * @ordered + */ + protected static final String IMPORTED_NAMESPACE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getImportedNamespace() Imported Namespace}' attribute. + * + * + * @see #getImportedNamespace() + * @generated + * @ordered + */ + protected String importedNamespace = IMPORTED_NAMESPACE_EDEFAULT; + + /** + * + * + * @generated + */ + protected NamespaceImportImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.NAMESPACE_IMPORT; + } + + /** + * + * + * @generated + */ + public String getImportedNamespace() { + return importedNamespace; + } + + /** + * + * + * @generated + */ + public void setImportedNamespace(String newImportedNamespace) { + String oldImportedNamespace = importedNamespace; + importedNamespace = newImportedNamespace; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE, oldImportedNamespace, + importedNamespace)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE: + return getImportedNamespace(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE: + setImportedNamespace((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE: + setImportedNamespace(IMPORTED_NAMESPACE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.NAMESPACE_IMPORT__IMPORTED_NAMESPACE: + return IMPORTED_NAMESPACE_EDEFAULT == null ? importedNamespace != null + : !IMPORTED_NAMESPACE_EDEFAULT.equals(importedNamespace); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (importedNamespace: "); + result.append(importedNamespace); + result.append(')'); + return result.toString(); + } + +} //NamespaceImportImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java new file mode 100644 index 00000000..7307fada --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java @@ -0,0 +1,163 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Node; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Node'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl#isNamed Named}
  • + *
+ * + * @generated + */ +public class NodeImpl extends SymbolImpl implements Node { + /** + * The default value of the '{@link #isNamed() Named}' attribute. + * + * + * @see #isNamed() + * @generated + * @ordered + */ + protected static final boolean NAMED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isNamed() Named}' attribute. + * + * + * @see #isNamed() + * @generated + * @ordered + */ + protected boolean named = NAMED_EDEFAULT; + + /** + * + * + * @generated + */ + protected NodeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.NODE; + } + + /** + * + * + * @generated + */ + public boolean isNamed() { + return named; + } + + /** + * + * + * @generated + */ + public void setNamed(boolean newNamed) { + boolean oldNamed = named; + named = newNamed; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.NODE__NAMED, oldNamed, named)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.NODE__NAMED: + return isNamed(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.NODE__NAMED: + setNamed((Boolean) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.NODE__NAMED: + setNamed(NAMED_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.NODE__NAMED: + return named != NAMED_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (named: "); + result.append(named); + result.append(')'); + return result.toString(); + } + +} //NodeImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDeclarationImpl.java new file mode 100644 index 00000000..541c06ec --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDeclarationImpl.java @@ -0,0 +1,253 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Objective Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl#getKind Kind}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDeclarationImpl#getObjective Objective}
  • + *
+ * + * @generated + */ +public class ObjectiveDeclarationImpl extends StatementImpl implements ObjectiveDeclaration { + /** + * The default value of the '{@link #getKind() Kind}' attribute. + * + * + * @see #getKind() + * @generated + * @ordered + */ + protected static final ObjectiveKind KIND_EDEFAULT = ObjectiveKind.MINIMIZATION; + + /** + * The cached value of the '{@link #getKind() Kind}' attribute. + * + * + * @see #getKind() + * @generated + * @ordered + */ + protected ObjectiveKind kind = KIND_EDEFAULT; + + /** + * The cached value of the '{@link #getObjective() Objective}' containment reference. + * + * + * @see #getObjective() + * @generated + * @ordered + */ + protected Expression objective; + + /** + * + * + * @generated + */ + protected ObjectiveDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.OBJECTIVE_DECLARATION; + } + + /** + * + * + * @generated + */ + public ObjectiveKind getKind() { + return kind; + } + + /** + * + * + * @generated + */ + public void setKind(ObjectiveKind newKind) { + ObjectiveKind oldKind = kind; + kind = newKind == null ? KIND_EDEFAULT : newKind; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND, + oldKind, kind)); + } + + /** + * + * + * @generated + */ + public Expression getObjective() { + return objective; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetObjective(Expression newObjective, NotificationChain msgs) { + Expression oldObjective = objective; + objective = newObjective; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE, oldObjective, newObjective); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setObjective(Expression newObjective) { + if (newObjective != objective) { + NotificationChain msgs = null; + if (objective != null) + msgs = ((InternalEObject) objective).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE, null, msgs); + if (newObjective != null) + msgs = ((InternalEObject) newObjective).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE, null, msgs); + msgs = basicSetObjective(newObjective, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE, newObjective, newObjective)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE: + return basicSetObjective(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND: + return getKind(); + case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE: + return getObjective(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND: + setKind((ObjectiveKind) newValue); + return; + case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE: + setObjective((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND: + setKind(KIND_EDEFAULT); + return; + case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE: + setObjective((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.OBJECTIVE_DECLARATION__KIND: + return kind != KIND_EDEFAULT; + case SolverLanguagePackage.OBJECTIVE_DECLARATION__OBJECTIVE: + return objective != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (kind: "); + result.append(kind); + result.append(')'); + return result.toString(); + } + +} //ObjectiveDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/OperatorImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/OperatorImpl.java new file mode 100644 index 00000000..13f190c9 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/OperatorImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Operator; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Operator'. + * + * + * @generated + */ +public class OperatorImpl extends FunctionImpl implements Operator { + /** + * + * + * @generated + */ + protected OperatorImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.OPERATOR; + } + +} //OperatorImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PathComponentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PathComponentImpl.java new file mode 100644 index 00000000..afad504d --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PathComponentImpl.java @@ -0,0 +1,341 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.PathComponent; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Path Component'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl#getSymbol Symbol}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl#isInverse Inverse}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl#isTransitiveClosure Transitive Closure}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PathComponentImpl#isReflexiveTransitiveClosure Reflexive Transitive Closure}
  • + *
+ * + * @generated + */ +public class PathComponentImpl extends MinimalEObjectImpl.Container implements PathComponent { + /** + * The cached value of the '{@link #getSymbol() Symbol}' reference. + * + * + * @see #getSymbol() + * @generated + * @ordered + */ + protected Symbol symbol; + + /** + * The default value of the '{@link #isInverse() Inverse}' attribute. + * + * + * @see #isInverse() + * @generated + * @ordered + */ + protected static final boolean INVERSE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isInverse() Inverse}' attribute. + * + * + * @see #isInverse() + * @generated + * @ordered + */ + protected boolean inverse = INVERSE_EDEFAULT; + + /** + * The default value of the '{@link #isTransitiveClosure() Transitive Closure}' attribute. + * + * + * @see #isTransitiveClosure() + * @generated + * @ordered + */ + protected static final boolean TRANSITIVE_CLOSURE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isTransitiveClosure() Transitive Closure}' attribute. + * + * + * @see #isTransitiveClosure() + * @generated + * @ordered + */ + protected boolean transitiveClosure = TRANSITIVE_CLOSURE_EDEFAULT; + + /** + * The default value of the '{@link #isReflexiveTransitiveClosure() Reflexive Transitive Closure}' attribute. + * + * + * @see #isReflexiveTransitiveClosure() + * @generated + * @ordered + */ + protected static final boolean REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isReflexiveTransitiveClosure() Reflexive Transitive Closure}' attribute. + * + * + * @see #isReflexiveTransitiveClosure() + * @generated + * @ordered + */ + protected boolean reflexiveTransitiveClosure = REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT; + + /** + * + * + * @generated + */ + protected PathComponentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.PATH_COMPONENT; + } + + /** + * + * + * @generated + */ + public Symbol getSymbol() { + if (symbol != null && symbol.eIsProxy()) { + InternalEObject oldSymbol = (InternalEObject) symbol; + symbol = (Symbol) eResolveProxy(oldSymbol); + if (symbol != oldSymbol) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.PATH_COMPONENT__SYMBOL, oldSymbol, symbol)); + } + } + return symbol; + } + + /** + * + * + * @generated + */ + public Symbol basicGetSymbol() { + return symbol; + } + + /** + * + * + * @generated + */ + public void setSymbol(Symbol newSymbol) { + Symbol oldSymbol = symbol; + symbol = newSymbol; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PATH_COMPONENT__SYMBOL, + oldSymbol, symbol)); + } + + /** + * + * + * @generated + */ + public boolean isInverse() { + return inverse; + } + + /** + * + * + * @generated + */ + public void setInverse(boolean newInverse) { + boolean oldInverse = inverse; + inverse = newInverse; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PATH_COMPONENT__INVERSE, + oldInverse, inverse)); + } + + /** + * + * + * @generated + */ + public boolean isTransitiveClosure() { + return transitiveClosure; + } + + /** + * + * + * @generated + */ + public void setTransitiveClosure(boolean newTransitiveClosure) { + boolean oldTransitiveClosure = transitiveClosure; + transitiveClosure = newTransitiveClosure; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE, oldTransitiveClosure, transitiveClosure)); + } + + /** + * + * + * @generated + */ + public boolean isReflexiveTransitiveClosure() { + return reflexiveTransitiveClosure; + } + + /** + * + * + * @generated + */ + public void setReflexiveTransitiveClosure(boolean newReflexiveTransitiveClosure) { + boolean oldReflexiveTransitiveClosure = reflexiveTransitiveClosure; + reflexiveTransitiveClosure = newReflexiveTransitiveClosure; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE, oldReflexiveTransitiveClosure, + reflexiveTransitiveClosure)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.PATH_COMPONENT__SYMBOL: + if (resolve) + return getSymbol(); + return basicGetSymbol(); + case SolverLanguagePackage.PATH_COMPONENT__INVERSE: + return isInverse(); + case SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE: + return isTransitiveClosure(); + case SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE: + return isReflexiveTransitiveClosure(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.PATH_COMPONENT__SYMBOL: + setSymbol((Symbol) newValue); + return; + case SolverLanguagePackage.PATH_COMPONENT__INVERSE: + setInverse((Boolean) newValue); + return; + case SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE: + setTransitiveClosure((Boolean) newValue); + return; + case SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE: + setReflexiveTransitiveClosure((Boolean) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.PATH_COMPONENT__SYMBOL: + setSymbol((Symbol) null); + return; + case SolverLanguagePackage.PATH_COMPONENT__INVERSE: + setInverse(INVERSE_EDEFAULT); + return; + case SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE: + setTransitiveClosure(TRANSITIVE_CLOSURE_EDEFAULT); + return; + case SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE: + setReflexiveTransitiveClosure(REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.PATH_COMPONENT__SYMBOL: + return symbol != null; + case SolverLanguagePackage.PATH_COMPONENT__INVERSE: + return inverse != INVERSE_EDEFAULT; + case SolverLanguagePackage.PATH_COMPONENT__TRANSITIVE_CLOSURE: + return transitiveClosure != TRANSITIVE_CLOSURE_EDEFAULT; + case SolverLanguagePackage.PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE: + return reflexiveTransitiveClosure != REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (inverse: "); + result.append(inverse); + result.append(", transitiveClosure: "); + result.append(transitiveClosure); + result.append(", reflexiveTransitiveClosure: "); + result.append(reflexiveTransitiveClosure); + result.append(')'); + return result.toString(); + } + +} //PathComponentImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java new file mode 100644 index 00000000..c6afa7f5 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java @@ -0,0 +1,260 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes; +import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Predicate Definition'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl#isError Error}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl#isFunctional Functional}
  • + *
+ * + * @generated + */ +public class PredicateDefinitionImpl extends FunctorDefinitonImpl implements PredicateDefinition { + /** + * The default value of the '{@link #isError() Error}' attribute. + * + * + * @see #isError() + * @generated + * @ordered + */ + protected static final boolean ERROR_EDEFAULT = false; + + /** + * The cached value of the '{@link #isError() Error}' attribute. + * + * + * @see #isError() + * @generated + * @ordered + */ + protected boolean error = ERROR_EDEFAULT; + + /** + * The default value of the '{@link #isFunctional() Functional}' attribute. + * + * + * @see #isFunctional() + * @generated + * @ordered + */ + protected static final boolean FUNCTIONAL_EDEFAULT = false; + + /** + * The cached value of the '{@link #isFunctional() Functional}' attribute. + * + * + * @see #isFunctional() + * @generated + * @ordered + */ + protected boolean functional = FUNCTIONAL_EDEFAULT; + + /** + * + * + * @generated + */ + protected PredicateDefinitionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.PREDICATE_DEFINITION; + } + + /** + * + * + * @generated + */ + public boolean isError() { + return error; + } + + /** + * + * + * @generated + */ + public void setError(boolean newError) { + boolean oldError = error; + error = newError; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_DEFINITION__ERROR, + oldError, error)); + } + + /** + * + * + * @generated + */ + public boolean isFunctional() { + return functional; + } + + /** + * + * + * @generated + */ + public void setFunctional(boolean newFunctional) { + boolean oldFunctional = functional; + functional = newFunctional; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL, oldFunctional, functional)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: + return isError(); + case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: + return isFunctional(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: + setError((Boolean) newValue); + return; + case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: + setFunctional((Boolean) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: + setError(ERROR_EDEFAULT); + return; + case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: + setFunctional(FUNCTIONAL_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: + return error != ERROR_EDEFAULT; + case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: + return functional != FUNCTIONAL_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public int eBaseStructuralFeatureID(int derivedFeatureID, Class baseClass) { + if (baseClass == InlinePredicateAttrributes.class) { + switch (derivedFeatureID) { + case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: + return SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__ERROR; + case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: + return SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL; + default: + return -1; + } + } + return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass); + } + + /** + * + * + * @generated + */ + @Override + public int eDerivedStructuralFeatureID(int baseFeatureID, Class baseClass) { + if (baseClass == InlinePredicateAttrributes.class) { + switch (baseFeatureID) { + case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__ERROR: + return SolverLanguagePackage.PREDICATE_DEFINITION__ERROR; + case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL: + return SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL; + default: + return -1; + } + } + return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (error: "); + result.append(error); + result.append(", functional: "); + result.append(functional); + result.append(')'); + return result.toString(); + } + +} //PredicateDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java new file mode 100644 index 00000000..316217af --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Predicate; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Predicate'. + * + * + * @generated + */ +public class PredicateImpl extends RelationImpl implements Predicate { + /** + * + * + * @generated + */ + protected PredicateImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.PREDICATE; + } + +} //PredicateImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java new file mode 100644 index 00000000..08cec167 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java @@ -0,0 +1,298 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.Import; +import org.eclipse.viatra.solver.language.solverLanguage.Problem; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Statement; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Problem'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getName Name}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getStatements Statements}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getSymbols Symbols}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getImports Imports}
  • + *
+ * + * @generated + */ +public class ProblemImpl extends MinimalEObjectImpl.Container implements Problem { + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * The cached value of the '{@link #getStatements() Statements}' containment reference list. + * + * + * @see #getStatements() + * @generated + * @ordered + */ + protected EList statements; + + /** + * The cached value of the '{@link #getSymbols() Symbols}' containment reference list. + * + * + * @see #getSymbols() + * @generated + * @ordered + */ + protected EList symbols; + + /** + * The cached value of the '{@link #getImports() Imports}' containment reference list. + * + * + * @see #getImports() + * @generated + * @ordered + */ + protected EList imports; + + /** + * + * + * @generated + */ + protected ProblemImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.PROBLEM; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PROBLEM__NAME, oldName, name)); + } + + /** + * + * + * @generated + */ + public EList getStatements() { + if (statements == null) { + statements = new EObjectContainmentEList(Statement.class, this, + SolverLanguagePackage.PROBLEM__STATEMENTS); + } + return statements; + } + + /** + * + * + * @generated + */ + public EList getSymbols() { + if (symbols == null) { + symbols = new EObjectContainmentEList(Symbol.class, this, SolverLanguagePackage.PROBLEM__SYMBOLS); + } + return symbols; + } + + /** + * + * + * @generated + */ + public EList getImports() { + if (imports == null) { + imports = new EObjectContainmentEList(Import.class, this, SolverLanguagePackage.PROBLEM__IMPORTS); + } + return imports; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.PROBLEM__STATEMENTS: + return ((InternalEList) getStatements()).basicRemove(otherEnd, msgs); + case SolverLanguagePackage.PROBLEM__SYMBOLS: + return ((InternalEList) getSymbols()).basicRemove(otherEnd, msgs); + case SolverLanguagePackage.PROBLEM__IMPORTS: + return ((InternalEList) getImports()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.PROBLEM__NAME: + return getName(); + case SolverLanguagePackage.PROBLEM__STATEMENTS: + return getStatements(); + case SolverLanguagePackage.PROBLEM__SYMBOLS: + return getSymbols(); + case SolverLanguagePackage.PROBLEM__IMPORTS: + return getImports(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.PROBLEM__NAME: + setName((String) newValue); + return; + case SolverLanguagePackage.PROBLEM__STATEMENTS: + getStatements().clear(); + getStatements().addAll((Collection) newValue); + return; + case SolverLanguagePackage.PROBLEM__SYMBOLS: + getSymbols().clear(); + getSymbols().addAll((Collection) newValue); + return; + case SolverLanguagePackage.PROBLEM__IMPORTS: + getImports().clear(); + getImports().addAll((Collection) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.PROBLEM__NAME: + setName(NAME_EDEFAULT); + return; + case SolverLanguagePackage.PROBLEM__STATEMENTS: + getStatements().clear(); + return; + case SolverLanguagePackage.PROBLEM__SYMBOLS: + getSymbols().clear(); + return; + case SolverLanguagePackage.PROBLEM__IMPORTS: + getImports().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.PROBLEM__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + case SolverLanguagePackage.PROBLEM__STATEMENTS: + return statements != null && !statements.isEmpty(); + case SolverLanguagePackage.PROBLEM__SYMBOLS: + return symbols != null && !symbols.isEmpty(); + case SolverLanguagePackage.PROBLEM__IMPORTS: + return imports != null && !imports.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //ProblemImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealLiteralImpl.java new file mode 100644 index 00000000..7ab526b6 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RealLiteralImpl.java @@ -0,0 +1,166 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.math.BigDecimal; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.RealLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Real Literal'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.RealLiteralImpl#getValue Value}
  • + *
+ * + * @generated + */ +public class RealLiteralImpl extends LiteralImpl implements RealLiteral { + /** + * The default value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected static final BigDecimal VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected BigDecimal value = VALUE_EDEFAULT; + + /** + * + * + * @generated + */ + protected RealLiteralImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.REAL_LITERAL; + } + + /** + * + * + * @generated + */ + public BigDecimal getValue() { + return value; + } + + /** + * + * + * @generated + */ + public void setValue(BigDecimal newValue) { + BigDecimal oldValue = value; + value = newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.REAL_LITERAL__VALUE, oldValue, + value)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.REAL_LITERAL__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.REAL_LITERAL__VALUE: + setValue((BigDecimal) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.REAL_LITERAL__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.REAL_LITERAL__VALUE: + return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} //RealLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java new file mode 100644 index 00000000..6224f3aa --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java @@ -0,0 +1,151 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.PathComponent; +import org.eclipse.viatra.solver.language.solverLanguage.Reference; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Reference'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl#getComponents Components}
  • + *
+ * + * @generated + */ +public class ReferenceImpl extends ExpressionImpl implements Reference { + /** + * The cached value of the '{@link #getComponents() Components}' containment reference list. + * + * + * @see #getComponents() + * @generated + * @ordered + */ + protected EList components; + + /** + * + * + * @generated + */ + protected ReferenceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.REFERENCE; + } + + /** + * + * + * @generated + */ + public EList getComponents() { + if (components == null) { + components = new EObjectContainmentEList(PathComponent.class, this, + SolverLanguagePackage.REFERENCE__COMPONENTS); + } + return components; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.REFERENCE__COMPONENTS: + return ((InternalEList) getComponents()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.REFERENCE__COMPONENTS: + return getComponents(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.REFERENCE__COMPONENTS: + getComponents().clear(); + getComponents().addAll((Collection) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.REFERENCE__COMPONENTS: + getComponents().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.REFERENCE__COMPONENTS: + return components != null && !components.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ReferenceImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RelationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RelationImpl.java new file mode 100644 index 00000000..9c612858 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/RelationImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.Relation; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; + +/** + * + * An implementation of the model object 'Relation'. + * + * + * @generated + */ +public abstract class RelationImpl extends FunctorImpl implements Relation { + /** + * + * + * @generated + */ + protected RelationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.RELATION; + } + +} //RelationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDeclarationImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDeclarationImpl.java new file mode 100644 index 00000000..31c2fa9f --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDeclarationImpl.java @@ -0,0 +1,159 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Scope Declaration'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDeclarationImpl#getType Type}
  • + *
+ * + * @generated + */ +public class ScopeDeclarationImpl extends StatementImpl implements ScopeDeclaration { + /** + * The cached value of the '{@link #getType() Type}' reference. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected Symbol type; + + /** + * + * + * @generated + */ + protected ScopeDeclarationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.SCOPE_DECLARATION; + } + + /** + * + * + * @generated + */ + public Symbol getType() { + if (type != null && type.eIsProxy()) { + InternalEObject oldType = (InternalEObject) type; + type = (Symbol) eResolveProxy(oldType); + if (type != oldType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.SCOPE_DECLARATION__TYPE, oldType, type)); + } + } + return type; + } + + /** + * + * + * @generated + */ + public Symbol basicGetType() { + return type; + } + + /** + * + * + * @generated + */ + public void setType(Symbol newType) { + Symbol oldType = type; + type = newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.SCOPE_DECLARATION__TYPE, + oldType, type)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.SCOPE_DECLARATION__TYPE: + if (resolve) + return getType(); + return basicGetType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.SCOPE_DECLARATION__TYPE: + setType((Symbol) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.SCOPE_DECLARATION__TYPE: + setType((Symbol) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.SCOPE_DECLARATION__TYPE: + return type != null; + } + return super.eIsSet(featureID); + } + +} //ScopeDeclarationImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java new file mode 100644 index 00000000..96e741b9 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java @@ -0,0 +1,985 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +import org.eclipse.viatra.solver.language.solverLanguage.*; + +/** + * + * An implementation of the model Factory. + * + * @generated + */ +public class SolverLanguageFactoryImpl extends EFactoryImpl implements SolverLanguageFactory { + /** + * Creates the default factory implementation. + * + * + * @generated + */ + public static SolverLanguageFactory init() { + try { + SolverLanguageFactory theSolverLanguageFactory = (SolverLanguageFactory) EPackage.Registry.INSTANCE + .getEFactory(SolverLanguagePackage.eNS_URI); + if (theSolverLanguageFactory != null) { + return theSolverLanguageFactory; + } + } catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new SolverLanguageFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * + * + * @generated + */ + public SolverLanguageFactoryImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case SolverLanguagePackage.PATH_COMPONENT: + return createPathComponent(); + case SolverLanguagePackage.CALL: + return createCall(); + case SolverLanguagePackage.REFERENCE: + return createReference(); + case SolverLanguagePackage.ARGUMENT_LIST: + return createArgumentList(); + case SolverLanguagePackage.EXPRESSION_ARGUMENT: + return createExpressionArgument(); + case SolverLanguagePackage.STAR_ARGUMENT: + return createStarArgument(); + case SolverLanguagePackage.VARIABLE: + return createVariable(); + case SolverLanguagePackage.UNARY_EXPRESSION: + return createUnaryExpression(); + case SolverLanguagePackage.BINARY_EXPRESSION: + return createBinaryExpression(); + case SolverLanguagePackage.DISJUNCTION: + return createDisjunction(); + case SolverLanguagePackage.CONJUNCTION: + return createConjunction(); + case SolverLanguagePackage.CONDITIONAL_EXPRESSION: + return createConditionalExpression(); + case SolverLanguagePackage.SWITCH: + return createSwitch(); + case SolverLanguagePackage.CASE: + return createCase(); + case SolverLanguagePackage.LET_EXPRESSION: + return createLetExpression(); + case SolverLanguagePackage.LET_BINDING: + return createLetBinding(); + case SolverLanguagePackage.INT_LITERAL: + return createIntLiteral(); + case SolverLanguagePackage.REAL_LITERAL: + return createRealLiteral(); + case SolverLanguagePackage.STRING_LITERAL: + return createStringLiteral(); + case SolverLanguagePackage.LOGIC_LITERAL: + return createLogicLiteral(); + case SolverLanguagePackage.EMPTY_LITERAL: + return createEmptyLiteral(); + case SolverLanguagePackage.CAST_EXPRESSION: + return createCastExpression(); + case SolverLanguagePackage.COUNT: + return createCount(); + case SolverLanguagePackage.AGGREGATION: + return createAggregation(); + case SolverLanguagePackage.FORALL: + return createForall(); + case SolverLanguagePackage.TYPE_REFERENCE: + return createTypeReference(); + case SolverLanguagePackage.INFINITY_LITERAL: + return createInfinityLiteral(); + case SolverLanguagePackage.INTERVAL: + return createInterval(); + case SolverLanguagePackage.BASE_RELATION: + return createBaseRelation(); + case SolverLanguagePackage.PREDICATE: + return createPredicate(); + case SolverLanguagePackage.DATATYPE: + return createDatatype(); + case SolverLanguagePackage.METRIC: + return createMetric(); + case SolverLanguagePackage.OPERATOR: + return createOperator(); + case SolverLanguagePackage.NODE: + return createNode(); + case SolverLanguagePackage.PREDICATE_DEFINITION: + return createPredicateDefinition(); + case SolverLanguagePackage.FUNCTION_DEFINITION: + return createFunctionDefinition(); + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION: + return createExternPredicateDeclaration(); + case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION: + return createExternFunctionDeclaration(); + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION: + return createExternAggregationOperatorDeclaration(); + case SolverLanguagePackage.EXTERN_DATATYPE_DECLARATION: + return createExternDatatypeDeclaration(); + case SolverLanguagePackage.CLASS_DECLARATION: + return createClassDeclaration(); + case SolverLanguagePackage.ENUM_DECLARATION: + return createEnumDeclaration(); + case SolverLanguagePackage.ENUM_LITERAL: + return createEnumLiteral(); + case SolverLanguagePackage.FIELD: + return createField(); + case SolverLanguagePackage.DEFAULT_ASSERTION: + return createDefaultAssertion(); + case SolverLanguagePackage.ASSERTION: + return createAssertion(); + case SolverLanguagePackage.UNBOUNDED_MULTIPLICITY: + return createUnboundedMultiplicity(); + case SolverLanguagePackage.EXACT_MULTIPLICITY: + return createExactMultiplicity(); + case SolverLanguagePackage.BOUNDED_MULTIPLICITY: + return createBoundedMultiplicity(); + case SolverLanguagePackage.AGGREGATION_OPERATOR: + return createAggregationOperator(); + case SolverLanguagePackage.PROBLEM: + return createProblem(); + case SolverLanguagePackage.TYPED_STAR_ARGUMENT: + return createTypedStarArgument(); + case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT: + return createTypedVariableArgument(); + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION: + return createUnnamedErrorPredicateDefintion(); + case SolverLanguagePackage.OBJECTIVE_DECLARATION: + return createObjectiveDeclaration(); + case SolverLanguagePackage.SCOPE_DECLARATION: + return createScopeDeclaration(); + case SolverLanguagePackage.EXACT_SCOPE: + return createExactScope(); + case SolverLanguagePackage.BOUNDED_SCOPE: + return createBoundedScope(); + case SolverLanguagePackage.LOWER_BOUNDED_SCOPE: + return createLowerBoundedScope(); + case SolverLanguagePackage.NAMESPACE_IMPORT: + return createNamespaceImport(); + case SolverLanguagePackage.IMPORT: + return createImport(); + case SolverLanguagePackage.URI_IMPORT: + return createUriImport(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public Object createFromString(EDataType eDataType, String initialValue) { + switch (eDataType.getClassifierID()) { + case SolverLanguagePackage.UNARY_OPERATOR: + return createUnaryOperatorFromString(eDataType, initialValue); + case SolverLanguagePackage.BINARY_OPERATOR: + return createBinaryOperatorFromString(eDataType, initialValue); + case SolverLanguagePackage.LOGIC_VALUE: + return createLogicValueFromString(eDataType, initialValue); + case SolverLanguagePackage.OBJECTIVE_KIND: + return createObjectiveKindFromString(eDataType, initialValue); + case SolverLanguagePackage.ATTRIBUTE_KIND: + return createAttributeKindFromString(eDataType, initialValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public String convertToString(EDataType eDataType, Object instanceValue) { + switch (eDataType.getClassifierID()) { + case SolverLanguagePackage.UNARY_OPERATOR: + return convertUnaryOperatorToString(eDataType, instanceValue); + case SolverLanguagePackage.BINARY_OPERATOR: + return convertBinaryOperatorToString(eDataType, instanceValue); + case SolverLanguagePackage.LOGIC_VALUE: + return convertLogicValueToString(eDataType, instanceValue); + case SolverLanguagePackage.OBJECTIVE_KIND: + return convertObjectiveKindToString(eDataType, instanceValue); + case SolverLanguagePackage.ATTRIBUTE_KIND: + return convertAttributeKindToString(eDataType, instanceValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + public PathComponent createPathComponent() { + PathComponentImpl pathComponent = new PathComponentImpl(); + return pathComponent; + } + + /** + * + * + * @generated + */ + public Call createCall() { + CallImpl call = new CallImpl(); + return call; + } + + /** + * + * + * @generated + */ + public Reference createReference() { + ReferenceImpl reference = new ReferenceImpl(); + return reference; + } + + /** + * + * + * @generated + */ + public ArgumentList createArgumentList() { + ArgumentListImpl argumentList = new ArgumentListImpl(); + return argumentList; + } + + /** + * + * + * @generated + */ + public ExpressionArgument createExpressionArgument() { + ExpressionArgumentImpl expressionArgument = new ExpressionArgumentImpl(); + return expressionArgument; + } + + /** + * + * + * @generated + */ + public StarArgument createStarArgument() { + StarArgumentImpl starArgument = new StarArgumentImpl(); + return starArgument; + } + + /** + * + * + * @generated + */ + public Variable createVariable() { + VariableImpl variable = new VariableImpl(); + return variable; + } + + /** + * + * + * @generated + */ + public UnaryExpression createUnaryExpression() { + UnaryExpressionImpl unaryExpression = new UnaryExpressionImpl(); + return unaryExpression; + } + + /** + * + * + * @generated + */ + public BinaryExpression createBinaryExpression() { + BinaryExpressionImpl binaryExpression = new BinaryExpressionImpl(); + return binaryExpression; + } + + /** + * + * + * @generated + */ + public Disjunction createDisjunction() { + DisjunctionImpl disjunction = new DisjunctionImpl(); + return disjunction; + } + + /** + * + * + * @generated + */ + public Conjunction createConjunction() { + ConjunctionImpl conjunction = new ConjunctionImpl(); + return conjunction; + } + + /** + * + * + * @generated + */ + public ConditionalExpression createConditionalExpression() { + ConditionalExpressionImpl conditionalExpression = new ConditionalExpressionImpl(); + return conditionalExpression; + } + + /** + * + * + * @generated + */ + public Switch createSwitch() { + SwitchImpl switch_ = new SwitchImpl(); + return switch_; + } + + /** + * + * + * @generated + */ + public Case createCase() { + CaseImpl case_ = new CaseImpl(); + return case_; + } + + /** + * + * + * @generated + */ + public LetExpression createLetExpression() { + LetExpressionImpl letExpression = new LetExpressionImpl(); + return letExpression; + } + + /** + * + * + * @generated + */ + public LetBinding createLetBinding() { + LetBindingImpl letBinding = new LetBindingImpl(); + return letBinding; + } + + /** + * + * + * @generated + */ + public IntLiteral createIntLiteral() { + IntLiteralImpl intLiteral = new IntLiteralImpl(); + return intLiteral; + } + + /** + * + * + * @generated + */ + public RealLiteral createRealLiteral() { + RealLiteralImpl realLiteral = new RealLiteralImpl(); + return realLiteral; + } + + /** + * + * + * @generated + */ + public StringLiteral createStringLiteral() { + StringLiteralImpl stringLiteral = new StringLiteralImpl(); + return stringLiteral; + } + + /** + * + * + * @generated + */ + public LogicLiteral createLogicLiteral() { + LogicLiteralImpl logicLiteral = new LogicLiteralImpl(); + return logicLiteral; + } + + /** + * + * + * @generated + */ + public EmptyLiteral createEmptyLiteral() { + EmptyLiteralImpl emptyLiteral = new EmptyLiteralImpl(); + return emptyLiteral; + } + + /** + * + * + * @generated + */ + public CastExpression createCastExpression() { + CastExpressionImpl castExpression = new CastExpressionImpl(); + return castExpression; + } + + /** + * + * + * @generated + */ + public Count createCount() { + CountImpl count = new CountImpl(); + return count; + } + + /** + * + * + * @generated + */ + public Aggregation createAggregation() { + AggregationImpl aggregation = new AggregationImpl(); + return aggregation; + } + + /** + * + * + * @generated + */ + public Forall createForall() { + ForallImpl forall = new ForallImpl(); + return forall; + } + + /** + * + * + * @generated + */ + public TypeReference createTypeReference() { + TypeReferenceImpl typeReference = new TypeReferenceImpl(); + return typeReference; + } + + /** + * + * + * @generated + */ + public InfinityLiteral createInfinityLiteral() { + InfinityLiteralImpl infinityLiteral = new InfinityLiteralImpl(); + return infinityLiteral; + } + + /** + * + * + * @generated + */ + public Interval createInterval() { + IntervalImpl interval = new IntervalImpl(); + return interval; + } + + /** + * + * + * @generated + */ + public BaseRelation createBaseRelation() { + BaseRelationImpl baseRelation = new BaseRelationImpl(); + return baseRelation; + } + + /** + * + * + * @generated + */ + public Predicate createPredicate() { + PredicateImpl predicate = new PredicateImpl(); + return predicate; + } + + /** + * + * + * @generated + */ + public Datatype createDatatype() { + DatatypeImpl datatype = new DatatypeImpl(); + return datatype; + } + + /** + * + * + * @generated + */ + public Metric createMetric() { + MetricImpl metric = new MetricImpl(); + return metric; + } + + /** + * + * + * @generated + */ + public Operator createOperator() { + OperatorImpl operator = new OperatorImpl(); + return operator; + } + + /** + * + * + * @generated + */ + public Node createNode() { + NodeImpl node = new NodeImpl(); + return node; + } + + /** + * + * + * @generated + */ + public PredicateDefinition createPredicateDefinition() { + PredicateDefinitionImpl predicateDefinition = new PredicateDefinitionImpl(); + return predicateDefinition; + } + + /** + * + * + * @generated + */ + public FunctionDefinition createFunctionDefinition() { + FunctionDefinitionImpl functionDefinition = new FunctionDefinitionImpl(); + return functionDefinition; + } + + /** + * + * + * @generated + */ + public ExternPredicateDeclaration createExternPredicateDeclaration() { + ExternPredicateDeclarationImpl externPredicateDeclaration = new ExternPredicateDeclarationImpl(); + return externPredicateDeclaration; + } + + /** + * + * + * @generated + */ + public ExternFunctionDeclaration createExternFunctionDeclaration() { + ExternFunctionDeclarationImpl externFunctionDeclaration = new ExternFunctionDeclarationImpl(); + return externFunctionDeclaration; + } + + /** + * + * + * @generated + */ + public ExternAggregationOperatorDeclaration createExternAggregationOperatorDeclaration() { + ExternAggregationOperatorDeclarationImpl externAggregationOperatorDeclaration = new ExternAggregationOperatorDeclarationImpl(); + return externAggregationOperatorDeclaration; + } + + /** + * + * + * @generated + */ + public ExternDatatypeDeclaration createExternDatatypeDeclaration() { + ExternDatatypeDeclarationImpl externDatatypeDeclaration = new ExternDatatypeDeclarationImpl(); + return externDatatypeDeclaration; + } + + /** + * + * + * @generated + */ + public ClassDeclaration createClassDeclaration() { + ClassDeclarationImpl classDeclaration = new ClassDeclarationImpl(); + return classDeclaration; + } + + /** + * + * + * @generated + */ + public EnumDeclaration createEnumDeclaration() { + EnumDeclarationImpl enumDeclaration = new EnumDeclarationImpl(); + return enumDeclaration; + } + + /** + * + * + * @generated + */ + public EnumLiteral createEnumLiteral() { + EnumLiteralImpl enumLiteral = new EnumLiteralImpl(); + return enumLiteral; + } + + /** + * + * + * @generated + */ + public Field createField() { + FieldImpl field = new FieldImpl(); + return field; + } + + /** + * + * + * @generated + */ + public DefaultAssertion createDefaultAssertion() { + DefaultAssertionImpl defaultAssertion = new DefaultAssertionImpl(); + return defaultAssertion; + } + + /** + * + * + * @generated + */ + public Assertion createAssertion() { + AssertionImpl assertion = new AssertionImpl(); + return assertion; + } + + /** + * + * + * @generated + */ + public UnboundedMultiplicity createUnboundedMultiplicity() { + UnboundedMultiplicityImpl unboundedMultiplicity = new UnboundedMultiplicityImpl(); + return unboundedMultiplicity; + } + + /** + * + * + * @generated + */ + public ExactMultiplicity createExactMultiplicity() { + ExactMultiplicityImpl exactMultiplicity = new ExactMultiplicityImpl(); + return exactMultiplicity; + } + + /** + * + * + * @generated + */ + public BoundedMultiplicity createBoundedMultiplicity() { + BoundedMultiplicityImpl boundedMultiplicity = new BoundedMultiplicityImpl(); + return boundedMultiplicity; + } + + /** + * + * + * @generated + */ + public AggregationOperator createAggregationOperator() { + AggregationOperatorImpl aggregationOperator = new AggregationOperatorImpl(); + return aggregationOperator; + } + + /** + * + * + * @generated + */ + public Problem createProblem() { + ProblemImpl problem = new ProblemImpl(); + return problem; + } + + /** + * + * + * @generated + */ + public TypedStarArgument createTypedStarArgument() { + TypedStarArgumentImpl typedStarArgument = new TypedStarArgumentImpl(); + return typedStarArgument; + } + + /** + * + * + * @generated + */ + public TypedVariableArgument createTypedVariableArgument() { + TypedVariableArgumentImpl typedVariableArgument = new TypedVariableArgumentImpl(); + return typedVariableArgument; + } + + /** + * + * + * @generated + */ + public UnnamedErrorPredicateDefintion createUnnamedErrorPredicateDefintion() { + UnnamedErrorPredicateDefintionImpl unnamedErrorPredicateDefintion = new UnnamedErrorPredicateDefintionImpl(); + return unnamedErrorPredicateDefintion; + } + + /** + * + * + * @generated + */ + public ObjectiveDeclaration createObjectiveDeclaration() { + ObjectiveDeclarationImpl objectiveDeclaration = new ObjectiveDeclarationImpl(); + return objectiveDeclaration; + } + + /** + * + * + * @generated + */ + public ScopeDeclaration createScopeDeclaration() { + ScopeDeclarationImpl scopeDeclaration = new ScopeDeclarationImpl(); + return scopeDeclaration; + } + + /** + * + * + * @generated + */ + public ExactScope createExactScope() { + ExactScopeImpl exactScope = new ExactScopeImpl(); + return exactScope; + } + + /** + * + * + * @generated + */ + public BoundedScope createBoundedScope() { + BoundedScopeImpl boundedScope = new BoundedScopeImpl(); + return boundedScope; + } + + /** + * + * + * @generated + */ + public LowerBoundedScope createLowerBoundedScope() { + LowerBoundedScopeImpl lowerBoundedScope = new LowerBoundedScopeImpl(); + return lowerBoundedScope; + } + + /** + * + * + * @generated + */ + public NamespaceImport createNamespaceImport() { + NamespaceImportImpl namespaceImport = new NamespaceImportImpl(); + return namespaceImport; + } + + /** + * + * + * @generated + */ + public Import createImport() { + ImportImpl import_ = new ImportImpl(); + return import_; + } + + /** + * + * + * @generated + */ + public UriImport createUriImport() { + UriImportImpl uriImport = new UriImportImpl(); + return uriImport; + } + + /** + * + * + * @generated + */ + public UnaryOperator createUnaryOperatorFromString(EDataType eDataType, String initialValue) { + UnaryOperator result = UnaryOperator.get(initialValue); + if (result == null) + throw new IllegalArgumentException( + "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertUnaryOperatorToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public BinaryOperator createBinaryOperatorFromString(EDataType eDataType, String initialValue) { + BinaryOperator result = BinaryOperator.get(initialValue); + if (result == null) + throw new IllegalArgumentException( + "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertBinaryOperatorToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public LogicValue createLogicValueFromString(EDataType eDataType, String initialValue) { + LogicValue result = LogicValue.get(initialValue); + if (result == null) + throw new IllegalArgumentException( + "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertLogicValueToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public ObjectiveKind createObjectiveKindFromString(EDataType eDataType, String initialValue) { + ObjectiveKind result = ObjectiveKind.get(initialValue); + if (result == null) + throw new IllegalArgumentException( + "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertObjectiveKindToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public AttributeKind createAttributeKindFromString(EDataType eDataType, String initialValue) { + AttributeKind result = AttributeKind.get(initialValue); + if (result == null) + throw new IllegalArgumentException( + "The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertAttributeKindToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public SolverLanguagePackage getSolverLanguagePackage() { + return (SolverLanguagePackage) getEPackage(); + } + + /** + * + * + * @deprecated + * @generated + */ + @Deprecated + public static SolverLanguagePackage getPackage() { + return SolverLanguagePackage.eINSTANCE; + } + +} //SolverLanguageFactoryImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java new file mode 100644 index 00000000..52dde045 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java @@ -0,0 +1,3364 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion; +import org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression; +import org.eclipse.viatra.solver.language.solverLanguage.Aggregation; +import org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator; +import org.eclipse.viatra.solver.language.solverLanguage.Argument; +import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; +import org.eclipse.viatra.solver.language.solverLanguage.Assertion; +import org.eclipse.viatra.solver.language.solverLanguage.Attribute; +import org.eclipse.viatra.solver.language.solverLanguage.AttributeKind; +import org.eclipse.viatra.solver.language.solverLanguage.BaseRelation; +import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression; +import org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator; +import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.BoundedScope; +import org.eclipse.viatra.solver.language.solverLanguage.Call; +import org.eclipse.viatra.solver.language.solverLanguage.Case; +import org.eclipse.viatra.solver.language.solverLanguage.CastExpression; +import org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression; +import org.eclipse.viatra.solver.language.solverLanguage.Conjunction; +import org.eclipse.viatra.solver.language.solverLanguage.Count; +import org.eclipse.viatra.solver.language.solverLanguage.Datatype; +import org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion; +import org.eclipse.viatra.solver.language.solverLanguage.Disjunction; +import org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.ExactScope; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument; +import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.Field; +import org.eclipse.viatra.solver.language.solverLanguage.Forall; +import org.eclipse.viatra.solver.language.solverLanguage.Function; +import org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition; +import org.eclipse.viatra.solver.language.solverLanguage.Functor; +import org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton; +import org.eclipse.viatra.solver.language.solverLanguage.Import; +import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes; +import org.eclipse.viatra.solver.language.solverLanguage.IntLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.Interval; +import org.eclipse.viatra.solver.language.solverLanguage.LetBinding; +import org.eclipse.viatra.solver.language.solverLanguage.LetExpression; +import org.eclipse.viatra.solver.language.solverLanguage.Literal; +import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.LogicValue; +import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope; +import org.eclipse.viatra.solver.language.solverLanguage.Metric; +import org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession; +import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport; +import org.eclipse.viatra.solver.language.solverLanguage.Node; +import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind; +import org.eclipse.viatra.solver.language.solverLanguage.Operator; +import org.eclipse.viatra.solver.language.solverLanguage.PathComponent; +import org.eclipse.viatra.solver.language.solverLanguage.Predicate; +import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition; +import org.eclipse.viatra.solver.language.solverLanguage.Problem; +import org.eclipse.viatra.solver.language.solverLanguage.RealLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.Reference; +import org.eclipse.viatra.solver.language.solverLanguage.Relation; +import org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.StarArgument; +import org.eclipse.viatra.solver.language.solverLanguage.Statement; +import org.eclipse.viatra.solver.language.solverLanguage.StringLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.Switch; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; +import org.eclipse.viatra.solver.language.solverLanguage.TypeReference; +import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument; +import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument; +import org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument; +import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression; +import org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator; +import org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion; +import org.eclipse.viatra.solver.language.solverLanguage.UriImport; +import org.eclipse.viatra.solver.language.solverLanguage.Variable; + +/** + * + * An implementation of the model Package. + * + * @generated + */ +public class SolverLanguagePackageImpl extends EPackageImpl implements SolverLanguagePackage { + /** + * + * + * @generated + */ + private EClass pathComponentEClass = null; + + /** + * + * + * @generated + */ + private EClass symbolEClass = null; + + /** + * + * + * @generated + */ + private EClass callEClass = null; + + /** + * + * + * @generated + */ + private EClass referenceEClass = null; + + /** + * + * + * @generated + */ + private EClass expressionEClass = null; + + /** + * + * + * @generated + */ + private EClass argumentEClass = null; + + /** + * + * + * @generated + */ + private EClass argumentListEClass = null; + + /** + * + * + * @generated + */ + private EClass expressionArgumentEClass = null; + + /** + * + * + * @generated + */ + private EClass starArgumentEClass = null; + + /** + * + * + * @generated + */ + private EClass typedArgumentEClass = null; + + /** + * + * + * @generated + */ + private EClass multiaryExpessionEClass = null; + + /** + * + * + * @generated + */ + private EClass variableEClass = null; + + /** + * + * + * @generated + */ + private EClass unaryExpressionEClass = null; + + /** + * + * + * @generated + */ + private EClass binaryExpressionEClass = null; + + /** + * + * + * @generated + */ + private EClass disjunctionEClass = null; + + /** + * + * + * @generated + */ + private EClass conjunctionEClass = null; + + /** + * + * + * @generated + */ + private EClass conditionalExpressionEClass = null; + + /** + * + * + * @generated + */ + private EClass switchEClass = null; + + /** + * + * + * @generated + */ + private EClass caseEClass = null; + + /** + * + * + * @generated + */ + private EClass letExpressionEClass = null; + + /** + * + * + * @generated + */ + private EClass letBindingEClass = null; + + /** + * + * + * @generated + */ + private EClass literalEClass = null; + + /** + * + * + * @generated + */ + private EClass intLiteralEClass = null; + + /** + * + * + * @generated + */ + private EClass realLiteralEClass = null; + + /** + * + * + * @generated + */ + private EClass stringLiteralEClass = null; + + /** + * + * + * @generated + */ + private EClass logicLiteralEClass = null; + + /** + * + * + * @generated + */ + private EClass emptyLiteralEClass = null; + + /** + * + * + * @generated + */ + private EClass castExpressionEClass = null; + + /** + * + * + * @generated + */ + private EClass aggregateExpressionEClass = null; + + /** + * + * + * @generated + */ + private EClass countEClass = null; + + /** + * + * + * @generated + */ + private EClass aggregationEClass = null; + + /** + * + * + * @generated + */ + private EClass forallEClass = null; + + /** + * + * + * @generated + */ + private EClass typeReferenceEClass = null; + + /** + * + * + * @generated + */ + private EClass infinityLiteralEClass = null; + + /** + * + * + * @generated + */ + private EClass intervalEClass = null; + + /** + * + * + * @generated + */ + private EClass functorEClass = null; + + /** + * + * + * @generated + */ + private EClass relationEClass = null; + + /** + * + * + * @generated + */ + private EClass baseRelationEClass = null; + + /** + * + * + * @generated + */ + private EClass predicateEClass = null; + + /** + * + * + * @generated + */ + private EClass datatypeEClass = null; + + /** + * + * + * @generated + */ + private EClass functionEClass = null; + + /** + * + * + * @generated + */ + private EClass metricEClass = null; + + /** + * + * + * @generated + */ + private EClass operatorEClass = null; + + /** + * + * + * @generated + */ + private EClass nodeEClass = null; + + /** + * + * + * @generated + */ + private EClass statementEClass = null; + + /** + * + * + * @generated + */ + private EClass abstractAssertionEClass = null; + + /** + * + * + * @generated + */ + private EClass functorDefinitonEClass = null; + + /** + * + * + * @generated + */ + private EClass predicateDefinitionEClass = null; + + /** + * + * + * @generated + */ + private EClass functionDefinitionEClass = null; + + /** + * + * + * @generated + */ + private EClass attributeEClass = null; + + /** + * + * + * @generated + */ + private EClass externDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass externFunctorDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass externPredicateDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass externFunctionDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass externAggregationOperatorDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass externDatatypeDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass classDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass enumDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass enumLiteralEClass = null; + + /** + * + * + * @generated + */ + private EClass fieldEClass = null; + + /** + * + * + * @generated + */ + private EClass multiplicityEClass = null; + + /** + * + * + * @generated + */ + private EClass defaultAssertionEClass = null; + + /** + * + * + * @generated + */ + private EClass assertionEClass = null; + + /** + * + * + * @generated + */ + private EClass unboundedMultiplicityEClass = null; + + /** + * + * + * @generated + */ + private EClass exactMultiplicityEClass = null; + + /** + * + * + * @generated + */ + private EClass boundedMultiplicityEClass = null; + + /** + * + * + * @generated + */ + private EClass inlinePredicateAttrributesEClass = null; + + /** + * + * + * @generated + */ + private EClass aggregationOperatorEClass = null; + + /** + * + * + * @generated + */ + private EClass problemEClass = null; + + /** + * + * + * @generated + */ + private EClass typedStarArgumentEClass = null; + + /** + * + * + * @generated + */ + private EClass typedVariableArgumentEClass = null; + + /** + * + * + * @generated + */ + private EClass unnamedErrorPredicateDefintionEClass = null; + + /** + * + * + * @generated + */ + private EClass objectiveDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass scopeDeclarationEClass = null; + + /** + * + * + * @generated + */ + private EClass exactScopeEClass = null; + + /** + * + * + * @generated + */ + private EClass boundedScopeEClass = null; + + /** + * + * + * @generated + */ + private EClass lowerBoundedScopeEClass = null; + + /** + * + * + * @generated + */ + private EClass namespaceImportEClass = null; + + /** + * + * + * @generated + */ + private EClass importEClass = null; + + /** + * + * + * @generated + */ + private EClass uriImportEClass = null; + + /** + * + * + * @generated + */ + private EEnum unaryOperatorEEnum = null; + + /** + * + * + * @generated + */ + private EEnum binaryOperatorEEnum = null; + + /** + * + * + * @generated + */ + private EEnum logicValueEEnum = null; + + /** + * + * + * @generated + */ + private EEnum objectiveKindEEnum = null; + + /** + * + * + * @generated + */ + private EEnum attributeKindEEnum = null; + + /** + * Creates an instance of the model Package, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + *

Note: the correct way to create the package is via the static + * factory method {@link #init init()}, which also performs + * initialization of the package, or returns the registered package, + * if one already exists. + * + * + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#eNS_URI + * @see #init() + * @generated + */ + private SolverLanguagePackageImpl() { + super(eNS_URI, SolverLanguageFactory.eINSTANCE); + } + + /** + * + * + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the Package for this model, and for any others upon which it depends. + * + *

This method is used to initialize {@link SolverLanguagePackage#eINSTANCE} when that field is accessed. + * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. + * + * + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static SolverLanguagePackage init() { + if (isInited) + return (SolverLanguagePackage) EPackage.Registry.INSTANCE.getEPackage(SolverLanguagePackage.eNS_URI); + + // Obtain or create and register package + Object registeredSolverLanguagePackage = EPackage.Registry.INSTANCE.get(eNS_URI); + SolverLanguagePackageImpl theSolverLanguagePackage = registeredSolverLanguagePackage instanceof SolverLanguagePackageImpl + ? (SolverLanguagePackageImpl) registeredSolverLanguagePackage + : new SolverLanguagePackageImpl(); + + isInited = true; + + // Create package meta-data objects + theSolverLanguagePackage.createPackageContents(); + + // Initialize created meta-data + theSolverLanguagePackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theSolverLanguagePackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(SolverLanguagePackage.eNS_URI, theSolverLanguagePackage); + return theSolverLanguagePackage; + } + + /** + * + * + * @generated + */ + public EClass getPathComponent() { + return pathComponentEClass; + } + + /** + * + * + * @generated + */ + public EReference getPathComponent_Symbol() { + return (EReference) pathComponentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getPathComponent_Inverse() { + return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EAttribute getPathComponent_TransitiveClosure() { + return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EAttribute getPathComponent_ReflexiveTransitiveClosure() { + return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EClass getSymbol() { + return symbolEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getSymbol_Name() { + return (EAttribute) symbolEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getCall() { + return callEClass; + } + + /** + * + * + * @generated + */ + public EReference getCall_Functor() { + return (EReference) callEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getCall_ArgumentList() { + return (EReference) callEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getReference() { + return referenceEClass; + } + + /** + * + * + * @generated + */ + public EReference getReference_Components() { + return (EReference) referenceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getExpression() { + return expressionEClass; + } + + /** + * + * + * @generated + */ + public EReference getExpression_ExistsVariables() { + return (EReference) expressionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getArgument() { + return argumentEClass; + } + + /** + * + * + * @generated + */ + public EClass getArgumentList() { + return argumentListEClass; + } + + /** + * + * + * @generated + */ + public EReference getArgumentList_Arguments() { + return (EReference) argumentListEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getExpressionArgument() { + return expressionArgumentEClass; + } + + /** + * + * + * @generated + */ + public EReference getExpressionArgument_Expression() { + return (EReference) expressionArgumentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getStarArgument() { + return starArgumentEClass; + } + + /** + * + * + * @generated + */ + public EClass getTypedArgument() { + return typedArgumentEClass; + } + + /** + * + * + * @generated + */ + public EReference getTypedArgument_TypeReference() { + return (EReference) typedArgumentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getMultiaryExpession() { + return multiaryExpessionEClass; + } + + /** + * + * + * @generated + */ + public EReference getMultiaryExpession_Children() { + return (EReference) multiaryExpessionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getVariable() { + return variableEClass; + } + + /** + * + * + * @generated + */ + public EReference getVariable_TypeReference() { + return (EReference) variableEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getUnaryExpression() { + return unaryExpressionEClass; + } + + /** + * + * + * @generated + */ + public EReference getUnaryExpression_Body() { + return (EReference) unaryExpressionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getUnaryExpression_Op() { + return (EAttribute) unaryExpressionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getBinaryExpression() { + return binaryExpressionEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getBinaryExpression_Op() { + return (EAttribute) binaryExpressionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getBinaryExpression_Left() { + return (EReference) binaryExpressionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getBinaryExpression_Right() { + return (EReference) binaryExpressionEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EClass getDisjunction() { + return disjunctionEClass; + } + + /** + * + * + * @generated + */ + public EClass getConjunction() { + return conjunctionEClass; + } + + /** + * + * + * @generated + */ + public EClass getConditionalExpression() { + return conditionalExpressionEClass; + } + + /** + * + * + * @generated + */ + public EReference getConditionalExpression_Condition() { + return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getConditionalExpression_Then() { + return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getConditionalExpression_Else() { + return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EClass getSwitch() { + return switchEClass; + } + + /** + * + * + * @generated + */ + public EReference getSwitch_Cases() { + return (EReference) switchEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getCase() { + return caseEClass; + } + + /** + * + * + * @generated + */ + public EReference getCase_Condition() { + return (EReference) caseEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getCase_Body() { + return (EReference) caseEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getLetExpression() { + return letExpressionEClass; + } + + /** + * + * + * @generated + */ + public EReference getLetExpression_Bindings() { + return (EReference) letExpressionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getLetExpression_Body() { + return (EReference) letExpressionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getLetBinding() { + return letBindingEClass; + } + + /** + * + * + * @generated + */ + public EReference getLetBinding_Value() { + return (EReference) letBindingEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getLetBinding_Variable() { + return (EReference) letBindingEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EAttribute getLetBinding_Name() { + return (EAttribute) letBindingEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EReference getLetBinding_Type() { + return (EReference) letBindingEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EClass getLiteral() { + return literalEClass; + } + + /** + * + * + * @generated + */ + public EClass getIntLiteral() { + return intLiteralEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getIntLiteral_Value() { + return (EAttribute) intLiteralEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getRealLiteral() { + return realLiteralEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getRealLiteral_Value() { + return (EAttribute) realLiteralEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getStringLiteral() { + return stringLiteralEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getStringLiteral_Value() { + return (EAttribute) stringLiteralEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getLogicLiteral() { + return logicLiteralEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getLogicLiteral_Value() { + return (EAttribute) logicLiteralEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getEmptyLiteral() { + return emptyLiteralEClass; + } + + /** + * + * + * @generated + */ + public EClass getCastExpression() { + return castExpressionEClass; + } + + /** + * + * + * @generated + */ + public EReference getCastExpression_Body() { + return (EReference) castExpressionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getCastExpression_TargetType() { + return (EReference) castExpressionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getAggregateExpression() { + return aggregateExpressionEClass; + } + + /** + * + * + * @generated + */ + public EReference getAggregateExpression_ForallVariables() { + return (EReference) aggregateExpressionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getAggregateExpression_Condition() { + return (EReference) aggregateExpressionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getCount() { + return countEClass; + } + + /** + * + * + * @generated + */ + public EClass getAggregation() { + return aggregationEClass; + } + + /** + * + * + * @generated + */ + public EReference getAggregation_Value() { + return (EReference) aggregationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getAggregation_Op() { + return (EReference) aggregationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getForall() { + return forallEClass; + } + + /** + * + * + * @generated + */ + public EReference getForall_Body() { + return (EReference) forallEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getTypeReference() { + return typeReferenceEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getTypeReference_ForceObjectType() { + return (EAttribute) typeReferenceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getTypeReference_Type() { + return (EReference) typeReferenceEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getInfinityLiteral() { + return infinityLiteralEClass; + } + + /** + * + * + * @generated + */ + public EClass getInterval() { + return intervalEClass; + } + + /** + * + * + * @generated + */ + public EReference getInterval_LowerBound() { + return (EReference) intervalEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getInterval_UpperBound() { + return (EReference) intervalEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getFunctor() { + return functorEClass; + } + + /** + * + * + * @generated + */ + public EReference getFunctor_Parameters() { + return (EReference) functorEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getRelation() { + return relationEClass; + } + + /** + * + * + * @generated + */ + public EClass getBaseRelation() { + return baseRelationEClass; + } + + /** + * + * + * @generated + */ + public EClass getPredicate() { + return predicateEClass; + } + + /** + * + * + * @generated + */ + public EClass getDatatype() { + return datatypeEClass; + } + + /** + * + * + * @generated + */ + public EClass getFunction() { + return functionEClass; + } + + /** + * + * + * @generated + */ + public EReference getFunction_ResultType() { + return (EReference) functionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getMetric() { + return metricEClass; + } + + /** + * + * + * @generated + */ + public EClass getOperator() { + return operatorEClass; + } + + /** + * + * + * @generated + */ + public EClass getNode() { + return nodeEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getNode_Named() { + return (EAttribute) nodeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getStatement() { + return statementEClass; + } + + /** + * + * + * @generated + */ + public EClass getAbstractAssertion() { + return abstractAssertionEClass; + } + + /** + * + * + * @generated + */ + public EReference getAbstractAssertion_Expression() { + return (EReference) abstractAssertionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getAbstractAssertion_Range() { + return (EReference) abstractAssertionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getFunctorDefiniton() { + return functorDefinitonEClass; + } + + /** + * + * + * @generated + */ + public EReference getFunctorDefiniton_Head() { + return (EReference) functorDefinitonEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getFunctorDefiniton_Body() { + return (EReference) functorDefinitonEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getPredicateDefinition() { + return predicateDefinitionEClass; + } + + /** + * + * + * @generated + */ + public EClass getFunctionDefinition() { + return functionDefinitionEClass; + } + + /** + * + * + * @generated + */ + public EReference getFunctionDefinition_ResultType() { + return (EReference) functionDefinitionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getAttribute() { + return attributeEClass; + } + + /** + * + * + * @generated + */ + public EReference getAttribute_Target() { + return (EReference) attributeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getAttribute_Kind() { + return (EAttribute) attributeEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getExternDeclaration() { + return externDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getExternDeclaration_Name() { + return (EAttribute) externDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getExternFunctorDeclaration() { + return externFunctorDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EReference getExternFunctorDeclaration_ArgumentList() { + return (EReference) externFunctorDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getExternPredicateDeclaration() { + return externPredicateDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EClass getExternFunctionDeclaration() { + return externFunctionDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EReference getExternFunctionDeclaration_ResultType() { + return (EReference) externFunctionDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getExternAggregationOperatorDeclaration() { + return externAggregationOperatorDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EReference getExternAggregationOperatorDeclaration_ArgumentType() { + return (EReference) externAggregationOperatorDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getExternAggregationOperatorDeclaration_ResultType() { + return (EReference) externAggregationOperatorDeclarationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getExternDatatypeDeclaration() { + return externDatatypeDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EClass getClassDeclaration() { + return classDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EReference getClassDeclaration_Fields() { + return (EReference) classDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getClassDeclaration_Name() { + return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EAttribute getClassDeclaration_Abstract() { + return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EReference getClassDeclaration_Supertypes() { + return (EReference) classDeclarationEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EAttribute getClassDeclaration_Root() { + return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + public EClass getEnumDeclaration() { + return enumDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EReference getEnumDeclaration_Literals() { + return (EReference) enumDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getEnumDeclaration_Name() { + return (EAttribute) enumDeclarationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getEnumLiteral() { + return enumLiteralEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getEnumLiteral_Name() { + return (EAttribute) enumLiteralEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getField() { + return fieldEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getField_Containment() { + return (EAttribute) fieldEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getField_CrossReference() { + return (EAttribute) fieldEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getField_Opposite() { + return (EReference) fieldEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EReference getField_Multiplicity() { + return (EReference) fieldEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EReference getField_Type() { + return (EReference) fieldEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + public EAttribute getField_Name() { + return (EAttribute) fieldEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + public EClass getMultiplicity() { + return multiplicityEClass; + } + + /** + * + * + * @generated + */ + public EClass getDefaultAssertion() { + return defaultAssertionEClass; + } + + /** + * + * + * @generated + */ + public EClass getAssertion() { + return assertionEClass; + } + + /** + * + * + * @generated + */ + public EClass getUnboundedMultiplicity() { + return unboundedMultiplicityEClass; + } + + /** + * + * + * @generated + */ + public EClass getExactMultiplicity() { + return exactMultiplicityEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getExactMultiplicity_Value() { + return (EAttribute) exactMultiplicityEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getBoundedMultiplicity() { + return boundedMultiplicityEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getBoundedMultiplicity_LowerBound() { + return (EAttribute) boundedMultiplicityEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getBoundedMultiplicity_UpperBound() { + return (EAttribute) boundedMultiplicityEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getInlinePredicateAttrributes() { + return inlinePredicateAttrributesEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getInlinePredicateAttrributes_Error() { + return (EAttribute) inlinePredicateAttrributesEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getInlinePredicateAttrributes_Functional() { + return (EAttribute) inlinePredicateAttrributesEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getAggregationOperator() { + return aggregationOperatorEClass; + } + + /** + * + * + * @generated + */ + public EReference getAggregationOperator_ArgumentType() { + return (EReference) aggregationOperatorEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getAggregationOperator_ResultType() { + return (EReference) aggregationOperatorEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getProblem() { + return problemEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getProblem_Name() { + return (EAttribute) problemEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getProblem_Statements() { + return (EReference) problemEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EReference getProblem_Symbols() { + return (EReference) problemEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + public EReference getProblem_Imports() { + return (EReference) problemEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + public EClass getTypedStarArgument() { + return typedStarArgumentEClass; + } + + /** + * + * + * @generated + */ + public EClass getTypedVariableArgument() { + return typedVariableArgumentEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getTypedVariableArgument_Name() { + return (EAttribute) typedVariableArgumentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getUnnamedErrorPredicateDefintion() { + return unnamedErrorPredicateDefintionEClass; + } + + /** + * + * + * @generated + */ + public EReference getUnnamedErrorPredicateDefintion_ArgumentList() { + return (EReference) unnamedErrorPredicateDefintionEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getUnnamedErrorPredicateDefintion_Body() { + return (EReference) unnamedErrorPredicateDefintionEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getObjectiveDeclaration() { + return objectiveDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getObjectiveDeclaration_Kind() { + return (EAttribute) objectiveDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EReference getObjectiveDeclaration_Objective() { + return (EReference) objectiveDeclarationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getScopeDeclaration() { + return scopeDeclarationEClass; + } + + /** + * + * + * @generated + */ + public EReference getScopeDeclaration_Type() { + return (EReference) scopeDeclarationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getExactScope() { + return exactScopeEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getExactScope_Size() { + return (EAttribute) exactScopeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getBoundedScope() { + return boundedScopeEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getBoundedScope_LowerBound() { + return (EAttribute) boundedScopeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EAttribute getBoundedScope_UpperBound() { + return (EAttribute) boundedScopeEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + public EClass getLowerBoundedScope() { + return lowerBoundedScopeEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getLowerBoundedScope_LowerBound() { + return (EAttribute) lowerBoundedScopeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getNamespaceImport() { + return namespaceImportEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getNamespaceImport_ImportedNamespace() { + return (EAttribute) namespaceImportEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getImport() { + return importEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getImport_Alias() { + return (EAttribute) importEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EClass getUriImport() { + return uriImportEClass; + } + + /** + * + * + * @generated + */ + public EAttribute getUriImport_Uri() { + return (EAttribute) uriImportEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + public EEnum getUnaryOperator() { + return unaryOperatorEEnum; + } + + /** + * + * + * @generated + */ + public EEnum getBinaryOperator() { + return binaryOperatorEEnum; + } + + /** + * + * + * @generated + */ + public EEnum getLogicValue() { + return logicValueEEnum; + } + + /** + * + * + * @generated + */ + public EEnum getObjectiveKind() { + return objectiveKindEEnum; + } + + /** + * + * + * @generated + */ + public EEnum getAttributeKind() { + return attributeKindEEnum; + } + + /** + * + * + * @generated + */ + public SolverLanguageFactory getSolverLanguageFactory() { + return (SolverLanguageFactory) getEFactoryInstance(); + } + + /** + * + * + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void createPackageContents() { + if (isCreated) + return; + isCreated = true; + + // Create classes and their features + pathComponentEClass = createEClass(PATH_COMPONENT); + createEReference(pathComponentEClass, PATH_COMPONENT__SYMBOL); + createEAttribute(pathComponentEClass, PATH_COMPONENT__INVERSE); + createEAttribute(pathComponentEClass, PATH_COMPONENT__TRANSITIVE_CLOSURE); + createEAttribute(pathComponentEClass, PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE); + + symbolEClass = createEClass(SYMBOL); + createEAttribute(symbolEClass, SYMBOL__NAME); + + callEClass = createEClass(CALL); + createEReference(callEClass, CALL__FUNCTOR); + createEReference(callEClass, CALL__ARGUMENT_LIST); + + referenceEClass = createEClass(REFERENCE); + createEReference(referenceEClass, REFERENCE__COMPONENTS); + + expressionEClass = createEClass(EXPRESSION); + createEReference(expressionEClass, EXPRESSION__EXISTS_VARIABLES); + + argumentEClass = createEClass(ARGUMENT); + + argumentListEClass = createEClass(ARGUMENT_LIST); + createEReference(argumentListEClass, ARGUMENT_LIST__ARGUMENTS); + + expressionArgumentEClass = createEClass(EXPRESSION_ARGUMENT); + createEReference(expressionArgumentEClass, EXPRESSION_ARGUMENT__EXPRESSION); + + starArgumentEClass = createEClass(STAR_ARGUMENT); + + typedArgumentEClass = createEClass(TYPED_ARGUMENT); + createEReference(typedArgumentEClass, TYPED_ARGUMENT__TYPE_REFERENCE); + + multiaryExpessionEClass = createEClass(MULTIARY_EXPESSION); + createEReference(multiaryExpessionEClass, MULTIARY_EXPESSION__CHILDREN); + + variableEClass = createEClass(VARIABLE); + createEReference(variableEClass, VARIABLE__TYPE_REFERENCE); + + unaryExpressionEClass = createEClass(UNARY_EXPRESSION); + createEReference(unaryExpressionEClass, UNARY_EXPRESSION__BODY); + createEAttribute(unaryExpressionEClass, UNARY_EXPRESSION__OP); + + binaryExpressionEClass = createEClass(BINARY_EXPRESSION); + createEAttribute(binaryExpressionEClass, BINARY_EXPRESSION__OP); + createEReference(binaryExpressionEClass, BINARY_EXPRESSION__LEFT); + createEReference(binaryExpressionEClass, BINARY_EXPRESSION__RIGHT); + + disjunctionEClass = createEClass(DISJUNCTION); + + conjunctionEClass = createEClass(CONJUNCTION); + + conditionalExpressionEClass = createEClass(CONDITIONAL_EXPRESSION); + createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__CONDITION); + createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__THEN); + createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__ELSE); + + switchEClass = createEClass(SWITCH); + createEReference(switchEClass, SWITCH__CASES); + + caseEClass = createEClass(CASE); + createEReference(caseEClass, CASE__CONDITION); + createEReference(caseEClass, CASE__BODY); + + letExpressionEClass = createEClass(LET_EXPRESSION); + createEReference(letExpressionEClass, LET_EXPRESSION__BINDINGS); + createEReference(letExpressionEClass, LET_EXPRESSION__BODY); + + letBindingEClass = createEClass(LET_BINDING); + createEReference(letBindingEClass, LET_BINDING__VALUE); + createEReference(letBindingEClass, LET_BINDING__VARIABLE); + createEAttribute(letBindingEClass, LET_BINDING__NAME); + createEReference(letBindingEClass, LET_BINDING__TYPE); + + literalEClass = createEClass(LITERAL); + + intLiteralEClass = createEClass(INT_LITERAL); + createEAttribute(intLiteralEClass, INT_LITERAL__VALUE); + + realLiteralEClass = createEClass(REAL_LITERAL); + createEAttribute(realLiteralEClass, REAL_LITERAL__VALUE); + + stringLiteralEClass = createEClass(STRING_LITERAL); + createEAttribute(stringLiteralEClass, STRING_LITERAL__VALUE); + + logicLiteralEClass = createEClass(LOGIC_LITERAL); + createEAttribute(logicLiteralEClass, LOGIC_LITERAL__VALUE); + + emptyLiteralEClass = createEClass(EMPTY_LITERAL); + + castExpressionEClass = createEClass(CAST_EXPRESSION); + createEReference(castExpressionEClass, CAST_EXPRESSION__BODY); + createEReference(castExpressionEClass, CAST_EXPRESSION__TARGET_TYPE); + + aggregateExpressionEClass = createEClass(AGGREGATE_EXPRESSION); + createEReference(aggregateExpressionEClass, AGGREGATE_EXPRESSION__FORALL_VARIABLES); + createEReference(aggregateExpressionEClass, AGGREGATE_EXPRESSION__CONDITION); + + countEClass = createEClass(COUNT); + + aggregationEClass = createEClass(AGGREGATION); + createEReference(aggregationEClass, AGGREGATION__VALUE); + createEReference(aggregationEClass, AGGREGATION__OP); + + forallEClass = createEClass(FORALL); + createEReference(forallEClass, FORALL__BODY); + + typeReferenceEClass = createEClass(TYPE_REFERENCE); + createEAttribute(typeReferenceEClass, TYPE_REFERENCE__FORCE_OBJECT_TYPE); + createEReference(typeReferenceEClass, TYPE_REFERENCE__TYPE); + + infinityLiteralEClass = createEClass(INFINITY_LITERAL); + + intervalEClass = createEClass(INTERVAL); + createEReference(intervalEClass, INTERVAL__LOWER_BOUND); + createEReference(intervalEClass, INTERVAL__UPPER_BOUND); + + functorEClass = createEClass(FUNCTOR); + createEReference(functorEClass, FUNCTOR__PARAMETERS); + + relationEClass = createEClass(RELATION); + + baseRelationEClass = createEClass(BASE_RELATION); + + predicateEClass = createEClass(PREDICATE); + + datatypeEClass = createEClass(DATATYPE); + + functionEClass = createEClass(FUNCTION); + createEReference(functionEClass, FUNCTION__RESULT_TYPE); + + metricEClass = createEClass(METRIC); + + operatorEClass = createEClass(OPERATOR); + + nodeEClass = createEClass(NODE); + createEAttribute(nodeEClass, NODE__NAMED); + + statementEClass = createEClass(STATEMENT); + + abstractAssertionEClass = createEClass(ABSTRACT_ASSERTION); + createEReference(abstractAssertionEClass, ABSTRACT_ASSERTION__EXPRESSION); + createEReference(abstractAssertionEClass, ABSTRACT_ASSERTION__RANGE); + + functorDefinitonEClass = createEClass(FUNCTOR_DEFINITON); + createEReference(functorDefinitonEClass, FUNCTOR_DEFINITON__HEAD); + createEReference(functorDefinitonEClass, FUNCTOR_DEFINITON__BODY); + + predicateDefinitionEClass = createEClass(PREDICATE_DEFINITION); + + functionDefinitionEClass = createEClass(FUNCTION_DEFINITION); + createEReference(functionDefinitionEClass, FUNCTION_DEFINITION__RESULT_TYPE); + + attributeEClass = createEClass(ATTRIBUTE); + createEReference(attributeEClass, ATTRIBUTE__TARGET); + createEAttribute(attributeEClass, ATTRIBUTE__KIND); + + externDeclarationEClass = createEClass(EXTERN_DECLARATION); + createEAttribute(externDeclarationEClass, EXTERN_DECLARATION__NAME); + + externFunctorDeclarationEClass = createEClass(EXTERN_FUNCTOR_DECLARATION); + createEReference(externFunctorDeclarationEClass, EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST); + + externPredicateDeclarationEClass = createEClass(EXTERN_PREDICATE_DECLARATION); + + externFunctionDeclarationEClass = createEClass(EXTERN_FUNCTION_DECLARATION); + createEReference(externFunctionDeclarationEClass, EXTERN_FUNCTION_DECLARATION__RESULT_TYPE); + + externAggregationOperatorDeclarationEClass = createEClass(EXTERN_AGGREGATION_OPERATOR_DECLARATION); + createEReference(externAggregationOperatorDeclarationEClass, + EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE); + createEReference(externAggregationOperatorDeclarationEClass, + EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE); + + externDatatypeDeclarationEClass = createEClass(EXTERN_DATATYPE_DECLARATION); + + classDeclarationEClass = createEClass(CLASS_DECLARATION); + createEReference(classDeclarationEClass, CLASS_DECLARATION__FIELDS); + createEAttribute(classDeclarationEClass, CLASS_DECLARATION__NAME); + createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ABSTRACT); + createEReference(classDeclarationEClass, CLASS_DECLARATION__SUPERTYPES); + createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ROOT); + + enumDeclarationEClass = createEClass(ENUM_DECLARATION); + createEReference(enumDeclarationEClass, ENUM_DECLARATION__LITERALS); + createEAttribute(enumDeclarationEClass, ENUM_DECLARATION__NAME); + + enumLiteralEClass = createEClass(ENUM_LITERAL); + createEAttribute(enumLiteralEClass, ENUM_LITERAL__NAME); + + fieldEClass = createEClass(FIELD); + createEAttribute(fieldEClass, FIELD__CONTAINMENT); + createEAttribute(fieldEClass, FIELD__CROSS_REFERENCE); + createEReference(fieldEClass, FIELD__OPPOSITE); + createEReference(fieldEClass, FIELD__MULTIPLICITY); + createEReference(fieldEClass, FIELD__TYPE); + createEAttribute(fieldEClass, FIELD__NAME); + + multiplicityEClass = createEClass(MULTIPLICITY); + + defaultAssertionEClass = createEClass(DEFAULT_ASSERTION); + + assertionEClass = createEClass(ASSERTION); + + unboundedMultiplicityEClass = createEClass(UNBOUNDED_MULTIPLICITY); + + exactMultiplicityEClass = createEClass(EXACT_MULTIPLICITY); + createEAttribute(exactMultiplicityEClass, EXACT_MULTIPLICITY__VALUE); + + boundedMultiplicityEClass = createEClass(BOUNDED_MULTIPLICITY); + createEAttribute(boundedMultiplicityEClass, BOUNDED_MULTIPLICITY__LOWER_BOUND); + createEAttribute(boundedMultiplicityEClass, BOUNDED_MULTIPLICITY__UPPER_BOUND); + + inlinePredicateAttrributesEClass = createEClass(INLINE_PREDICATE_ATTRRIBUTES); + createEAttribute(inlinePredicateAttrributesEClass, INLINE_PREDICATE_ATTRRIBUTES__ERROR); + createEAttribute(inlinePredicateAttrributesEClass, INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL); + + aggregationOperatorEClass = createEClass(AGGREGATION_OPERATOR); + createEReference(aggregationOperatorEClass, AGGREGATION_OPERATOR__ARGUMENT_TYPE); + createEReference(aggregationOperatorEClass, AGGREGATION_OPERATOR__RESULT_TYPE); + + problemEClass = createEClass(PROBLEM); + createEAttribute(problemEClass, PROBLEM__NAME); + createEReference(problemEClass, PROBLEM__STATEMENTS); + createEReference(problemEClass, PROBLEM__SYMBOLS); + createEReference(problemEClass, PROBLEM__IMPORTS); + + typedStarArgumentEClass = createEClass(TYPED_STAR_ARGUMENT); + + typedVariableArgumentEClass = createEClass(TYPED_VARIABLE_ARGUMENT); + createEAttribute(typedVariableArgumentEClass, TYPED_VARIABLE_ARGUMENT__NAME); + + unnamedErrorPredicateDefintionEClass = createEClass(UNNAMED_ERROR_PREDICATE_DEFINTION); + createEReference(unnamedErrorPredicateDefintionEClass, UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST); + createEReference(unnamedErrorPredicateDefintionEClass, UNNAMED_ERROR_PREDICATE_DEFINTION__BODY); + + objectiveDeclarationEClass = createEClass(OBJECTIVE_DECLARATION); + createEAttribute(objectiveDeclarationEClass, OBJECTIVE_DECLARATION__KIND); + createEReference(objectiveDeclarationEClass, OBJECTIVE_DECLARATION__OBJECTIVE); + + scopeDeclarationEClass = createEClass(SCOPE_DECLARATION); + createEReference(scopeDeclarationEClass, SCOPE_DECLARATION__TYPE); + + exactScopeEClass = createEClass(EXACT_SCOPE); + createEAttribute(exactScopeEClass, EXACT_SCOPE__SIZE); + + boundedScopeEClass = createEClass(BOUNDED_SCOPE); + createEAttribute(boundedScopeEClass, BOUNDED_SCOPE__LOWER_BOUND); + createEAttribute(boundedScopeEClass, BOUNDED_SCOPE__UPPER_BOUND); + + lowerBoundedScopeEClass = createEClass(LOWER_BOUNDED_SCOPE); + createEAttribute(lowerBoundedScopeEClass, LOWER_BOUNDED_SCOPE__LOWER_BOUND); + + namespaceImportEClass = createEClass(NAMESPACE_IMPORT); + createEAttribute(namespaceImportEClass, NAMESPACE_IMPORT__IMPORTED_NAMESPACE); + + importEClass = createEClass(IMPORT); + createEAttribute(importEClass, IMPORT__ALIAS); + + uriImportEClass = createEClass(URI_IMPORT); + createEAttribute(uriImportEClass, URI_IMPORT__URI); + + // Create enums + unaryOperatorEEnum = createEEnum(UNARY_OPERATOR); + binaryOperatorEEnum = createEEnum(BINARY_OPERATOR); + logicValueEEnum = createEEnum(LOGIC_VALUE); + objectiveKindEEnum = createEEnum(OBJECTIVE_KIND); + attributeKindEEnum = createEEnum(ATTRIBUTE_KIND); + } + + /** + * + * + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void initializePackageContents() { + if (isInitialized) + return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + callEClass.getESuperTypes().add(this.getExpression()); + referenceEClass.getESuperTypes().add(this.getExpression()); + expressionEClass.getESuperTypes().add(this.getStatement()); + expressionArgumentEClass.getESuperTypes().add(this.getArgument()); + starArgumentEClass.getESuperTypes().add(this.getArgument()); + typedArgumentEClass.getESuperTypes().add(this.getArgument()); + multiaryExpessionEClass.getESuperTypes().add(this.getExpression()); + variableEClass.getESuperTypes().add(this.getSymbol()); + unaryExpressionEClass.getESuperTypes().add(this.getExpression()); + binaryExpressionEClass.getESuperTypes().add(this.getExpression()); + disjunctionEClass.getESuperTypes().add(this.getMultiaryExpession()); + conjunctionEClass.getESuperTypes().add(this.getMultiaryExpession()); + conditionalExpressionEClass.getESuperTypes().add(this.getExpression()); + switchEClass.getESuperTypes().add(this.getExpression()); + caseEClass.getESuperTypes().add(this.getExpression()); + letExpressionEClass.getESuperTypes().add(this.getExpression()); + literalEClass.getESuperTypes().add(this.getExpression()); + intLiteralEClass.getESuperTypes().add(this.getLiteral()); + realLiteralEClass.getESuperTypes().add(this.getLiteral()); + stringLiteralEClass.getESuperTypes().add(this.getLiteral()); + logicLiteralEClass.getESuperTypes().add(this.getLiteral()); + emptyLiteralEClass.getESuperTypes().add(this.getLiteral()); + castExpressionEClass.getESuperTypes().add(this.getExpression()); + aggregateExpressionEClass.getESuperTypes().add(this.getExpression()); + countEClass.getESuperTypes().add(this.getAggregateExpression()); + aggregationEClass.getESuperTypes().add(this.getAggregateExpression()); + forallEClass.getESuperTypes().add(this.getAggregateExpression()); + infinityLiteralEClass.getESuperTypes().add(this.getLiteral()); + intervalEClass.getESuperTypes().add(this.getExpression()); + functorEClass.getESuperTypes().add(this.getSymbol()); + relationEClass.getESuperTypes().add(this.getFunctor()); + baseRelationEClass.getESuperTypes().add(this.getRelation()); + predicateEClass.getESuperTypes().add(this.getRelation()); + datatypeEClass.getESuperTypes().add(this.getRelation()); + functionEClass.getESuperTypes().add(this.getFunctor()); + metricEClass.getESuperTypes().add(this.getFunction()); + operatorEClass.getESuperTypes().add(this.getFunction()); + nodeEClass.getESuperTypes().add(this.getSymbol()); + abstractAssertionEClass.getESuperTypes().add(this.getStatement()); + functorDefinitonEClass.getESuperTypes().add(this.getStatement()); + predicateDefinitionEClass.getESuperTypes().add(this.getFunctorDefiniton()); + predicateDefinitionEClass.getESuperTypes().add(this.getInlinePredicateAttrributes()); + functionDefinitionEClass.getESuperTypes().add(this.getFunctorDefiniton()); + attributeEClass.getESuperTypes().add(this.getStatement()); + externDeclarationEClass.getESuperTypes().add(this.getStatement()); + externFunctorDeclarationEClass.getESuperTypes().add(this.getExternDeclaration()); + externPredicateDeclarationEClass.getESuperTypes().add(this.getExternFunctorDeclaration()); + externPredicateDeclarationEClass.getESuperTypes().add(this.getInlinePredicateAttrributes()); + externFunctionDeclarationEClass.getESuperTypes().add(this.getExternFunctorDeclaration()); + externAggregationOperatorDeclarationEClass.getESuperTypes().add(this.getExternDeclaration()); + externDatatypeDeclarationEClass.getESuperTypes().add(this.getExternDeclaration()); + classDeclarationEClass.getESuperTypes().add(this.getStatement()); + enumDeclarationEClass.getESuperTypes().add(this.getStatement()); + defaultAssertionEClass.getESuperTypes().add(this.getAbstractAssertion()); + assertionEClass.getESuperTypes().add(this.getAbstractAssertion()); + unboundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); + exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); + boundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); + aggregationOperatorEClass.getESuperTypes().add(this.getSymbol()); + typedStarArgumentEClass.getESuperTypes().add(this.getTypedArgument()); + typedVariableArgumentEClass.getESuperTypes().add(this.getTypedArgument()); + unnamedErrorPredicateDefintionEClass.getESuperTypes().add(this.getStatement()); + objectiveDeclarationEClass.getESuperTypes().add(this.getStatement()); + scopeDeclarationEClass.getESuperTypes().add(this.getStatement()); + exactScopeEClass.getESuperTypes().add(this.getScopeDeclaration()); + boundedScopeEClass.getESuperTypes().add(this.getScopeDeclaration()); + lowerBoundedScopeEClass.getESuperTypes().add(this.getScopeDeclaration()); + namespaceImportEClass.getESuperTypes().add(this.getImport()); + uriImportEClass.getESuperTypes().add(this.getImport()); + + // Initialize classes, features, and operations; add parameters + initEClass(pathComponentEClass, PathComponent.class, "PathComponent", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getPathComponent_Symbol(), this.getSymbol(), null, "symbol", null, 0, 1, PathComponent.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getPathComponent_Inverse(), ecorePackage.getEBoolean(), "inverse", null, 0, 1, + PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getPathComponent_TransitiveClosure(), ecorePackage.getEBoolean(), "transitiveClosure", null, 0, + 1, PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getPathComponent_ReflexiveTransitiveClosure(), ecorePackage.getEBoolean(), + "reflexiveTransitiveClosure", null, 0, 1, PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE, + IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(symbolEClass, Symbol.class, "Symbol", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getSymbol_Name(), ecorePackage.getEString(), "name", null, 0, 1, Symbol.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(callEClass, Call.class, "Call", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getCall_Functor(), this.getReference(), null, "functor", null, 0, 1, Call.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + initEReference(getCall_ArgumentList(), this.getArgumentList(), null, "argumentList", null, 0, 1, Call.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(referenceEClass, Reference.class, "Reference", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getReference_Components(), this.getPathComponent(), null, "components", null, 0, -1, + Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(expressionEClass, Expression.class, "Expression", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getExpression_ExistsVariables(), this.getVariable(), null, "existsVariables", null, 0, -1, + Expression.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(argumentEClass, Argument.class, "Argument", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(argumentListEClass, ArgumentList.class, "ArgumentList", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getArgumentList_Arguments(), this.getArgument(), null, "arguments", null, 0, -1, + ArgumentList.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(expressionArgumentEClass, ExpressionArgument.class, "ExpressionArgument", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getExpressionArgument_Expression(), this.getExpression(), null, "expression", null, 0, 1, + ExpressionArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(starArgumentEClass, StarArgument.class, "StarArgument", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(typedArgumentEClass, TypedArgument.class, "TypedArgument", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getTypedArgument_TypeReference(), this.getTypeReference(), null, "typeReference", null, 0, 1, + TypedArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(multiaryExpessionEClass, MultiaryExpession.class, "MultiaryExpession", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getMultiaryExpession_Children(), this.getExpression(), null, "children", null, 0, -1, + MultiaryExpession.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(variableEClass, Variable.class, "Variable", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getVariable_TypeReference(), this.getTypeReference(), null, "typeReference", null, 0, 1, + Variable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(unaryExpressionEClass, UnaryExpression.class, "UnaryExpression", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getUnaryExpression_Body(), this.getExpression(), null, "body", null, 0, 1, UnaryExpression.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getUnaryExpression_Op(), this.getUnaryOperator(), "op", null, 0, 1, UnaryExpression.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(binaryExpressionEClass, BinaryExpression.class, "BinaryExpression", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getBinaryExpression_Op(), this.getBinaryOperator(), "op", null, 0, 1, BinaryExpression.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getBinaryExpression_Left(), this.getExpression(), null, "left", null, 0, 1, + BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getBinaryExpression_Right(), this.getExpression(), null, "right", null, 0, 1, + BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(disjunctionEClass, Disjunction.class, "Disjunction", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(conjunctionEClass, Conjunction.class, "Conjunction", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(conditionalExpressionEClass, ConditionalExpression.class, "ConditionalExpression", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getConditionalExpression_Condition(), this.getExpression(), null, "condition", null, 0, 1, + ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getConditionalExpression_Then(), this.getExpression(), null, "then", null, 0, 1, + ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getConditionalExpression_Else(), this.getExpression(), null, "else", null, 0, 1, + ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(switchEClass, Switch.class, "Switch", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getSwitch_Cases(), this.getCase(), null, "cases", null, 0, -1, Switch.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + + initEClass(caseEClass, Case.class, "Case", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getCase_Condition(), this.getExpression(), null, "condition", null, 0, 1, Case.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getCase_Body(), this.getExpression(), null, "body", null, 0, 1, Case.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + + initEClass(letExpressionEClass, LetExpression.class, "LetExpression", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getLetExpression_Bindings(), this.getLetBinding(), null, "bindings", null, 0, -1, + LetExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getLetExpression_Body(), this.getExpression(), null, "body", null, 0, 1, LetExpression.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(letBindingEClass, LetBinding.class, "LetBinding", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getLetBinding_Value(), this.getExpression(), null, "value", null, 0, 1, LetBinding.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getLetBinding_Variable(), this.getVariable(), null, "variable", null, 0, 1, LetBinding.class, + IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getLetBinding_Name(), ecorePackage.getEString(), "name", null, 0, 1, LetBinding.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getLetBinding_Type(), this.getSymbol(), null, "type", null, 0, 1, LetBinding.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(literalEClass, Literal.class, "Literal", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(intLiteralEClass, IntLiteral.class, "IntLiteral", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIntLiteral_Value(), ecorePackage.getEInt(), "value", null, 0, 1, IntLiteral.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(realLiteralEClass, RealLiteral.class, "RealLiteral", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getRealLiteral_Value(), ecorePackage.getEBigDecimal(), "value", null, 0, 1, RealLiteral.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(stringLiteralEClass, StringLiteral.class, "StringLiteral", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getStringLiteral_Value(), ecorePackage.getEString(), "value", null, 0, 1, StringLiteral.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(logicLiteralEClass, LogicLiteral.class, "LogicLiteral", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getLogicLiteral_Value(), this.getLogicValue(), "value", null, 0, 1, LogicLiteral.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(emptyLiteralEClass, EmptyLiteral.class, "EmptyLiteral", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(castExpressionEClass, CastExpression.class, "CastExpression", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getCastExpression_Body(), this.getExpression(), null, "body", null, 0, 1, CastExpression.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getCastExpression_TargetType(), this.getSymbol(), null, "targetType", null, 0, 1, + CastExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(aggregateExpressionEClass, AggregateExpression.class, "AggregateExpression", IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getAggregateExpression_ForallVariables(), this.getVariable(), null, "forallVariables", null, 0, + -1, AggregateExpression.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAggregateExpression_Condition(), this.getExpression(), null, "condition", null, 0, 1, + AggregateExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(countEClass, Count.class, "Count", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(aggregationEClass, Aggregation.class, "Aggregation", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getAggregation_Value(), this.getExpression(), null, "value", null, 0, 1, Aggregation.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAggregation_Op(), this.getSymbol(), null, "op", null, 0, 1, Aggregation.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + + initEClass(forallEClass, Forall.class, "Forall", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getForall_Body(), this.getExpression(), null, "body", null, 0, 1, Forall.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + + initEClass(typeReferenceEClass, TypeReference.class, "TypeReference", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getTypeReference_ForceObjectType(), ecorePackage.getEBoolean(), "forceObjectType", null, 0, 1, + TypeReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getTypeReference_Type(), this.getSymbol(), null, "type", null, 0, 1, TypeReference.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(infinityLiteralEClass, InfinityLiteral.class, "InfinityLiteral", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(intervalEClass, Interval.class, "Interval", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getInterval_LowerBound(), this.getExpression(), null, "lowerBound", null, 0, 1, Interval.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getInterval_UpperBound(), this.getExpression(), null, "upperBound", null, 0, 1, Interval.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(functorEClass, Functor.class, "Functor", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getFunctor_Parameters(), this.getVariable(), null, "parameters", null, 0, -1, Functor.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(relationEClass, Relation.class, "Relation", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(baseRelationEClass, BaseRelation.class, "BaseRelation", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(predicateEClass, Predicate.class, "Predicate", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(datatypeEClass, Datatype.class, "Datatype", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(functionEClass, Function.class, "Function", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getFunction_ResultType(), this.getDatatype(), null, "resultType", null, 0, 1, Function.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(metricEClass, Metric.class, "Metric", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(operatorEClass, Operator.class, "Operator", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(nodeEClass, Node.class, "Node", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getNode_Named(), ecorePackage.getEBoolean(), "named", null, 0, 1, Node.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(statementEClass, Statement.class, "Statement", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(abstractAssertionEClass, AbstractAssertion.class, "AbstractAssertion", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getAbstractAssertion_Expression(), this.getExpression(), null, "expression", null, 0, 1, + AbstractAssertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAbstractAssertion_Range(), this.getExpression(), null, "range", null, 0, 1, + AbstractAssertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(functorDefinitonEClass, FunctorDefiniton.class, "FunctorDefiniton", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getFunctorDefiniton_Head(), this.getExpression(), null, "head", null, 0, 1, + FunctorDefiniton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getFunctorDefiniton_Body(), this.getExpression(), null, "body", null, 0, 1, + FunctorDefiniton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(predicateDefinitionEClass, PredicateDefinition.class, "PredicateDefinition", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(functionDefinitionEClass, FunctionDefinition.class, "FunctionDefinition", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getFunctionDefinition_ResultType(), this.getSymbol(), null, "resultType", null, 0, 1, + FunctionDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(attributeEClass, Attribute.class, "Attribute", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getAttribute_Target(), this.getSymbol(), null, "target", null, 0, 1, Attribute.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAttribute_Kind(), this.getAttributeKind(), "kind", null, 0, 1, Attribute.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(externDeclarationEClass, ExternDeclaration.class, "ExternDeclaration", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExternDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1, + ExternDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(externFunctorDeclarationEClass, ExternFunctorDeclaration.class, "ExternFunctorDeclaration", + IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getExternFunctorDeclaration_ArgumentList(), this.getArgumentList(), null, "argumentList", null, + 0, 1, ExternFunctorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(externPredicateDeclarationEClass, ExternPredicateDeclaration.class, "ExternPredicateDeclaration", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(externFunctionDeclarationEClass, ExternFunctionDeclaration.class, "ExternFunctionDeclaration", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getExternFunctionDeclaration_ResultType(), this.getSymbol(), null, "resultType", null, 0, 1, + ExternFunctionDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(externAggregationOperatorDeclarationEClass, ExternAggregationOperatorDeclaration.class, + "ExternAggregationOperatorDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getExternAggregationOperatorDeclaration_ArgumentType(), this.getSymbol(), null, "argumentType", + null, 0, 1, ExternAggregationOperatorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getExternAggregationOperatorDeclaration_ResultType(), this.getSymbol(), null, "resultType", null, + 0, 1, ExternAggregationOperatorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(externDatatypeDeclarationEClass, ExternDatatypeDeclaration.class, "ExternDatatypeDeclaration", + !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(classDeclarationEClass, ClassDeclaration.class, "ClassDeclaration", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getClassDeclaration_Fields(), this.getField(), null, "fields", null, 0, -1, + ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getClassDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1, + ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getClassDeclaration_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1, + ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getClassDeclaration_Supertypes(), this.getSymbol(), null, "supertypes", null, 0, -1, + ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getClassDeclaration_Root(), ecorePackage.getEBoolean(), "root", null, 0, 1, + ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(enumDeclarationEClass, EnumDeclaration.class, "EnumDeclaration", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getEnumDeclaration_Literals(), this.getEnumLiteral(), null, "literals", null, 0, -1, + EnumDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, + !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getEnumDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1, EnumDeclaration.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(enumLiteralEClass, EnumLiteral.class, "EnumLiteral", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getEnumLiteral_Name(), ecorePackage.getEString(), "name", null, 0, 1, EnumLiteral.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(fieldEClass, Field.class, "Field", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getField_Containment(), ecorePackage.getEBoolean(), "containment", null, 0, 1, Field.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getField_CrossReference(), ecorePackage.getEBoolean(), "crossReference", null, 0, 1, Field.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getField_Opposite(), this.getSymbol(), null, "opposite", null, 0, 1, Field.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + initEReference(getField_Multiplicity(), this.getMultiplicity(), null, "multiplicity", null, 0, 1, Field.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getField_Type(), this.getSymbol(), null, "type", null, 0, 1, Field.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, + IS_ORDERED); + initEAttribute(getField_Name(), ecorePackage.getEString(), "name", null, 0, 1, Field.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(multiplicityEClass, Multiplicity.class, "Multiplicity", IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(defaultAssertionEClass, DefaultAssertion.class, "DefaultAssertion", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(assertionEClass, Assertion.class, "Assertion", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(unboundedMultiplicityEClass, UnboundedMultiplicity.class, "UnboundedMultiplicity", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(exactMultiplicityEClass, ExactMultiplicity.class, "ExactMultiplicity", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExactMultiplicity_Value(), ecorePackage.getEInt(), "value", null, 0, 1, + ExactMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(boundedMultiplicityEClass, BoundedMultiplicity.class, "BoundedMultiplicity", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getBoundedMultiplicity_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1, + BoundedMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getBoundedMultiplicity_UpperBound(), ecorePackage.getEInt(), "upperBound", null, 0, 1, + BoundedMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(inlinePredicateAttrributesEClass, InlinePredicateAttrributes.class, "InlinePredicateAttrributes", + IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getInlinePredicateAttrributes_Error(), ecorePackage.getEBoolean(), "error", null, 0, 1, + InlinePredicateAttrributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getInlinePredicateAttrributes_Functional(), ecorePackage.getEBoolean(), "functional", null, 0, 1, + InlinePredicateAttrributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(aggregationOperatorEClass, AggregationOperator.class, "AggregationOperator", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getAggregationOperator_ArgumentType(), this.getDatatype(), null, "argumentType", null, 0, 1, + AggregationOperator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getAggregationOperator_ResultType(), this.getDatatype(), null, "resultType", null, 0, 1, + AggregationOperator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, + IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getProblem_Name(), ecorePackage.getEString(), "name", null, 0, 1, Problem.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getProblem_Statements(), this.getStatement(), null, "statements", null, 0, -1, Problem.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getProblem_Symbols(), this.getSymbol(), null, "symbols", null, 0, -1, Problem.class, + IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEReference(getProblem_Imports(), this.getImport(), null, "imports", null, 0, -1, Problem.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(typedStarArgumentEClass, TypedStarArgument.class, "TypedStarArgument", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + + initEClass(typedVariableArgumentEClass, TypedVariableArgument.class, "TypedVariableArgument", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getTypedVariableArgument_Name(), ecorePackage.getEString(), "name", null, 0, 1, + TypedVariableArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(unnamedErrorPredicateDefintionEClass, UnnamedErrorPredicateDefintion.class, + "UnnamedErrorPredicateDefintion", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getUnnamedErrorPredicateDefintion_ArgumentList(), this.getArgumentList(), null, "argumentList", + null, 0, 1, UnnamedErrorPredicateDefintion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, + IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getUnnamedErrorPredicateDefintion_Body(), this.getExpression(), null, "body", null, 0, 1, + UnnamedErrorPredicateDefintion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(objectiveDeclarationEClass, ObjectiveDeclaration.class, "ObjectiveDeclaration", !IS_ABSTRACT, + !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getObjectiveDeclaration_Kind(), this.getObjectiveKind(), "kind", null, 0, 1, + ObjectiveDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getObjectiveDeclaration_Objective(), this.getExpression(), null, "objective", null, 0, 1, + ObjectiveDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, + !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(scopeDeclarationEClass, ScopeDeclaration.class, "ScopeDeclaration", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEReference(getScopeDeclaration_Type(), this.getSymbol(), null, "type", null, 0, 1, ScopeDeclaration.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, + IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(exactScopeEClass, ExactScope.class, "ExactScope", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExactScope_Size(), ecorePackage.getEInt(), "size", null, 0, 1, ExactScope.class, + !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(boundedScopeEClass, BoundedScope.class, "BoundedScope", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getBoundedScope_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1, + BoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + initEAttribute(getBoundedScope_UpperBound(), ecorePackage.getEInt(), "upperBound", null, 0, 1, + BoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(lowerBoundedScopeEClass, LowerBoundedScope.class, "LowerBoundedScope", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getLowerBoundedScope_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1, + LowerBoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(namespaceImportEClass, NamespaceImport.class, "NamespaceImport", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getNamespaceImport_ImportedNamespace(), ecorePackage.getEString(), "importedNamespace", null, 0, + 1, NamespaceImport.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, + !IS_DERIVED, IS_ORDERED); + + initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getImport_Alias(), ecorePackage.getEString(), "alias", null, 0, 1, Import.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(uriImportEClass, UriImport.class, "UriImport", !IS_ABSTRACT, !IS_INTERFACE, + IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getUriImport_Uri(), ecorePackage.getEString(), "uri", null, 0, 1, UriImport.class, !IS_TRANSIENT, + !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + // Initialize enums and add enum literals + initEEnum(unaryOperatorEEnum, UnaryOperator.class, "UnaryOperator"); + addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.NOT); + addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.PLUS); + addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.MINUS); + addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.MAYBE); + + initEEnum(binaryOperatorEEnum, BinaryOperator.class, "BinaryOperator"); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.PLUS); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.MINUS); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.MULTIPLY); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.DIVIDE); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.POW); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.IN); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.EQUALS); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.NOT_EQUALS); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.LESS); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.LESS_EQUALS); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.GREATER); + addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.GREATER_EQUALS); + + initEEnum(logicValueEEnum, LogicValue.class, "LogicValue"); + addEEnumLiteral(logicValueEEnum, LogicValue.UNKNOWN); + addEEnumLiteral(logicValueEEnum, LogicValue.FALSE); + addEEnumLiteral(logicValueEEnum, LogicValue.TRUE); + addEEnumLiteral(logicValueEEnum, LogicValue.ERROR); + + initEEnum(objectiveKindEEnum, ObjectiveKind.class, "ObjectiveKind"); + addEEnumLiteral(objectiveKindEEnum, ObjectiveKind.MINIMIZATION); + addEEnumLiteral(objectiveKindEEnum, ObjectiveKind.MAXIMIZATION); + + initEEnum(attributeKindEEnum, AttributeKind.class, "AttributeKind"); + addEEnumLiteral(attributeKindEEnum, AttributeKind.FUNCTIONAL); + addEEnumLiteral(attributeKindEEnum, AttributeKind.ERROR); + addEEnumLiteral(attributeKindEEnum, AttributeKind.ROOT); + addEEnumLiteral(attributeKindEEnum, AttributeKind.CONTAINMENT); + + // Create resource + createResource(eNS_URI); + } + +} //SolverLanguagePackageImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java new file mode 100644 index 00000000..63dd9e11 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.StarArgument; + +/** + * + * An implementation of the model object 'Star Argument'. + * + * + * @generated + */ +public class StarArgumentImpl extends ArgumentImpl implements StarArgument { + /** + * + * + * @generated + */ + protected StarArgumentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.STAR_ARGUMENT; + } + +} //StarArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java new file mode 100644 index 00000000..36404986 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java @@ -0,0 +1,39 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Statement; + +/** + * + * An implementation of the model object 'Statement'. + * + * + * @generated + */ +public abstract class StatementImpl extends MinimalEObjectImpl.Container implements Statement { + /** + * + * + * @generated + */ + protected StatementImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.STATEMENT; + } + +} //StatementImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java new file mode 100644 index 00000000..8b321f80 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.StringLiteral; + +/** + * + * An implementation of the model object 'String Literal'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl#getValue Value}
  • + *
+ * + * @generated + */ +public class StringLiteralImpl extends LiteralImpl implements StringLiteral { + /** + * The default value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected static final String VALUE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getValue() Value}' attribute. + * + * + * @see #getValue() + * @generated + * @ordered + */ + protected String value = VALUE_EDEFAULT; + + /** + * + * + * @generated + */ + protected StringLiteralImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.STRING_LITERAL; + } + + /** + * + * + * @generated + */ + public String getValue() { + return value; + } + + /** + * + * + * @generated + */ + public void setValue(String newValue) { + String oldValue = value; + value = newValue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.STRING_LITERAL__VALUE, oldValue, + value)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.STRING_LITERAL__VALUE: + return getValue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.STRING_LITERAL__VALUE: + setValue((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.STRING_LITERAL__VALUE: + setValue(VALUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.STRING_LITERAL__VALUE: + return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (value: "); + result.append(value); + result.append(')'); + return result.toString(); + } + +} //StringLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java new file mode 100644 index 00000000..df89831b --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java @@ -0,0 +1,150 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +import org.eclipse.viatra.solver.language.solverLanguage.Case; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Switch; + +/** + * + * An implementation of the model object 'Switch'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl#getCases Cases}
  • + *
+ * + * @generated + */ +public class SwitchImpl extends ExpressionImpl implements Switch { + /** + * The cached value of the '{@link #getCases() Cases}' containment reference list. + * + * + * @see #getCases() + * @generated + * @ordered + */ + protected EList cases; + + /** + * + * + * @generated + */ + protected SwitchImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.SWITCH; + } + + /** + * + * + * @generated + */ + public EList getCases() { + if (cases == null) { + cases = new EObjectContainmentEList(Case.class, this, SolverLanguagePackage.SWITCH__CASES); + } + return cases; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.SWITCH__CASES: + return ((InternalEList) getCases()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.SWITCH__CASES: + return getCases(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.SWITCH__CASES: + getCases().clear(); + getCases().addAll((Collection) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.SWITCH__CASES: + getCases().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.SWITCH__CASES: + return cases != null && !cases.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //SwitchImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java new file mode 100644 index 00000000..a9f76acb --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SymbolImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; + +/** + * + * An implementation of the model object 'Symbol'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.SymbolImpl#getName Name}
  • + *
+ * + * @generated + */ +public abstract class SymbolImpl extends MinimalEObjectImpl.Container implements Symbol { + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * + * + * @generated + */ + protected SymbolImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.SYMBOL; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.SYMBOL__NAME, oldName, name)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.SYMBOL__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.SYMBOL__NAME: + setName((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.SYMBOL__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.SYMBOL__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //SymbolImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypeReferenceImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypeReferenceImpl.java new file mode 100644 index 00000000..a3c76e63 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypeReferenceImpl.java @@ -0,0 +1,230 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.Symbol; +import org.eclipse.viatra.solver.language.solverLanguage.TypeReference; + +/** + * + * An implementation of the model object 'Type Reference'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl#isForceObjectType Force Object Type}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypeReferenceImpl#getType Type}
  • + *
+ * + * @generated + */ +public class TypeReferenceImpl extends MinimalEObjectImpl.Container implements TypeReference { + /** + * The default value of the '{@link #isForceObjectType() Force Object Type}' attribute. + * + * + * @see #isForceObjectType() + * @generated + * @ordered + */ + protected static final boolean FORCE_OBJECT_TYPE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isForceObjectType() Force Object Type}' attribute. + * + * + * @see #isForceObjectType() + * @generated + * @ordered + */ + protected boolean forceObjectType = FORCE_OBJECT_TYPE_EDEFAULT; + + /** + * The cached value of the '{@link #getType() Type}' reference. + * + * + * @see #getType() + * @generated + * @ordered + */ + protected Symbol type; + + /** + * + * + * @generated + */ + protected TypeReferenceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.TYPE_REFERENCE; + } + + /** + * + * + * @generated + */ + public boolean isForceObjectType() { + return forceObjectType; + } + + /** + * + * + * @generated + */ + public void setForceObjectType(boolean newForceObjectType) { + boolean oldForceObjectType = forceObjectType; + forceObjectType = newForceObjectType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE, oldForceObjectType, forceObjectType)); + } + + /** + * + * + * @generated + */ + public Symbol getType() { + if (type != null && type.eIsProxy()) { + InternalEObject oldType = (InternalEObject) type; + type = (Symbol) eResolveProxy(oldType); + if (type != oldType) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, + SolverLanguagePackage.TYPE_REFERENCE__TYPE, oldType, type)); + } + } + return type; + } + + /** + * + * + * @generated + */ + public Symbol basicGetType() { + return type; + } + + /** + * + * + * @generated + */ + public void setType(Symbol newType) { + Symbol oldType = type; + type = newType; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPE_REFERENCE__TYPE, oldType, + type)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE: + return isForceObjectType(); + case SolverLanguagePackage.TYPE_REFERENCE__TYPE: + if (resolve) + return getType(); + return basicGetType(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE: + setForceObjectType((Boolean) newValue); + return; + case SolverLanguagePackage.TYPE_REFERENCE__TYPE: + setType((Symbol) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE: + setForceObjectType(FORCE_OBJECT_TYPE_EDEFAULT); + return; + case SolverLanguagePackage.TYPE_REFERENCE__TYPE: + setType((Symbol) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.TYPE_REFERENCE__FORCE_OBJECT_TYPE: + return forceObjectType != FORCE_OBJECT_TYPE_EDEFAULT; + case SolverLanguagePackage.TYPE_REFERENCE__TYPE: + return type != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (forceObjectType: "); + result.append(forceObjectType); + result.append(')'); + return result.toString(); + } + +} //TypeReferenceImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java new file mode 100644 index 00000000..89778fc9 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java @@ -0,0 +1,182 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.TypeReference; +import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument; + +/** + * + * An implementation of the model object 'Typed Argument'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl#getTypeReference Type Reference}
  • + *
+ * + * @generated + */ +public abstract class TypedArgumentImpl extends ArgumentImpl implements TypedArgument { + /** + * The cached value of the '{@link #getTypeReference() Type Reference}' containment reference. + * + * + * @see #getTypeReference() + * @generated + * @ordered + */ + protected TypeReference typeReference; + + /** + * + * + * @generated + */ + protected TypedArgumentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.TYPED_ARGUMENT; + } + + /** + * + * + * @generated + */ + public TypeReference getTypeReference() { + return typeReference; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTypeReference(TypeReference newTypeReference, NotificationChain msgs) { + TypeReference oldTypeReference = typeReference; + typeReference = newTypeReference; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE, oldTypeReference, newTypeReference); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setTypeReference(TypeReference newTypeReference) { + if (newTypeReference != typeReference) { + NotificationChain msgs = null; + if (typeReference != null) + msgs = ((InternalEObject) typeReference).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE, null, msgs); + if (newTypeReference != null) + msgs = ((InternalEObject) newTypeReference).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE, null, msgs); + msgs = basicSetTypeReference(newTypeReference, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE, + newTypeReference, newTypeReference)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE: + return basicSetTypeReference(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE: + return getTypeReference(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE: + setTypeReference((TypeReference) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE: + setTypeReference((TypeReference) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.TYPED_ARGUMENT__TYPE_REFERENCE: + return typeReference != null; + } + return super.eIsSet(featureID); + } + +} //TypedArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java new file mode 100644 index 00000000..ebee59b6 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument; + +/** + * + * An implementation of the model object 'Typed Star Argument'. + * + * + * @generated + */ +public class TypedStarArgumentImpl extends TypedArgumentImpl implements TypedStarArgument { + /** + * + * + * @generated + */ + protected TypedStarArgumentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.TYPED_STAR_ARGUMENT; + } + +} //TypedStarArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedVariableArgumentImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedVariableArgumentImpl.java new file mode 100644 index 00000000..6c83d121 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedVariableArgumentImpl.java @@ -0,0 +1,164 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument; + +/** + * + * An implementation of the model object 'Typed Variable Argument'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedVariableArgumentImpl#getName Name}
  • + *
+ * + * @generated + */ +public class TypedVariableArgumentImpl extends TypedArgumentImpl implements TypedVariableArgument { + /** + * The default value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected static final String NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getName() Name}' attribute. + * + * + * @see #getName() + * @generated + * @ordered + */ + protected String name = NAME_EDEFAULT; + + /** + * + * + * @generated + */ + protected TypedVariableArgumentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.TYPED_VARIABLE_ARGUMENT; + } + + /** + * + * + * @generated + */ + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + public void setName(String newName) { + String oldName = name; + name = newName; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME, + oldName, name)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME: + return getName(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME: + setName((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME: + setName(NAME_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT__NAME: + return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (name: "); + result.append(name); + result.append(')'); + return result.toString(); + } + +} //TypedVariableArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java new file mode 100644 index 00000000..11291304 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java @@ -0,0 +1,253 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression; +import org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator; + +/** + * + * An implementation of the model object 'Unary Expression'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl#getBody Body}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl#getOp Op}
  • + *
+ * + * @generated + */ +public class UnaryExpressionImpl extends ExpressionImpl implements UnaryExpression { + /** + * The cached value of the '{@link #getBody() Body}' containment reference. + * + * + * @see #getBody() + * @generated + * @ordered + */ + protected Expression body; + + /** + * The default value of the '{@link #getOp() Op}' attribute. + * + * + * @see #getOp() + * @generated + * @ordered + */ + protected static final UnaryOperator OP_EDEFAULT = UnaryOperator.NOT; + + /** + * The cached value of the '{@link #getOp() Op}' attribute. + * + * + * @see #getOp() + * @generated + * @ordered + */ + protected UnaryOperator op = OP_EDEFAULT; + + /** + * + * + * @generated + */ + protected UnaryExpressionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.UNARY_EXPRESSION; + } + + /** + * + * + * @generated + */ + public Expression getBody() { + return body; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { + Expression oldBody = body; + body = newBody; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.UNARY_EXPRESSION__BODY, oldBody, newBody); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setBody(Expression newBody) { + if (newBody != body) { + NotificationChain msgs = null; + if (body != null) + msgs = ((InternalEObject) body).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNARY_EXPRESSION__BODY, null, msgs); + if (newBody != null) + msgs = ((InternalEObject) newBody).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNARY_EXPRESSION__BODY, null, msgs); + msgs = basicSetBody(newBody, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNARY_EXPRESSION__BODY, newBody, + newBody)); + } + + /** + * + * + * @generated + */ + public UnaryOperator getOp() { + return op; + } + + /** + * + * + * @generated + */ + public void setOp(UnaryOperator newOp) { + UnaryOperator oldOp = op; + op = newOp == null ? OP_EDEFAULT : newOp; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNARY_EXPRESSION__OP, oldOp, + op)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.UNARY_EXPRESSION__BODY: + return basicSetBody(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.UNARY_EXPRESSION__BODY: + return getBody(); + case SolverLanguagePackage.UNARY_EXPRESSION__OP: + return getOp(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.UNARY_EXPRESSION__BODY: + setBody((Expression) newValue); + return; + case SolverLanguagePackage.UNARY_EXPRESSION__OP: + setOp((UnaryOperator) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.UNARY_EXPRESSION__BODY: + setBody((Expression) null); + return; + case SolverLanguagePackage.UNARY_EXPRESSION__OP: + setOp(OP_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.UNARY_EXPRESSION__BODY: + return body != null; + case SolverLanguagePackage.UNARY_EXPRESSION__OP: + return op != OP_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (op: "); + result.append(op); + result.append(')'); + return result.toString(); + } + +} //UnaryExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnboundedMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnboundedMultiplicityImpl.java new file mode 100644 index 00000000..d63928d6 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnboundedMultiplicityImpl.java @@ -0,0 +1,37 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity; + +/** + * + * An implementation of the model object 'Unbounded Multiplicity'. + * + * + * @generated + */ +public class UnboundedMultiplicityImpl extends MultiplicityImpl implements UnboundedMultiplicity { + /** + * + * + * @generated + */ + protected UnboundedMultiplicityImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.UNBOUNDED_MULTIPLICITY; + } + +} //UnboundedMultiplicityImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPredicateDefintionImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPredicateDefintionImpl.java new file mode 100644 index 00000000..87f259a0 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPredicateDefintionImpl.java @@ -0,0 +1,262 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; +import org.eclipse.viatra.solver.language.solverLanguage.Expression; +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion; + +/** + * + * An implementation of the model object 'Unnamed Error Predicate Defintion'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl#getArgumentList Argument List}
  • + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPredicateDefintionImpl#getBody Body}
  • + *
+ * + * @generated + */ +public class UnnamedErrorPredicateDefintionImpl extends StatementImpl implements UnnamedErrorPredicateDefintion { + /** + * The cached value of the '{@link #getArgumentList() Argument List}' containment reference. + * + * + * @see #getArgumentList() + * @generated + * @ordered + */ + protected ArgumentList argumentList; + + /** + * The cached value of the '{@link #getBody() Body}' containment reference. + * + * + * @see #getBody() + * @generated + * @ordered + */ + protected Expression body; + + /** + * + * + * @generated + */ + protected UnnamedErrorPredicateDefintionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDICATE_DEFINTION; + } + + /** + * + * + * @generated + */ + public ArgumentList getArgumentList() { + return argumentList; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) { + ArgumentList oldArgumentList = argumentList; + argumentList = newArgumentList; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST, oldArgumentList, + newArgumentList); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setArgumentList(ArgumentList newArgumentList) { + if (newArgumentList != argumentList) { + NotificationChain msgs = null; + if (argumentList != null) + msgs = ((InternalEObject) argumentList).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST, + null, msgs); + if (newArgumentList != null) + msgs = ((InternalEObject) newArgumentList).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST, + null, msgs); + msgs = basicSetArgumentList(newArgumentList, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST, newArgumentList, + newArgumentList)); + } + + /** + * + * + * @generated + */ + public Expression getBody() { + return body; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { + Expression oldBody = body; + body = newBody; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY, oldBody, newBody); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setBody(Expression newBody) { + if (newBody != body) { + NotificationChain msgs = null; + if (body != null) + msgs = ((InternalEObject) body).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY, null, + msgs); + if (newBody != null) + msgs = ((InternalEObject) newBody).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY, null, + msgs); + msgs = basicSetBody(newBody, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY, newBody, newBody)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST: + return basicSetArgumentList(null, msgs); + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY: + return basicSetBody(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST: + return getArgumentList(); + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY: + return getBody(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST: + setArgumentList((ArgumentList) newValue); + return; + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY: + setBody((Expression) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST: + setArgumentList((ArgumentList) null); + return; + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY: + setBody((Expression) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST: + return argumentList != null; + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY: + return body != null; + } + return super.eIsSet(featureID); + } + +} //UnnamedErrorPredicateDefintionImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UriImportImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UriImportImpl.java new file mode 100644 index 00000000..494f80d9 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UriImportImpl.java @@ -0,0 +1,163 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.UriImport; + +/** + * + * An implementation of the model object 'Uri Import'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UriImportImpl#getUri Uri}
  • + *
+ * + * @generated + */ +public class UriImportImpl extends ImportImpl implements UriImport { + /** + * The default value of the '{@link #getUri() Uri}' attribute. + * + * + * @see #getUri() + * @generated + * @ordered + */ + protected static final String URI_EDEFAULT = null; + + /** + * The cached value of the '{@link #getUri() Uri}' attribute. + * + * + * @see #getUri() + * @generated + * @ordered + */ + protected String uri = URI_EDEFAULT; + + /** + * + * + * @generated + */ + protected UriImportImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.URI_IMPORT; + } + + /** + * + * + * @generated + */ + public String getUri() { + return uri; + } + + /** + * + * + * @generated + */ + public void setUri(String newUri) { + String oldUri = uri; + uri = newUri; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.URI_IMPORT__URI, oldUri, uri)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.URI_IMPORT__URI: + return getUri(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.URI_IMPORT__URI: + setUri((String) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.URI_IMPORT__URI: + setUri(URI_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.URI_IMPORT__URI: + return URI_EDEFAULT == null ? uri != null : !URI_EDEFAULT.equals(uri); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) + return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (uri: "); + result.append(uri); + result.append(')'); + return result.toString(); + } + +} //UriImportImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java new file mode 100644 index 00000000..7b92840a --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java @@ -0,0 +1,182 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.impl; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; +import org.eclipse.viatra.solver.language.solverLanguage.TypeReference; +import org.eclipse.viatra.solver.language.solverLanguage.Variable; + +/** + * + * An implementation of the model object 'Variable'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl#getTypeReference Type Reference}
  • + *
+ * + * @generated + */ +public class VariableImpl extends SymbolImpl implements Variable { + /** + * The cached value of the '{@link #getTypeReference() Type Reference}' containment reference. + * + * + * @see #getTypeReference() + * @generated + * @ordered + */ + protected TypeReference typeReference; + + /** + * + * + * @generated + */ + protected VariableImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return SolverLanguagePackage.Literals.VARIABLE; + } + + /** + * + * + * @generated + */ + public TypeReference getTypeReference() { + return typeReference; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTypeReference(TypeReference newTypeReference, NotificationChain msgs) { + TypeReference oldTypeReference = typeReference; + typeReference = newTypeReference; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, + SolverLanguagePackage.VARIABLE__TYPE_REFERENCE, oldTypeReference, newTypeReference); + if (msgs == null) + msgs = notification; + else + msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + public void setTypeReference(TypeReference newTypeReference) { + if (newTypeReference != typeReference) { + NotificationChain msgs = null; + if (typeReference != null) + msgs = ((InternalEObject) typeReference).eInverseRemove(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.VARIABLE__TYPE_REFERENCE, null, msgs); + if (newTypeReference != null) + msgs = ((InternalEObject) newTypeReference).eInverseAdd(this, + EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.VARIABLE__TYPE_REFERENCE, null, msgs); + msgs = basicSetTypeReference(newTypeReference, msgs); + if (msgs != null) + msgs.dispatch(); + } else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.VARIABLE__TYPE_REFERENCE, + newTypeReference, newTypeReference)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE: + return basicSetTypeReference(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE: + return getTypeReference(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE: + setTypeReference((TypeReference) newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE: + setTypeReference((TypeReference) null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case SolverLanguagePackage.VARIABLE__TYPE_REFERENCE: + return typeReference != null; + } + return super.eIsSet(featureID); + } + +} //VariableImpl diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java new file mode 100644 index 00000000..f182e6d2 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java @@ -0,0 +1,1620 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.util; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +import org.eclipse.viatra.solver.language.solverLanguage.*; + +/** + * + * The Adapter Factory for the model. + * It provides an adapter createXXX method for each class of the model. + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage + * @generated + */ +public class SolverLanguageAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * + * + * @generated + */ + protected static SolverLanguagePackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * + * + * @generated + */ + public SolverLanguageAdapterFactory() { + if (modelPackage == null) { + modelPackage = SolverLanguagePackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * + * This implementation returns true if the object is either the model's package or is an instance object of the model. + * + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject) object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the createXXX methods. + * + * + * @generated + */ + protected SolverLanguageSwitch modelSwitch = new SolverLanguageSwitch() { + @Override + public Adapter casePathComponent(PathComponent object) { + return createPathComponentAdapter(); + } + + @Override + public Adapter caseSymbol(Symbol object) { + return createSymbolAdapter(); + } + + @Override + public Adapter caseCall(Call object) { + return createCallAdapter(); + } + + @Override + public Adapter caseReference(Reference object) { + return createReferenceAdapter(); + } + + @Override + public Adapter caseExpression(Expression object) { + return createExpressionAdapter(); + } + + @Override + public Adapter caseArgument(Argument object) { + return createArgumentAdapter(); + } + + @Override + public Adapter caseArgumentList(ArgumentList object) { + return createArgumentListAdapter(); + } + + @Override + public Adapter caseExpressionArgument(ExpressionArgument object) { + return createExpressionArgumentAdapter(); + } + + @Override + public Adapter caseStarArgument(StarArgument object) { + return createStarArgumentAdapter(); + } + + @Override + public Adapter caseTypedArgument(TypedArgument object) { + return createTypedArgumentAdapter(); + } + + @Override + public Adapter caseMultiaryExpession(MultiaryExpession object) { + return createMultiaryExpessionAdapter(); + } + + @Override + public Adapter caseVariable(Variable object) { + return createVariableAdapter(); + } + + @Override + public Adapter caseUnaryExpression(UnaryExpression object) { + return createUnaryExpressionAdapter(); + } + + @Override + public Adapter caseBinaryExpression(BinaryExpression object) { + return createBinaryExpressionAdapter(); + } + + @Override + public Adapter caseDisjunction(Disjunction object) { + return createDisjunctionAdapter(); + } + + @Override + public Adapter caseConjunction(Conjunction object) { + return createConjunctionAdapter(); + } + + @Override + public Adapter caseConditionalExpression(ConditionalExpression object) { + return createConditionalExpressionAdapter(); + } + + @Override + public Adapter caseSwitch(Switch object) { + return createSwitchAdapter(); + } + + @Override + public Adapter caseCase(Case object) { + return createCaseAdapter(); + } + + @Override + public Adapter caseLetExpression(LetExpression object) { + return createLetExpressionAdapter(); + } + + @Override + public Adapter caseLetBinding(LetBinding object) { + return createLetBindingAdapter(); + } + + @Override + public Adapter caseLiteral(Literal object) { + return createLiteralAdapter(); + } + + @Override + public Adapter caseIntLiteral(IntLiteral object) { + return createIntLiteralAdapter(); + } + + @Override + public Adapter caseRealLiteral(RealLiteral object) { + return createRealLiteralAdapter(); + } + + @Override + public Adapter caseStringLiteral(StringLiteral object) { + return createStringLiteralAdapter(); + } + + @Override + public Adapter caseLogicLiteral(LogicLiteral object) { + return createLogicLiteralAdapter(); + } + + @Override + public Adapter caseEmptyLiteral(EmptyLiteral object) { + return createEmptyLiteralAdapter(); + } + + @Override + public Adapter caseCastExpression(CastExpression object) { + return createCastExpressionAdapter(); + } + + @Override + public Adapter caseAggregateExpression(AggregateExpression object) { + return createAggregateExpressionAdapter(); + } + + @Override + public Adapter caseCount(Count object) { + return createCountAdapter(); + } + + @Override + public Adapter caseAggregation(Aggregation object) { + return createAggregationAdapter(); + } + + @Override + public Adapter caseForall(Forall object) { + return createForallAdapter(); + } + + @Override + public Adapter caseTypeReference(TypeReference object) { + return createTypeReferenceAdapter(); + } + + @Override + public Adapter caseInfinityLiteral(InfinityLiteral object) { + return createInfinityLiteralAdapter(); + } + + @Override + public Adapter caseInterval(Interval object) { + return createIntervalAdapter(); + } + + @Override + public Adapter caseFunctor(Functor object) { + return createFunctorAdapter(); + } + + @Override + public Adapter caseRelation(Relation object) { + return createRelationAdapter(); + } + + @Override + public Adapter caseBaseRelation(BaseRelation object) { + return createBaseRelationAdapter(); + } + + @Override + public Adapter casePredicate(Predicate object) { + return createPredicateAdapter(); + } + + @Override + public Adapter caseDatatype(Datatype object) { + return createDatatypeAdapter(); + } + + @Override + public Adapter caseFunction(Function object) { + return createFunctionAdapter(); + } + + @Override + public Adapter caseMetric(Metric object) { + return createMetricAdapter(); + } + + @Override + public Adapter caseOperator(Operator object) { + return createOperatorAdapter(); + } + + @Override + public Adapter caseNode(Node object) { + return createNodeAdapter(); + } + + @Override + public Adapter caseStatement(Statement object) { + return createStatementAdapter(); + } + + @Override + public Adapter caseAbstractAssertion(AbstractAssertion object) { + return createAbstractAssertionAdapter(); + } + + @Override + public Adapter caseFunctorDefiniton(FunctorDefiniton object) { + return createFunctorDefinitonAdapter(); + } + + @Override + public Adapter casePredicateDefinition(PredicateDefinition object) { + return createPredicateDefinitionAdapter(); + } + + @Override + public Adapter caseFunctionDefinition(FunctionDefinition object) { + return createFunctionDefinitionAdapter(); + } + + @Override + public Adapter caseAttribute(Attribute object) { + return createAttributeAdapter(); + } + + @Override + public Adapter caseExternDeclaration(ExternDeclaration object) { + return createExternDeclarationAdapter(); + } + + @Override + public Adapter caseExternFunctorDeclaration(ExternFunctorDeclaration object) { + return createExternFunctorDeclarationAdapter(); + } + + @Override + public Adapter caseExternPredicateDeclaration(ExternPredicateDeclaration object) { + return createExternPredicateDeclarationAdapter(); + } + + @Override + public Adapter caseExternFunctionDeclaration(ExternFunctionDeclaration object) { + return createExternFunctionDeclarationAdapter(); + } + + @Override + public Adapter caseExternAggregationOperatorDeclaration(ExternAggregationOperatorDeclaration object) { + return createExternAggregationOperatorDeclarationAdapter(); + } + + @Override + public Adapter caseExternDatatypeDeclaration(ExternDatatypeDeclaration object) { + return createExternDatatypeDeclarationAdapter(); + } + + @Override + public Adapter caseClassDeclaration(ClassDeclaration object) { + return createClassDeclarationAdapter(); + } + + @Override + public Adapter caseEnumDeclaration(EnumDeclaration object) { + return createEnumDeclarationAdapter(); + } + + @Override + public Adapter caseEnumLiteral(EnumLiteral object) { + return createEnumLiteralAdapter(); + } + + @Override + public Adapter caseField(Field object) { + return createFieldAdapter(); + } + + @Override + public Adapter caseMultiplicity(Multiplicity object) { + return createMultiplicityAdapter(); + } + + @Override + public Adapter caseDefaultAssertion(DefaultAssertion object) { + return createDefaultAssertionAdapter(); + } + + @Override + public Adapter caseAssertion(Assertion object) { + return createAssertionAdapter(); + } + + @Override + public Adapter caseUnboundedMultiplicity(UnboundedMultiplicity object) { + return createUnboundedMultiplicityAdapter(); + } + + @Override + public Adapter caseExactMultiplicity(ExactMultiplicity object) { + return createExactMultiplicityAdapter(); + } + + @Override + public Adapter caseBoundedMultiplicity(BoundedMultiplicity object) { + return createBoundedMultiplicityAdapter(); + } + + @Override + public Adapter caseInlinePredicateAttrributes(InlinePredicateAttrributes object) { + return createInlinePredicateAttrributesAdapter(); + } + + @Override + public Adapter caseAggregationOperator(AggregationOperator object) { + return createAggregationOperatorAdapter(); + } + + @Override + public Adapter caseProblem(Problem object) { + return createProblemAdapter(); + } + + @Override + public Adapter caseTypedStarArgument(TypedStarArgument object) { + return createTypedStarArgumentAdapter(); + } + + @Override + public Adapter caseTypedVariableArgument(TypedVariableArgument object) { + return createTypedVariableArgumentAdapter(); + } + + @Override + public Adapter caseUnnamedErrorPredicateDefintion(UnnamedErrorPredicateDefintion object) { + return createUnnamedErrorPredicateDefintionAdapter(); + } + + @Override + public Adapter caseObjectiveDeclaration(ObjectiveDeclaration object) { + return createObjectiveDeclarationAdapter(); + } + + @Override + public Adapter caseScopeDeclaration(ScopeDeclaration object) { + return createScopeDeclarationAdapter(); + } + + @Override + public Adapter caseExactScope(ExactScope object) { + return createExactScopeAdapter(); + } + + @Override + public Adapter caseBoundedScope(BoundedScope object) { + return createBoundedScopeAdapter(); + } + + @Override + public Adapter caseLowerBoundedScope(LowerBoundedScope object) { + return createLowerBoundedScopeAdapter(); + } + + @Override + public Adapter caseNamespaceImport(NamespaceImport object) { + return createNamespaceImportAdapter(); + } + + @Override + public Adapter caseImport(Import object) { + return createImportAdapter(); + } + + @Override + public Adapter caseUriImport(UriImport object) { + return createUriImportAdapter(); + } + + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the target. + * + * + * @param target the object to adapt. + * @return the adapter for the target. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject) target); + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.PathComponent Path Component}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.PathComponent + * @generated + */ + public Adapter createPathComponentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Symbol Symbol}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Symbol + * @generated + */ + public Adapter createSymbolAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Call Call}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Call + * @generated + */ + public Adapter createCallAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference Reference}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Reference + * @generated + */ + public Adapter createReferenceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Expression Expression}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Expression + * @generated + */ + public Adapter createExpressionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Argument Argument}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Argument + * @generated + */ + public Adapter createArgumentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList Argument List}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList + * @generated + */ + public Adapter createArgumentListAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument Expression Argument}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument + * @generated + */ + public Adapter createExpressionArgumentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.StarArgument Star Argument}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.StarArgument + * @generated + */ + public Adapter createStarArgumentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument Typed Argument}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument + * @generated + */ + public Adapter createTypedArgumentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession Multiary Expession}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession + * @generated + */ + public Adapter createMultiaryExpessionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable Variable}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Variable + * @generated + */ + public Adapter createVariableAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression Unary Expression}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression + * @generated + */ + public Adapter createUnaryExpressionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression Binary Expression}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression + * @generated + */ + public Adapter createBinaryExpressionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Disjunction Disjunction}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Disjunction + * @generated + */ + public Adapter createDisjunctionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Conjunction Conjunction}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Conjunction + * @generated + */ + public Adapter createConjunctionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression Conditional Expression}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression + * @generated + */ + public Adapter createConditionalExpressionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch Switch}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Switch + * @generated + */ + public Adapter createSwitchAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Case Case}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Case + * @generated + */ + public Adapter createCaseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetExpression Let Expression}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetExpression + * @generated + */ + public Adapter createLetExpressionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding Let Binding}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding + * @generated + */ + public Adapter createLetBindingAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Literal Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Literal + * @generated + */ + public Adapter createLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.IntLiteral Int Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.IntLiteral + * @generated + */ + public Adapter createIntLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.RealLiteral Real Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.RealLiteral + * @generated + */ + public Adapter createRealLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral String Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral + * @generated + */ + public Adapter createStringLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral Logic Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral + * @generated + */ + public Adapter createLogicLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral Empty Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral + * @generated + */ + public Adapter createEmptyLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression Cast Expression}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression + * @generated + */ + public Adapter createCastExpressionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression Aggregate Expression}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression + * @generated + */ + public Adapter createAggregateExpressionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Count Count}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Count + * @generated + */ + public Adapter createCountAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation Aggregation}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation + * @generated + */ + public Adapter createAggregationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Forall Forall}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Forall + * @generated + */ + public Adapter createForallAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypeReference Type Reference}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypeReference + * @generated + */ + public Adapter createTypeReferenceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral Infinity Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral + * @generated + */ + public Adapter createInfinityLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval Interval}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Interval + * @generated + */ + public Adapter createIntervalAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor Functor}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Functor + * @generated + */ + public Adapter createFunctorAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Relation Relation}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Relation + * @generated + */ + public Adapter createRelationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BaseRelation Base Relation}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.BaseRelation + * @generated + */ + public Adapter createBaseRelationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate Predicate}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate + * @generated + */ + public Adapter createPredicateAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Datatype Datatype}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Datatype + * @generated + */ + public Adapter createDatatypeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Function Function}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Function + * @generated + */ + public Adapter createFunctionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Metric Metric}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Metric + * @generated + */ + public Adapter createMetricAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Operator Operator}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Operator + * @generated + */ + public Adapter createOperatorAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Node Node}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Node + * @generated + */ + public Adapter createNodeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Statement Statement}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Statement + * @generated + */ + public Adapter createStatementAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion Abstract Assertion}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion + * @generated + */ + public Adapter createAbstractAssertionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton Functor Definiton}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton + * @generated + */ + public Adapter createFunctorDefinitonAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition Predicate Definition}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition + * @generated + */ + public Adapter createPredicateDefinitionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition Function Definition}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition + * @generated + */ + public Adapter createFunctionDefinitionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Attribute Attribute}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Attribute + * @generated + */ + public Adapter createAttributeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration Extern Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration + * @generated + */ + public Adapter createExternDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration Extern Functor Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration + * @generated + */ + public Adapter createExternFunctorDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration Extern Predicate Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration + * @generated + */ + public Adapter createExternPredicateDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration Extern Function Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration + * @generated + */ + public Adapter createExternFunctionDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration Extern Aggregation Operator Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration + * @generated + */ + public Adapter createExternAggregationOperatorDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration Extern Datatype Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration + * @generated + */ + public Adapter createExternDatatypeDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration Class Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration + * @generated + */ + public Adapter createClassDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration Enum Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration + * @generated + */ + public Adapter createEnumDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral Enum Literal}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral + * @generated + */ + public Adapter createEnumLiteralAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Field Field}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Field + * @generated + */ + public Adapter createFieldAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Multiplicity Multiplicity}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Multiplicity + * @generated + */ + public Adapter createMultiplicityAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion Default Assertion}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion + * @generated + */ + public Adapter createDefaultAssertionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Assertion Assertion}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Assertion + * @generated + */ + public Adapter createAssertionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity Unbounded Multiplicity}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity + * @generated + */ + public Adapter createUnboundedMultiplicityAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity Exact Multiplicity}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity + * @generated + */ + public Adapter createExactMultiplicityAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity Bounded Multiplicity}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity + * @generated + */ + public Adapter createBoundedMultiplicityAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes Inline Predicate Attrributes}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes + * @generated + */ + public Adapter createInlinePredicateAttrributesAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator Aggregation Operator}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator + * @generated + */ + public Adapter createAggregationOperatorAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem Problem}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Problem + * @generated + */ + public Adapter createProblemAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument Typed Star Argument}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument + * @generated + */ + public Adapter createTypedStarArgumentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument Typed Variable Argument}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument + * @generated + */ + public Adapter createTypedVariableArgumentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion Unnamed Error Predicate Defintion}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion + * @generated + */ + public Adapter createUnnamedErrorPredicateDefintionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration Objective Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration + * @generated + */ + public Adapter createObjectiveDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration Scope Declaration}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration + * @generated + */ + public Adapter createScopeDeclarationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScope Exact Scope}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScope + * @generated + */ + public Adapter createExactScopeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScope Bounded Scope}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScope + * @generated + */ + public Adapter createBoundedScopeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope Lower Bounded Scope}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope + * @generated + */ + public Adapter createLowerBoundedScopeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport Namespace Import}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport + * @generated + */ + public Adapter createNamespaceImportAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Import Import}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.Import + * @generated + */ + public Adapter createImportAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UriImport Uri Import}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see org.eclipse.viatra.solver.language.solverLanguage.UriImport + * @generated + */ + public Adapter createUriImportAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * + * This default implementation returns null. + * + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //SolverLanguageAdapterFactory diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java new file mode 100644 index 00000000..4786bb62 --- /dev/null +++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java @@ -0,0 +1,2114 @@ +/** + */ +package org.eclipse.viatra.solver.language.solverLanguage.util; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +import org.eclipse.viatra.solver.language.solverLanguage.*; + +/** + * + * The Switch for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the caseXXX method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * + * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage + * @generated + */ +public class SolverLanguageSwitch extends Switch { + /** + * The cached model package + * + * + * @generated + */ + protected static SolverLanguagePackage modelPackage; + + /** + * Creates an instance of the switch. + * + * + * @generated + */ + public SolverLanguageSwitch() { + if (modelPackage == null) { + modelPackage = SolverLanguagePackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * + * + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. + * + * + * @return the first non-null result returned by a caseXXX call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case SolverLanguagePackage.PATH_COMPONENT: { + PathComponent pathComponent = (PathComponent) theEObject; + T result = casePathComponent(pathComponent); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.SYMBOL: { + Symbol symbol = (Symbol) theEObject; + T result = caseSymbol(symbol); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.CALL: { + Call call = (Call) theEObject; + T result = caseCall(call); + if (result == null) + result = caseExpression(call); + if (result == null) + result = caseStatement(call); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.REFERENCE: { + Reference reference = (Reference) theEObject; + T result = caseReference(reference); + if (result == null) + result = caseExpression(reference); + if (result == null) + result = caseStatement(reference); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXPRESSION: { + Expression expression = (Expression) theEObject; + T result = caseExpression(expression); + if (result == null) + result = caseStatement(expression); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.ARGUMENT: { + Argument argument = (Argument) theEObject; + T result = caseArgument(argument); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.ARGUMENT_LIST: { + ArgumentList argumentList = (ArgumentList) theEObject; + T result = caseArgumentList(argumentList); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXPRESSION_ARGUMENT: { + ExpressionArgument expressionArgument = (ExpressionArgument) theEObject; + T result = caseExpressionArgument(expressionArgument); + if (result == null) + result = caseArgument(expressionArgument); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.STAR_ARGUMENT: { + StarArgument starArgument = (StarArgument) theEObject; + T result = caseStarArgument(starArgument); + if (result == null) + result = caseArgument(starArgument); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.TYPED_ARGUMENT: { + TypedArgument typedArgument = (TypedArgument) theEObject; + T result = caseTypedArgument(typedArgument); + if (result == null) + result = caseArgument(typedArgument); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.MULTIARY_EXPESSION: { + MultiaryExpession multiaryExpession = (MultiaryExpession) theEObject; + T result = caseMultiaryExpession(multiaryExpession); + if (result == null) + result = caseExpression(multiaryExpession); + if (result == null) + result = caseStatement(multiaryExpession); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.VARIABLE: { + Variable variable = (Variable) theEObject; + T result = caseVariable(variable); + if (result == null) + result = caseSymbol(variable); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.UNARY_EXPRESSION: { + UnaryExpression unaryExpression = (UnaryExpression) theEObject; + T result = caseUnaryExpression(unaryExpression); + if (result == null) + result = caseExpression(unaryExpression); + if (result == null) + result = caseStatement(unaryExpression); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.BINARY_EXPRESSION: { + BinaryExpression binaryExpression = (BinaryExpression) theEObject; + T result = caseBinaryExpression(binaryExpression); + if (result == null) + result = caseExpression(binaryExpression); + if (result == null) + result = caseStatement(binaryExpression); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.DISJUNCTION: { + Disjunction disjunction = (Disjunction) theEObject; + T result = caseDisjunction(disjunction); + if (result == null) + result = caseMultiaryExpession(disjunction); + if (result == null) + result = caseExpression(disjunction); + if (result == null) + result = caseStatement(disjunction); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.CONJUNCTION: { + Conjunction conjunction = (Conjunction) theEObject; + T result = caseConjunction(conjunction); + if (result == null) + result = caseMultiaryExpession(conjunction); + if (result == null) + result = caseExpression(conjunction); + if (result == null) + result = caseStatement(conjunction); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.CONDITIONAL_EXPRESSION: { + ConditionalExpression conditionalExpression = (ConditionalExpression) theEObject; + T result = caseConditionalExpression(conditionalExpression); + if (result == null) + result = caseExpression(conditionalExpression); + if (result == null) + result = caseStatement(conditionalExpression); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.SWITCH: { + org.eclipse.viatra.solver.language.solverLanguage.Switch switch_ = (org.eclipse.viatra.solver.language.solverLanguage.Switch) theEObject; + T result = caseSwitch(switch_); + if (result == null) + result = caseExpression(switch_); + if (result == null) + result = caseStatement(switch_); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.CASE: { + Case case_ = (Case) theEObject; + T result = caseCase(case_); + if (result == null) + result = caseExpression(case_); + if (result == null) + result = caseStatement(case_); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.LET_EXPRESSION: { + LetExpression letExpression = (LetExpression) theEObject; + T result = caseLetExpression(letExpression); + if (result == null) + result = caseExpression(letExpression); + if (result == null) + result = caseStatement(letExpression); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.LET_BINDING: { + LetBinding letBinding = (LetBinding) theEObject; + T result = caseLetBinding(letBinding); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.LITERAL: { + Literal literal = (Literal) theEObject; + T result = caseLiteral(literal); + if (result == null) + result = caseExpression(literal); + if (result == null) + result = caseStatement(literal); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.INT_LITERAL: { + IntLiteral intLiteral = (IntLiteral) theEObject; + T result = caseIntLiteral(intLiteral); + if (result == null) + result = caseLiteral(intLiteral); + if (result == null) + result = caseExpression(intLiteral); + if (result == null) + result = caseStatement(intLiteral); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.REAL_LITERAL: { + RealLiteral realLiteral = (RealLiteral) theEObject; + T result = caseRealLiteral(realLiteral); + if (result == null) + result = caseLiteral(realLiteral); + if (result == null) + result = caseExpression(realLiteral); + if (result == null) + result = caseStatement(realLiteral); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.STRING_LITERAL: { + StringLiteral stringLiteral = (StringLiteral) theEObject; + T result = caseStringLiteral(stringLiteral); + if (result == null) + result = caseLiteral(stringLiteral); + if (result == null) + result = caseExpression(stringLiteral); + if (result == null) + result = caseStatement(stringLiteral); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.LOGIC_LITERAL: { + LogicLiteral logicLiteral = (LogicLiteral) theEObject; + T result = caseLogicLiteral(logicLiteral); + if (result == null) + result = caseLiteral(logicLiteral); + if (result == null) + result = caseExpression(logicLiteral); + if (result == null) + result = caseStatement(logicLiteral); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EMPTY_LITERAL: { + EmptyLiteral emptyLiteral = (EmptyLiteral) theEObject; + T result = caseEmptyLiteral(emptyLiteral); + if (result == null) + result = caseLiteral(emptyLiteral); + if (result == null) + result = caseExpression(emptyLiteral); + if (result == null) + result = caseStatement(emptyLiteral); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.CAST_EXPRESSION: { + CastExpression castExpression = (CastExpression) theEObject; + T result = caseCastExpression(castExpression); + if (result == null) + result = caseExpression(castExpression); + if (result == null) + result = caseStatement(castExpression); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.AGGREGATE_EXPRESSION: { + AggregateExpression aggregateExpression = (AggregateExpression) theEObject; + T result = caseAggregateExpression(aggregateExpression); + if (result == null) + result = caseExpression(aggregateExpression); + if (result == null) + result = caseStatement(aggregateExpression); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.COUNT: { + Count count = (Count) theEObject; + T result = caseCount(count); + if (result == null) + result = caseAggregateExpression(count); + if (result == null) + result = caseExpression(count); + if (result == null) + result = caseStatement(count); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.AGGREGATION: { + Aggregation aggregation = (Aggregation) theEObject; + T result = caseAggregation(aggregation); + if (result == null) + result = caseAggregateExpression(aggregation); + if (result == null) + result = caseExpression(aggregation); + if (result == null) + result = caseStatement(aggregation); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.FORALL: { + Forall forall = (Forall) theEObject; + T result = caseForall(forall); + if (result == null) + result = caseAggregateExpression(forall); + if (result == null) + result = caseExpression(forall); + if (result == null) + result = caseStatement(forall); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.TYPE_REFERENCE: { + TypeReference typeReference = (TypeReference) theEObject; + T result = caseTypeReference(typeReference); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.INFINITY_LITERAL: { + InfinityLiteral infinityLiteral = (InfinityLiteral) theEObject; + T result = caseInfinityLiteral(infinityLiteral); + if (result == null) + result = caseLiteral(infinityLiteral); + if (result == null) + result = caseExpression(infinityLiteral); + if (result == null) + result = caseStatement(infinityLiteral); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.INTERVAL: { + Interval interval = (Interval) theEObject; + T result = caseInterval(interval); + if (result == null) + result = caseExpression(interval); + if (result == null) + result = caseStatement(interval); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.FUNCTOR: { + Functor functor = (Functor) theEObject; + T result = caseFunctor(functor); + if (result == null) + result = caseSymbol(functor); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.RELATION: { + Relation relation = (Relation) theEObject; + T result = caseRelation(relation); + if (result == null) + result = caseFunctor(relation); + if (result == null) + result = caseSymbol(relation); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.BASE_RELATION: { + BaseRelation baseRelation = (BaseRelation) theEObject; + T result = caseBaseRelation(baseRelation); + if (result == null) + result = caseRelation(baseRelation); + if (result == null) + result = caseFunctor(baseRelation); + if (result == null) + result = caseSymbol(baseRelation); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.PREDICATE: { + Predicate predicate = (Predicate) theEObject; + T result = casePredicate(predicate); + if (result == null) + result = caseRelation(predicate); + if (result == null) + result = caseFunctor(predicate); + if (result == null) + result = caseSymbol(predicate); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.DATATYPE: { + Datatype datatype = (Datatype) theEObject; + T result = caseDatatype(datatype); + if (result == null) + result = caseRelation(datatype); + if (result == null) + result = caseFunctor(datatype); + if (result == null) + result = caseSymbol(datatype); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.FUNCTION: { + Function function = (Function) theEObject; + T result = caseFunction(function); + if (result == null) + result = caseFunctor(function); + if (result == null) + result = caseSymbol(function); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.METRIC: { + Metric metric = (Metric) theEObject; + T result = caseMetric(metric); + if (result == null) + result = caseFunction(metric); + if (result == null) + result = caseFunctor(metric); + if (result == null) + result = caseSymbol(metric); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.OPERATOR: { + Operator operator = (Operator) theEObject; + T result = caseOperator(operator); + if (result == null) + result = caseFunction(operator); + if (result == null) + result = caseFunctor(operator); + if (result == null) + result = caseSymbol(operator); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.NODE: { + Node node = (Node) theEObject; + T result = caseNode(node); + if (result == null) + result = caseSymbol(node); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.STATEMENT: { + Statement statement = (Statement) theEObject; + T result = caseStatement(statement); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.ABSTRACT_ASSERTION: { + AbstractAssertion abstractAssertion = (AbstractAssertion) theEObject; + T result = caseAbstractAssertion(abstractAssertion); + if (result == null) + result = caseStatement(abstractAssertion); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.FUNCTOR_DEFINITON: { + FunctorDefiniton functorDefiniton = (FunctorDefiniton) theEObject; + T result = caseFunctorDefiniton(functorDefiniton); + if (result == null) + result = caseStatement(functorDefiniton); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.PREDICATE_DEFINITION: { + PredicateDefinition predicateDefinition = (PredicateDefinition) theEObject; + T result = casePredicateDefinition(predicateDefinition); + if (result == null) + result = caseFunctorDefiniton(predicateDefinition); + if (result == null) + result = caseInlinePredicateAttrributes(predicateDefinition); + if (result == null) + result = caseStatement(predicateDefinition); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.FUNCTION_DEFINITION: { + FunctionDefinition functionDefinition = (FunctionDefinition) theEObject; + T result = caseFunctionDefinition(functionDefinition); + if (result == null) + result = caseFunctorDefiniton(functionDefinition); + if (result == null) + result = caseStatement(functionDefinition); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.ATTRIBUTE: { + Attribute attribute = (Attribute) theEObject; + T result = caseAttribute(attribute); + if (result == null) + result = caseStatement(attribute); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXTERN_DECLARATION: { + ExternDeclaration externDeclaration = (ExternDeclaration) theEObject; + T result = caseExternDeclaration(externDeclaration); + if (result == null) + result = caseStatement(externDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXTERN_FUNCTOR_DECLARATION: { + ExternFunctorDeclaration externFunctorDeclaration = (ExternFunctorDeclaration) theEObject; + T result = caseExternFunctorDeclaration(externFunctorDeclaration); + if (result == null) + result = caseExternDeclaration(externFunctorDeclaration); + if (result == null) + result = caseStatement(externFunctorDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION: { + ExternPredicateDeclaration externPredicateDeclaration = (ExternPredicateDeclaration) theEObject; + T result = caseExternPredicateDeclaration(externPredicateDeclaration); + if (result == null) + result = caseExternFunctorDeclaration(externPredicateDeclaration); + if (result == null) + result = caseInlinePredicateAttrributes(externPredicateDeclaration); + if (result == null) + result = caseExternDeclaration(externPredicateDeclaration); + if (result == null) + result = caseStatement(externPredicateDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION: { + ExternFunctionDeclaration externFunctionDeclaration = (ExternFunctionDeclaration) theEObject; + T result = caseExternFunctionDeclaration(externFunctionDeclaration); + if (result == null) + result = caseExternFunctorDeclaration(externFunctionDeclaration); + if (result == null) + result = caseExternDeclaration(externFunctionDeclaration); + if (result == null) + result = caseStatement(externFunctionDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION: { + ExternAggregationOperatorDeclaration externAggregationOperatorDeclaration = (ExternAggregationOperatorDeclaration) theEObject; + T result = caseExternAggregationOperatorDeclaration(externAggregationOperatorDeclaration); + if (result == null) + result = caseExternDeclaration(externAggregationOperatorDeclaration); + if (result == null) + result = caseStatement(externAggregationOperatorDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXTERN_DATATYPE_DECLARATION: { + ExternDatatypeDeclaration externDatatypeDeclaration = (ExternDatatypeDeclaration) theEObject; + T result = caseExternDatatypeDeclaration(externDatatypeDeclaration); + if (result == null) + result = caseExternDeclaration(externDatatypeDeclaration); + if (result == null) + result = caseStatement(externDatatypeDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.CLASS_DECLARATION: { + ClassDeclaration classDeclaration = (ClassDeclaration) theEObject; + T result = caseClassDeclaration(classDeclaration); + if (result == null) + result = caseStatement(classDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.ENUM_DECLARATION: { + EnumDeclaration enumDeclaration = (EnumDeclaration) theEObject; + T result = caseEnumDeclaration(enumDeclaration); + if (result == null) + result = caseStatement(enumDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.ENUM_LITERAL: { + EnumLiteral enumLiteral = (EnumLiteral) theEObject; + T result = caseEnumLiteral(enumLiteral); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.FIELD: { + Field field = (Field) theEObject; + T result = caseField(field); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.MULTIPLICITY: { + Multiplicity multiplicity = (Multiplicity) theEObject; + T result = caseMultiplicity(multiplicity); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.DEFAULT_ASSERTION: { + DefaultAssertion defaultAssertion = (DefaultAssertion) theEObject; + T result = caseDefaultAssertion(defaultAssertion); + if (result == null) + result = caseAbstractAssertion(defaultAssertion); + if (result == null) + result = caseStatement(defaultAssertion); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.ASSERTION: { + Assertion assertion = (Assertion) theEObject; + T result = caseAssertion(assertion); + if (result == null) + result = caseAbstractAssertion(assertion); + if (result == null) + result = caseStatement(assertion); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.UNBOUNDED_MULTIPLICITY: { + UnboundedMultiplicity unboundedMultiplicity = (UnboundedMultiplicity) theEObject; + T result = caseUnboundedMultiplicity(unboundedMultiplicity); + if (result == null) + result = caseMultiplicity(unboundedMultiplicity); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXACT_MULTIPLICITY: { + ExactMultiplicity exactMultiplicity = (ExactMultiplicity) theEObject; + T result = caseExactMultiplicity(exactMultiplicity); + if (result == null) + result = caseMultiplicity(exactMultiplicity); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.BOUNDED_MULTIPLICITY: { + BoundedMultiplicity boundedMultiplicity = (BoundedMultiplicity) theEObject; + T result = caseBoundedMultiplicity(boundedMultiplicity); + if (result == null) + result = caseMultiplicity(boundedMultiplicity); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.INLINE_PREDICATE_ATTRRIBUTES: { + InlinePredicateAttrributes inlinePredicateAttrributes = (InlinePredicateAttrributes) theEObject; + T result = caseInlinePredicateAttrributes(inlinePredicateAttrributes); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.AGGREGATION_OPERATOR: { + AggregationOperator aggregationOperator = (AggregationOperator) theEObject; + T result = caseAggregationOperator(aggregationOperator); + if (result == null) + result = caseSymbol(aggregationOperator); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.PROBLEM: { + Problem problem = (Problem) theEObject; + T result = caseProblem(problem); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.TYPED_STAR_ARGUMENT: { + TypedStarArgument typedStarArgument = (TypedStarArgument) theEObject; + T result = caseTypedStarArgument(typedStarArgument); + if (result == null) + result = caseTypedArgument(typedStarArgument); + if (result == null) + result = caseArgument(typedStarArgument); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT: { + TypedVariableArgument typedVariableArgument = (TypedVariableArgument) theEObject; + T result = caseTypedVariableArgument(typedVariableArgument); + if (result == null) + result = caseTypedArgument(typedVariableArgument); + if (result == null) + result = caseArgument(typedVariableArgument); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION: { + UnnamedErrorPredicateDefintion unnamedErrorPredicateDefintion = (UnnamedErrorPredicateDefintion) theEObject; + T result = caseUnnamedErrorPredicateDefintion(unnamedErrorPredicateDefintion); + if (result == null) + result = caseStatement(unnamedErrorPredicateDefintion); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.OBJECTIVE_DECLARATION: { + ObjectiveDeclaration objectiveDeclaration = (ObjectiveDeclaration) theEObject; + T result = caseObjectiveDeclaration(objectiveDeclaration); + if (result == null) + result = caseStatement(objectiveDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.SCOPE_DECLARATION: { + ScopeDeclaration scopeDeclaration = (ScopeDeclaration) theEObject; + T result = caseScopeDeclaration(scopeDeclaration); + if (result == null) + result = caseStatement(scopeDeclaration); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.EXACT_SCOPE: { + ExactScope exactScope = (ExactScope) theEObject; + T result = caseExactScope(exactScope); + if (result == null) + result = caseScopeDeclaration(exactScope); + if (result == null) + result = caseStatement(exactScope); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.BOUNDED_SCOPE: { + BoundedScope boundedScope = (BoundedScope) theEObject; + T result = caseBoundedScope(boundedScope); + if (result == null) + result = caseScopeDeclaration(boundedScope); + if (result == null) + result = caseStatement(boundedScope); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.LOWER_BOUNDED_SCOPE: { + LowerBoundedScope lowerBoundedScope = (LowerBoundedScope) theEObject; + T result = caseLowerBoundedScope(lowerBoundedScope); + if (result == null) + result = caseScopeDeclaration(lowerBoundedScope); + if (result == null) + result = caseStatement(lowerBoundedScope); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.NAMESPACE_IMPORT: { + NamespaceImport namespaceImport = (NamespaceImport) theEObject; + T result = caseNamespaceImport(namespaceImport); + if (result == null) + result = caseImport(namespaceImport); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.IMPORT: { + Import import_ = (Import) theEObject; + T result = caseImport(import_); + if (result == null) + result = defaultCase(theEObject); + return result; + } + case SolverLanguagePackage.URI_IMPORT: { + UriImport uriImport = (UriImport) theEObject; + T result = caseUriImport(uriImport); + if (result == null) + result = caseImport(uriImport); + if (result == null) + result = defaultCase(theEObject); + return result; + } + default: + return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of 'Path Component'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Path Component'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePathComponent(PathComponent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Symbol'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Symbol'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSymbol(Symbol object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Call'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Call'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCall(Call object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Reference'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Reference'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseReference(Reference object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Expression'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Expression'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExpression(Expression object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Argument'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Argument'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseArgument(Argument object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Argument List'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Argument List'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseArgumentList(ArgumentList object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Expression Argument'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Expression Argument'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExpressionArgument(ExpressionArgument object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Star Argument'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Star Argument'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseStarArgument(StarArgument object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Typed Argument'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Typed Argument'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTypedArgument(TypedArgument object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Multiary Expession'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Multiary Expession'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMultiaryExpession(MultiaryExpession object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Variable'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Variable'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseVariable(Variable object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Unary Expression'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Unary Expression'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseUnaryExpression(UnaryExpression object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Binary Expression'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Binary Expression'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseBinaryExpression(BinaryExpression object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Disjunction'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Disjunction'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDisjunction(Disjunction object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Conjunction'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Conjunction'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseConjunction(Conjunction object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Conditional Expression'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Conditional Expression'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseConditionalExpression(ConditionalExpression object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Switch'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Switch'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSwitch(org.eclipse.viatra.solver.language.solverLanguage.Switch object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Case'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Case'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCase(Case object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Let Expression'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Let Expression'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLetExpression(LetExpression object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Let Binding'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Let Binding'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLetBinding(LetBinding object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLiteral(Literal object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Int Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Int Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIntLiteral(IntLiteral object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Real Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Real Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseRealLiteral(RealLiteral object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'String Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'String Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseStringLiteral(StringLiteral object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Logic Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Logic Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLogicLiteral(LogicLiteral object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Empty Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Empty Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEmptyLiteral(EmptyLiteral object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Cast Expression'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Cast Expression'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCastExpression(CastExpression object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Aggregate Expression'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Aggregate Expression'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAggregateExpression(AggregateExpression object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Count'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Count'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCount(Count object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Aggregation'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Aggregation'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAggregation(Aggregation object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Forall'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Forall'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseForall(Forall object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Type Reference'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Type Reference'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTypeReference(TypeReference object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Infinity Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Infinity Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseInfinityLiteral(InfinityLiteral object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Interval'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Interval'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseInterval(Interval object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Functor'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Functor'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunctor(Functor object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Relation'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Relation'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseRelation(Relation object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Base Relation'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Base Relation'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseBaseRelation(BaseRelation object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Predicate'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Predicate'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePredicate(Predicate object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Datatype'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Datatype'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDatatype(Datatype object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Function'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Function'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunction(Function object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Metric'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Metric'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMetric(Metric object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Operator'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Operator'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseOperator(Operator object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Node'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Node'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseNode(Node object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Statement'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Statement'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseStatement(Statement object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Abstract Assertion'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Abstract Assertion'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAbstractAssertion(AbstractAssertion object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Functor Definiton'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Functor Definiton'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunctorDefiniton(FunctorDefiniton object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Predicate Definition'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Predicate Definition'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePredicateDefinition(PredicateDefinition object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Function Definition'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Function Definition'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFunctionDefinition(FunctionDefinition object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Attribute'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Attribute'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAttribute(Attribute object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Extern Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Extern Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternDeclaration(ExternDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Extern Functor Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Extern Functor Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternFunctorDeclaration(ExternFunctorDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Extern Predicate Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Extern Predicate Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternPredicateDeclaration(ExternPredicateDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Extern Function Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Extern Function Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternFunctionDeclaration(ExternFunctionDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Extern Aggregation Operator Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Extern Aggregation Operator Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternAggregationOperatorDeclaration(ExternAggregationOperatorDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Extern Datatype Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Extern Datatype Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternDatatypeDeclaration(ExternDatatypeDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Class Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Class Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseClassDeclaration(ClassDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Enum Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Enum Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEnumDeclaration(EnumDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Enum Literal'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Enum Literal'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEnumLiteral(EnumLiteral object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Field'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Field'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseField(Field object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Multiplicity'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Multiplicity'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMultiplicity(Multiplicity object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Default Assertion'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Default Assertion'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDefaultAssertion(DefaultAssertion object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Assertion'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Assertion'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAssertion(Assertion object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Unbounded Multiplicity'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Unbounded Multiplicity'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseUnboundedMultiplicity(UnboundedMultiplicity object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Exact Multiplicity'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Exact Multiplicity'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExactMultiplicity(ExactMultiplicity object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Bounded Multiplicity'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Bounded Multiplicity'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseBoundedMultiplicity(BoundedMultiplicity object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Inline Predicate Attrributes'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Inline Predicate Attrributes'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseInlinePredicateAttrributes(InlinePredicateAttrributes object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Aggregation Operator'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Aggregation Operator'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAggregationOperator(AggregationOperator object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Problem'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Problem'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseProblem(Problem object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Typed Star Argument'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Typed Star Argument'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTypedStarArgument(TypedStarArgument object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Typed Variable Argument'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Typed Variable Argument'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTypedVariableArgument(TypedVariableArgument object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Unnamed Error Predicate Defintion'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Unnamed Error Predicate Defintion'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseUnnamedErrorPredicateDefintion(UnnamedErrorPredicateDefintion object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Objective Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Objective Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseObjectiveDeclaration(ObjectiveDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Scope Declaration'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Scope Declaration'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseScopeDeclaration(ScopeDeclaration object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Exact Scope'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Exact Scope'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExactScope(ExactScope object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Bounded Scope'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Bounded Scope'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseBoundedScope(BoundedScope object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Lower Bounded Scope'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Lower Bounded Scope'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLowerBoundedScope(LowerBoundedScope object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Namespace Import'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Namespace Import'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseNamespaceImport(NamespaceImport object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Import'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Import'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseImport(Import object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Uri Import'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Uri Import'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseUriImport(UriImport object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'EObject'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'EObject'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //SolverLanguageSwitch diff --git a/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/contentassist/AbstractSolverLanguageProposalProvider.java b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/contentassist/AbstractSolverLanguageProposalProvider.java index 5ee4eb1b..cfbb9a5d 100644 --- a/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/contentassist/AbstractSolverLanguageProposalProvider.java +++ b/Application/org.eclipse.viatra.solver.language.ui/src-gen/org/eclipse/viatra/solver/language/ui/contentassist/AbstractSolverLanguageProposalProvider.java @@ -18,9 +18,27 @@ import org.eclipse.xtext.ui.editor.contentassist.ICompletionProposalAcceptor; */ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsProposalProvider { + public void completeProblem_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeProblem_Imports(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } public void completeProblem_Statements(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } + public void completeUriImport_Uri(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeUriImport_Alias(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeNamespaceImport_ImportedNamespace(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeNamespaceImport_Alias(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } public void completeAssertionOrDefinition_Range(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } @@ -39,88 +57,97 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void completePredicateDefinition_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeUnnamedErrorPrediateDefinition_ArgumentList(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeUnnamedErrorPredicateDefintion_ArgumentList(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeUnnamedErrorPrediateDefinition_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeUnnamedErrorPredicateDefintion_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeDefaultDefinition_Head(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeDefaultAssertion_Expression(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeDefaultDefinition_Range(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeDefaultAssertion_Range(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeMetricDefinition_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeFunctionDefinition_ResultType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeMetricDefinition_Head(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeFunctionDefinition_Head(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeMetricDefinition_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeFunctionDefinition_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeExternPredicateDefinition_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + public void completeTypeReference_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + } + public void completeTypeReference_ForceObjectType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override } - public void completeExternPredicateDefinition_ArgumentList(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeAttribute_Kind(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeExternMetricDefinition_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeAttribute_Target(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeExternMetricDefinition_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExternPredicateDeclaration_Functional(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void completeExternPredicateDeclaration_Error(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void completeExternPredicateDeclaration_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeExternMetricDefinition_ArgumentList(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExternPredicateDeclaration_ArgumentList(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeExternAggregatorDefinition_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExternFunctionDeclaration_ResultType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeExternAggregatorDefinition_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExternFunctionDeclaration_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeExternAggregatorDefinition_InputType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); - } - public void completeExternDatatypeDefinition_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExternFunctionDeclaration_ArgumentList(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeExternDatatypeDefinition_Supertypes(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExternAggregationOperatorDeclaration_ResultType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeVariable_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExternAggregationOperatorDeclaration_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeExternAggregationOperatorDeclaration_ArgumentType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeVariable_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExternDatatypeDeclaration_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeIfElse_Condition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExpression_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeIfElse_Then(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeConditionalExpression_Condition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeIfElse_Else(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeConditionalExpression_Then(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeLet_Bindings(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeConditionalExpression_Else(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeLet_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeLetExpression_Bindings(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeLetBinding_Variable(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeLetExpression_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeLetBinding_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + public void completeLetBinding_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeImplicationExpression_Op(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeLetBinding_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeImplicationExpression_Right(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeLetBinding_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } public void completeDisjunctiveExpression_Children(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -165,7 +192,7 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void completeExponentialExpression_Right(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeCastExpression_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeCastExpression_TargetType(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } public void completeUnaryExpression_Op(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -174,59 +201,53 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void completeUnaryExpression_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeLocalVariables_Variables(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); - } - public void completeQuantifiedExpression_Quantifier(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + public void completeAggregation_Op(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeQuantifiedExpression_LocalVariables(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeAggregation_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeQuantifiedExpression_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeAggregation_Condition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeAggregation_Op(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); - } - public void completeAggregation_LocalVariables(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeCount_Condition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeAggregation_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeCall_Functor(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeAggregation_Condition(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeCall_ArgumentList(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeCall_Functor(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeArgumentList_Arguments(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeCall_TransitiveClosure(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExpressionArgument_Expression(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeCall_ReflexiveTransitiveClosure(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeTypedVariableArgument_TypeReference(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeCall_ArgumentList(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeTypedVariableArgument_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeArgumentList_Arguments(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeTypedStarArgument_TypeReference(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeExpressionArgument_Body(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeReference_Components(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeTypedArgument_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + public void completePathComponent_Inverse(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override } - public void completeTypedArgument_Variable(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completePathComponent_Symbol(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeTypedStarArgument_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + public void completePathComponent_TransitiveClosure(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeReference_Referred(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); + public void completePathComponent_ReflexiveTransitiveClosure(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } public void completeInterval_LowerBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); @@ -237,40 +258,49 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void completeLogicLiteral_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeNumericLiteral_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeIntLiteral_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeRealLiteral_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } public void completeStringLiteral_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeClassDefinition_Abstract(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeClassDeclaration_Abstract(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void completeClassDeclaration_Root(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void completeClassDefinition_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeClassDeclaration_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeClassDefinition_Superclasses(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeClassDeclaration_Supertypes(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeClassDefinition_Members(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeClassDeclaration_Fields(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeMemberDefinition_Containment(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeField_Containment(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void completeMemberDefinition_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeField_CrossReference(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void completeField_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeMemberDefinition_Multiplicity(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeField_Multiplicity(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeMemberDefinition_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeField_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeMemberDefinition_Opposite(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeField_Opposite(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeExactMultiplicity_Multiplicity(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExactMultiplicity_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } public void completeBoundedMultiplicity_LowerBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -279,31 +309,40 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void completeBoundedMultiplicity_UpperBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeExactScopeDefinition_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeEnumDeclaration_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeEnumDeclaration_Literals(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeEnumLiteral_Name(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); + } + public void completeExactScope_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeExactScopeDefinition_ExactScope(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeExactScope_Size(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeBoundedScopeDefinition_LowerBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeBoundedScope_LowerBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeBoundedScopeDefinition_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeBoundedScope_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeBoundedScopeDefinition_UpperBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeBoundedScope_UpperBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeLowerBoundedScopeDefinition_LowerBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeLowerBoundedScope_LowerBound(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeLowerBoundedScopeDefinition_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeLowerBoundedScope_Type(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor); } - public void completeObjectiveDefinition_Kind(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeObjectiveDeclaration_Kind(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } - public void completeObjectiveDefinition_Objective(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void completeObjectiveDeclaration_Objective(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor); } @@ -313,52 +352,64 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void complete_Statement(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } + public void complete_Import(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_UriImport(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_NamespaceImport(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } public void complete_AssertionOrDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_PredicateDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_UnnamedErrorPrediateDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_UnnamedErrorPredicateDefintion(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_DefaultDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_DefaultAssertion(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_MetricDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_FunctionDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ExternPredicateDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_TypeReference(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ExternMetricDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_AttributeKind(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ExternAggregatorDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_Attribute(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ExternDatatypeDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ExternDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_Variable(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ExternPredicateDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_Expression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ExternFunctionDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_IfElse(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ExternAggregationOperatorDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_Let(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ExternDatatypeDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_LetBinding(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_Expression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ImplicationOperator(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ConditionalExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ImplicationExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_LetExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_LetBinding(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_DisjunctiveExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -397,25 +448,19 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void complete_CastExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_UnaryOp(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_UnaryOperator(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_UnaryExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_AggregationExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_BracedAggregateExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_LocalVariables(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - // subclasses may override - } - public void complete_Quantifier(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { - // subclasses may override - } - public void complete_QuantifiedExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_Aggregation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_Aggregation(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_Count(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_AtomicExpression(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -436,7 +481,7 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void complete_StarArgument(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_TypedArgument(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_TypedVariableArgument(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_TypedStarArgument(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -445,6 +490,9 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void complete_Reference(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } + public void complete_PathComponent(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } public void complete_Interval(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } @@ -457,28 +505,31 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void complete_LogicLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_NumericLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_IntLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_RealLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_InfinityLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_EmptyIntervalLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_EmptyLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_StringLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ClassDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ClassDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_MemberDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_Field(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_Multiplicity(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ManyMultiplicity(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_UnboundedMultiplicity(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_ExactMultiplicity(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -487,22 +538,28 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void complete_BoundedMultiplicity(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ScopeDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_EnumDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ExactScopeDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_EnumLiteral(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_BoundedScopeDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ScopeDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_LowerBoundedScopeDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ExactScope(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_BoundedScope(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } + public void complete_LowerBoundedScope(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_ObjectiveKind(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } - public void complete_ObjectiveDefinition(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + public void complete_ObjectiveDeclaration(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } public void complete_UpperMultiplicty(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { @@ -511,6 +568,9 @@ public abstract class AbstractSolverLanguageProposalProvider extends TerminalsPr public void complete_Real(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } + public void complete_QualifiedNameSegment(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { + // subclasses may override + } public void complete_QualifiedName(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) { // subclasses may override } diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/syntaxcoloring/.SolverSemanticHighlightCalculator.xtendbin b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/syntaxcoloring/.SolverSemanticHighlightCalculator.xtendbin index d0f29da0..7a55c906 100644 Binary files a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/syntaxcoloring/.SolverSemanticHighlightCalculator.xtendbin and b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/syntaxcoloring/.SolverSemanticHighlightCalculator.xtendbin differ diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/syntaxcoloring/.SolverSemanticTextAttributeProvider.xtendbin b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/syntaxcoloring/.SolverSemanticTextAttributeProvider.xtendbin index 1a22dc64..08e0e545 100644 Binary files a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/syntaxcoloring/.SolverSemanticTextAttributeProvider.xtendbin and b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/ui/syntaxcoloring/.SolverSemanticTextAttributeProvider.xtendbin differ diff --git a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/validation/.SolverLanguageValidator.xtendbin b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/validation/.SolverLanguageValidator.xtendbin index 88122ad9..441e9278 100644 Binary files a/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/validation/.SolverLanguageValidator.xtendbin and b/Application/org.eclipse.viatra.solver.language.ui/xtend-gen/org/eclipse/viatra/solver/language/validation/.SolverLanguageValidator.xtendbin differ diff --git a/Application/org.eclipse.viatra.solver.language/.classpath b/Application/org.eclipse.viatra.solver.language/.classpath index 6b0b4bdb..9081d4f7 100644 --- a/Application/org.eclipse.viatra.solver.language/.classpath +++ b/Application/org.eclipse.viatra.solver.language/.classpath @@ -3,7 +3,6 @@ - diff --git a/Application/org.eclipse.viatra.solver.language/META-INF/MANIFEST.MF b/Application/org.eclipse.viatra.solver.language/META-INF/MANIFEST.MF index c45bb276..5ee256a4 100644 --- a/Application/org.eclipse.viatra.solver.language/META-INF/MANIFEST.MF +++ b/Application/org.eclipse.viatra.solver.language/META-INF/MANIFEST.MF @@ -14,18 +14,16 @@ Require-Bundle: org.eclipse.xtext, org.eclipse.xtext.util, org.eclipse.emf.common, org.eclipse.xtend.lib;bundle-version="2.14.0", - org.antlr.runtime;bundle-version="[3.2.0,3.2.1)" + org.antlr.runtime;bundle-version="[3.2.0,3.2.1)", + org.eclipse.viatra.solver.language.model;bundle-version="0.1.0";visibility:=reexport Bundle-RequiredExecutionEnvironment: JavaSE-1.8 Export-Package: org.eclipse.viatra.solver.language, org.eclipse.viatra.solver.language.generator, org.eclipse.viatra.solver.language.parser.antlr, org.eclipse.viatra.solver.language.parser.antlr.internal, + org.eclipse.viatra.solver.language.parser.antlr.lexer, org.eclipse.viatra.solver.language.scoping, org.eclipse.viatra.solver.language.serializer, org.eclipse.viatra.solver.language.services, - org.eclipse.viatra.solver.language.solverLanguage, - org.eclipse.viatra.solver.language.solverLanguage.impl, - org.eclipse.viatra.solver.language.solverLanguage.util, - org.eclipse.viatra.solver.language.validation, - org.eclipse.viatra.solver.language.parser.antlr.lexer + org.eclipse.viatra.solver.language.validation Import-Package: org.apache.log4j diff --git a/Application/org.eclipse.viatra.solver.language/build.properties b/Application/org.eclipse.viatra.solver.language/build.properties index aa338a94..b1584c24 100644 --- a/Application/org.eclipse.viatra.solver.language/build.properties +++ b/Application/org.eclipse.viatra.solver.language/build.properties @@ -1,8 +1,7 @@ source.. = src/,\ src-gen/,\ xtend-gen/ -bin.includes = model/generated/,\ - .,\ +bin.includes = .,\ META-INF/,\ plugin.xml bin.excludes = **/*.mwe2,\ diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java deleted file mode 100644 index f6159bd8..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Aggregation.java +++ /dev/null @@ -1,115 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Aggregation'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp Op}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getLocalVariables Local Variables}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getCondition Condition}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation() - * @model - * @generated - */ -public interface Aggregation extends Expression { - /** - * Returns the value of the 'Op' reference. - * - * - * @return the value of the 'Op' reference. - * @see #setOp(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation_Op() - * @model - * @generated - */ - NamedElement getOp(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp Op}' reference. - * - * - * @param value the new value of the 'Op' reference. - * @see #getOp() - * @generated - */ - void setOp(NamedElement value); - - /** - * Returns the value of the 'Local Variables' containment reference. - * - * - * @return the value of the 'Local Variables' containment reference. - * @see #setLocalVariables(LocalVariables) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation_LocalVariables() - * @model containment="true" - * @generated - */ - LocalVariables getLocalVariables(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getLocalVariables Local Variables}' containment reference. - * - * - * @param value the new value of the 'Local Variables' containment reference. - * @see #getLocalVariables() - * @generated - */ - void setLocalVariables(LocalVariables value); - - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - - /** - * Returns the value of the 'Condition' containment reference. - * - * - * @return the value of the 'Condition' containment reference. - * @see #setCondition(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getAggregation_Condition() - * @model containment="true" - * @generated - */ - Expression getCondition(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getCondition Condition}' containment reference. - * - * - * @param value the new value of the 'Condition' containment reference. - * @see #getCondition() - * @generated - */ - void setCondition(Expression value); - -} // Aggregation diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java deleted file mode 100644 index 3f5d1b45..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Argument.java +++ /dev/null @@ -1,19 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Argument'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgument() - * @model - * @generated - */ -public interface Argument extends EObject { -} // Argument diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java deleted file mode 100644 index 2be01423..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ArgumentList.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Argument List'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments Arguments}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgumentList() - * @model - * @generated - */ -public interface ArgumentList extends EObject { - /** - * Returns the value of the 'Arguments' containment reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Argument}. - * - * - * @return the value of the 'Arguments' containment reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getArgumentList_Arguments() - * @model containment="true" - * @generated - */ - EList getArguments(); - -} // ArgumentList diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java deleted file mode 100644 index 6b50beba..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryExpression.java +++ /dev/null @@ -1,95 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Binary Expression'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft Left}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp Op}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight Right}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression() - * @model - * @generated - */ -public interface BinaryExpression extends Expression { - /** - * Returns the value of the 'Left' containment reference. - * - * - * @return the value of the 'Left' containment reference. - * @see #setLeft(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Left() - * @model containment="true" - * @generated - */ - Expression getLeft(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft Left}' containment reference. - * - * - * @param value the new value of the 'Left' containment reference. - * @see #getLeft() - * @generated - */ - void setLeft(Expression value); - - /** - * Returns the value of the 'Op' attribute. - * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator}. - * - * - * @return the value of the 'Op' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator - * @see #setOp(BinaryOperator) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Op() - * @model - * @generated - */ - BinaryOperator getOp(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp Op}' attribute. - * - * - * @param value the new value of the 'Op' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator - * @see #getOp() - * @generated - */ - void setOp(BinaryOperator value); - - /** - * Returns the value of the 'Right' containment reference. - * - * - * @return the value of the 'Right' containment reference. - * @see #setRight(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryExpression_Right() - * @model containment="true" - * @generated - */ - Expression getRight(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight Right}' containment reference. - * - * - * @param value the new value of the 'Right' containment reference. - * @see #getRight() - * @generated - */ - void setRight(Expression value); - -} // BinaryExpression diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java deleted file mode 100644 index ce34afc7..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BinaryOperator.java +++ /dev/null @@ -1,463 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.eclipse.emf.common.util.Enumerator; - -/** - * - * A representation of the literals of the enumeration 'Binary Operator', - * and utility methods for working with them. - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBinaryOperator() - * @model - * @generated - */ -public enum BinaryOperator implements Enumerator { - /** - * The 'EQ' literal object. - * - * - * @see #EQ_VALUE - * @generated - * @ordered - */ - EQ(0, "EQ", "EQ"), - - /** - * The 'NOT EQ' literal object. - * - * - * @see #NOT_EQ_VALUE - * @generated - * @ordered - */ - NOT_EQ(1, "NOT_EQ", "NOT_EQ"), - - /** - * The 'LESS' literal object. - * - * - * @see #LESS_VALUE - * @generated - * @ordered - */ - LESS(2, "LESS", "LESS"), - - /** - * The 'LESS EQ' literal object. - * - * - * @see #LESS_EQ_VALUE - * @generated - * @ordered - */ - LESS_EQ(3, "LESS_EQ", "LESS_EQ"), - - /** - * The 'GREATER' literal object. - * - * - * @see #GREATER_VALUE - * @generated - * @ordered - */ - GREATER(4, "GREATER", "GREATER"), - - /** - * The 'GREATER EQ' literal object. - * - * - * @see #GREATER_EQ_VALUE - * @generated - * @ordered - */ - GREATER_EQ(5, "GREATER_EQ", "GREATER_EQ"), - - /** - * The 'IN' literal object. - * - * - * @see #IN_VALUE - * @generated - * @ordered - */ - IN(6, "IN", "IN"), - - /** - * The 'ADD' literal object. - * - * - * @see #ADD_VALUE - * @generated - * @ordered - */ - ADD(7, "ADD", "ADD"), - - /** - * The 'SUB' literal object. - * - * - * @see #SUB_VALUE - * @generated - * @ordered - */ - SUB(8, "SUB", "SUB"), - - /** - * The 'MUL' literal object. - * - * - * @see #MUL_VALUE - * @generated - * @ordered - */ - MUL(9, "MUL", "MUL"), - - /** - * The 'DIV' literal object. - * - * - * @see #DIV_VALUE - * @generated - * @ordered - */ - DIV(10, "DIV", "DIV"), - - /** - * The 'POW' literal object. - * - * - * @see #POW_VALUE - * @generated - * @ordered - */ - POW(11, "POW", "POW"), - - /** - * The 'IMPLIES' literal object. - * - * - * @see #IMPLIES_VALUE - * @generated - * @ordered - */ - IMPLIES(12, "IMPLIES", "IMPLIES"); - - /** - * The 'EQ' literal value. - * - * - * @see #EQ - * @model - * @generated - * @ordered - */ - public static final int EQ_VALUE = 0; - - /** - * The 'NOT EQ' literal value. - * - * - * @see #NOT_EQ - * @model - * @generated - * @ordered - */ - public static final int NOT_EQ_VALUE = 1; - - /** - * The 'LESS' literal value. - * - * - * @see #LESS - * @model - * @generated - * @ordered - */ - public static final int LESS_VALUE = 2; - - /** - * The 'LESS EQ' literal value. - * - * - * @see #LESS_EQ - * @model - * @generated - * @ordered - */ - public static final int LESS_EQ_VALUE = 3; - - /** - * The 'GREATER' literal value. - * - * - * @see #GREATER - * @model - * @generated - * @ordered - */ - public static final int GREATER_VALUE = 4; - - /** - * The 'GREATER EQ' literal value. - * - * - * @see #GREATER_EQ - * @model - * @generated - * @ordered - */ - public static final int GREATER_EQ_VALUE = 5; - - /** - * The 'IN' literal value. - * - * - * @see #IN - * @model - * @generated - * @ordered - */ - public static final int IN_VALUE = 6; - - /** - * The 'ADD' literal value. - * - * - * @see #ADD - * @model - * @generated - * @ordered - */ - public static final int ADD_VALUE = 7; - - /** - * The 'SUB' literal value. - * - * - * @see #SUB - * @model - * @generated - * @ordered - */ - public static final int SUB_VALUE = 8; - - /** - * The 'MUL' literal value. - * - * - * @see #MUL - * @model - * @generated - * @ordered - */ - public static final int MUL_VALUE = 9; - - /** - * The 'DIV' literal value. - * - * - * @see #DIV - * @model - * @generated - * @ordered - */ - public static final int DIV_VALUE = 10; - - /** - * The 'POW' literal value. - * - * - * @see #POW - * @model - * @generated - * @ordered - */ - public static final int POW_VALUE = 11; - - /** - * The 'IMPLIES' literal value. - * - * - * @see #IMPLIES - * @model - * @generated - * @ordered - */ - public static final int IMPLIES_VALUE = 12; - - /** - * An array of all the 'Binary Operator' enumerators. - * - * - * @generated - */ - private static final BinaryOperator[] VALUES_ARRAY = - new BinaryOperator[] { - EQ, - NOT_EQ, - LESS, - LESS_EQ, - GREATER, - GREATER_EQ, - IN, - ADD, - SUB, - MUL, - DIV, - POW, - IMPLIES, - }; - - /** - * A public read-only list of all the 'Binary Operator' enumerators. - * - * - * @generated - */ - public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); - - /** - * Returns the 'Binary Operator' literal with the specified literal value. - * - * - * @param literal the literal. - * @return the matching enumerator or null. - * @generated - */ - public static BinaryOperator get(String literal) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - BinaryOperator result = VALUES_ARRAY[i]; - if (result.toString().equals(literal)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Binary Operator' literal with the specified name. - * - * - * @param name the name. - * @return the matching enumerator or null. - * @generated - */ - public static BinaryOperator getByName(String name) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - BinaryOperator result = VALUES_ARRAY[i]; - if (result.getName().equals(name)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Binary Operator' literal with the specified integer value. - * - * - * @param value the integer value. - * @return the matching enumerator or null. - * @generated - */ - public static BinaryOperator get(int value) { - switch (value) { - case EQ_VALUE: return EQ; - case NOT_EQ_VALUE: return NOT_EQ; - case LESS_VALUE: return LESS; - case LESS_EQ_VALUE: return LESS_EQ; - case GREATER_VALUE: return GREATER; - case GREATER_EQ_VALUE: return GREATER_EQ; - case IN_VALUE: return IN; - case ADD_VALUE: return ADD; - case SUB_VALUE: return SUB; - case MUL_VALUE: return MUL; - case DIV_VALUE: return DIV; - case POW_VALUE: return POW; - case IMPLIES_VALUE: return IMPLIES; - } - return null; - } - - /** - * - * - * @generated - */ - private final int value; - - /** - * - * - * @generated - */ - private final String name; - - /** - * - * - * @generated - */ - private final String literal; - - /** - * Only this class can construct instances. - * - * - * @generated - */ - private BinaryOperator(int value, String name, String literal) { - this.value = value; - this.name = name; - this.literal = literal; - } - - /** - * - * - * @generated - */ - @Override - public int getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public String getLiteral() { - return literal; - } - - /** - * Returns the literal value of the enumerator, which is its string representation. - * - * - * @generated - */ - @Override - public String toString() { - return literal; - } - -} //BinaryOperator diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java deleted file mode 100644 index e0cea7d4..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedMultiplicity.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Bounded Multiplicity'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound Lower Bound}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound Upper Bound}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity() - * @model - * @generated - */ -public interface BoundedMultiplicity extends Multiplicity { - /** - * Returns the value of the 'Lower Bound' attribute. - * - * - * @return the value of the 'Lower Bound' attribute. - * @see #setLowerBound(int) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity_LowerBound() - * @model - * @generated - */ - int getLowerBound(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound Lower Bound}' attribute. - * - * - * @param value the new value of the 'Lower Bound' attribute. - * @see #getLowerBound() - * @generated - */ - void setLowerBound(int value); - - /** - * Returns the value of the 'Upper Bound' attribute. - * - * - * @return the value of the 'Upper Bound' attribute. - * @see #setUpperBound(int) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedMultiplicity_UpperBound() - * @model - * @generated - */ - int getUpperBound(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound Upper Bound}' attribute. - * - * - * @param value the new value of the 'Upper Bound' attribute. - * @see #getUpperBound() - * @generated - */ - void setUpperBound(int value); - -} // BoundedMultiplicity diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScopeDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScopeDefinition.java deleted file mode 100644 index 81f87193..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/BoundedScopeDefinition.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Bounded Scope Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition#getLowerBound Lower Bound}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition#getUpperBound Upper Bound}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScopeDefinition() - * @model - * @generated - */ -public interface BoundedScopeDefinition extends ScopeDefinition { - /** - * Returns the value of the 'Lower Bound' attribute. - * - * - * @return the value of the 'Lower Bound' attribute. - * @see #setLowerBound(int) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScopeDefinition_LowerBound() - * @model - * @generated - */ - int getLowerBound(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition#getLowerBound Lower Bound}' attribute. - * - * - * @param value the new value of the 'Lower Bound' attribute. - * @see #getLowerBound() - * @generated - */ - void setLowerBound(int value); - - /** - * Returns the value of the 'Upper Bound' attribute. - * - * - * @return the value of the 'Upper Bound' attribute. - * @see #setUpperBound(int) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getBoundedScopeDefinition_UpperBound() - * @model - * @generated - */ - int getUpperBound(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition#getUpperBound Upper Bound}' attribute. - * - * - * @param value the new value of the 'Upper Bound' attribute. - * @see #getUpperBound() - * @generated - */ - void setUpperBound(int value); - -} // BoundedScopeDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java deleted file mode 100644 index ab0940bb..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Call.java +++ /dev/null @@ -1,115 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Call'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor Functor}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Call#isTransitiveClosure Transitive Closure}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Call#isReflexiveTransitiveClosure Reflexive Transitive Closure}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList Argument List}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall() - * @model - * @generated - */ -public interface Call extends Expression { - /** - * Returns the value of the 'Functor' containment reference. - * - * - * @return the value of the 'Functor' containment reference. - * @see #setFunctor(Reference) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall_Functor() - * @model containment="true" - * @generated - */ - Reference getFunctor(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor Functor}' containment reference. - * - * - * @param value the new value of the 'Functor' containment reference. - * @see #getFunctor() - * @generated - */ - void setFunctor(Reference value); - - /** - * Returns the value of the 'Transitive Closure' attribute. - * - * - * @return the value of the 'Transitive Closure' attribute. - * @see #setTransitiveClosure(boolean) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall_TransitiveClosure() - * @model - * @generated - */ - boolean isTransitiveClosure(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#isTransitiveClosure Transitive Closure}' attribute. - * - * - * @param value the new value of the 'Transitive Closure' attribute. - * @see #isTransitiveClosure() - * @generated - */ - void setTransitiveClosure(boolean value); - - /** - * Returns the value of the 'Reflexive Transitive Closure' attribute. - * - * - * @return the value of the 'Reflexive Transitive Closure' attribute. - * @see #setReflexiveTransitiveClosure(boolean) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall_ReflexiveTransitiveClosure() - * @model - * @generated - */ - boolean isReflexiveTransitiveClosure(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#isReflexiveTransitiveClosure Reflexive Transitive Closure}' attribute. - * - * - * @param value the new value of the 'Reflexive Transitive Closure' attribute. - * @see #isReflexiveTransitiveClosure() - * @generated - */ - void setReflexiveTransitiveClosure(boolean value); - - /** - * Returns the value of the 'Argument List' containment reference. - * - * - * @return the value of the 'Argument List' containment reference. - * @see #setArgumentList(ArgumentList) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCall_ArgumentList() - * @model containment="true" - * @generated - */ - ArgumentList getArgumentList(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList Argument List}' containment reference. - * - * - * @param value the new value of the 'Argument List' containment reference. - * @see #getArgumentList() - * @generated - */ - void setArgumentList(ArgumentList value); - -} // Call diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java deleted file mode 100644 index f2d2e5a7..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Case.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Case'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition Condition}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase() - * @model - * @generated - */ -public interface Case extends Expression { - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - - /** - * Returns the value of the 'Condition' containment reference. - * - * - * @return the value of the 'Condition' containment reference. - * @see #setCondition(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCase_Condition() - * @model containment="true" - * @generated - */ - Expression getCondition(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition Condition}' containment reference. - * - * - * @param value the new value of the 'Condition' containment reference. - * @see #getCondition() - * @generated - */ - void setCondition(Expression value); - -} // Case diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java deleted file mode 100644 index d8fe4945..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/CastExpression.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Cast Expression'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getType Type}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression() - * @model - * @generated - */ -public interface CastExpression extends Expression { - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getCastExpression_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - -} // CastExpression diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDefinition.java deleted file mode 100644 index 0963c7a1..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ClassDefinition.java +++ /dev/null @@ -1,96 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Class Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#isAbstract Abstract}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getSuperclasses Superclasses}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getMembers Members}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDefinition() - * @model - * @generated - */ -public interface ClassDefinition extends Statement { - /** - * Returns the value of the 'Abstract' attribute. - * - * - * @return the value of the 'Abstract' attribute. - * @see #setAbstract(boolean) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDefinition_Abstract() - * @model - * @generated - */ - boolean isAbstract(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#isAbstract Abstract}' attribute. - * - * - * @param value the new value of the 'Abstract' attribute. - * @see #isAbstract() - * @generated - */ - void setAbstract(boolean value); - - /** - * Returns the value of the 'Name' attribute. - * - * - * @return the value of the 'Name' attribute. - * @see #setName(String) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDefinition_Name() - * @model - * @generated - */ - String getName(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getName Name}' attribute. - * - * - * @param value the new value of the 'Name' attribute. - * @see #getName() - * @generated - */ - void setName(String value); - - /** - * Returns the value of the 'Superclasses' reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.NamedElement}. - * - * - * @return the value of the 'Superclasses' reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDefinition_Superclasses() - * @model - * @generated - */ - EList getSuperclasses(); - - /** - * Returns the value of the 'Members' containment reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition}. - * - * - * @return the value of the 'Members' containment reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getClassDefinition_Members() - * @model containment="true" - * @generated - */ - EList getMembers(); - -} // ClassDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Comparison.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Comparison.java deleted file mode 100644 index 5187c5db..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Comparison.java +++ /dev/null @@ -1,95 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Comparison'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getLeft Left}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getOp Op}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getRight Right}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getComparison() - * @model - * @generated - */ -public interface Comparison extends Expression { - /** - * Returns the value of the 'Left' containment reference. - * - * - * @return the value of the 'Left' containment reference. - * @see #setLeft(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getComparison_Left() - * @model containment="true" - * @generated - */ - Expression getLeft(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getLeft Left}' containment reference. - * - * - * @param value the new value of the 'Left' containment reference. - * @see #getLeft() - * @generated - */ - void setLeft(Expression value); - - /** - * Returns the value of the 'Op' attribute. - * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator}. - * - * - * @return the value of the 'Op' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator - * @see #setOp(BinaryOperator) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getComparison_Op() - * @model - * @generated - */ - BinaryOperator getOp(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getOp Op}' attribute. - * - * - * @param value the new value of the 'Op' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator - * @see #getOp() - * @generated - */ - void setOp(BinaryOperator value); - - /** - * Returns the value of the 'Right' containment reference. - * - * - * @return the value of the 'Right' containment reference. - * @see #setRight(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getComparison_Right() - * @model containment="true" - * @generated - */ - Expression getRight(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getRight Right}' containment reference. - * - * - * @param value the new value of the 'Right' containment reference. - * @see #getRight() - * @generated - */ - void setRight(Expression value); - -} // Comparison diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java deleted file mode 100644 index 788f5a97..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Conjunction.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Conjunction'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Conjunction#getChildren Children}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConjunction() - * @model - * @generated - */ -public interface Conjunction extends Expression { - /** - * Returns the value of the 'Children' containment reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Expression}. - * - * - * @return the value of the 'Children' containment reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getConjunction_Children() - * @model containment="true" - * @generated - */ - EList getChildren(); - -} // Conjunction diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultDefinition.java deleted file mode 100644 index ac5f6f32..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/DefaultDefinition.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Default Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition#getHead Head}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition#getRange Range}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDefaultDefinition() - * @model - * @generated - */ -public interface DefaultDefinition extends Statement { - /** - * Returns the value of the 'Head' containment reference. - * - * - * @return the value of the 'Head' containment reference. - * @see #setHead(Call) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDefaultDefinition_Head() - * @model containment="true" - * @generated - */ - Call getHead(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition#getHead Head}' containment reference. - * - * - * @param value the new value of the 'Head' containment reference. - * @see #getHead() - * @generated - */ - void setHead(Call value); - - /** - * Returns the value of the 'Range' containment reference. - * - * - * @return the value of the 'Range' containment reference. - * @see #setRange(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDefaultDefinition_Range() - * @model containment="true" - * @generated - */ - Expression getRange(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition#getRange Range}' containment reference. - * - * - * @param value the new value of the 'Range' containment reference. - * @see #getRange() - * @generated - */ - void setRange(Expression value); - -} // DefaultDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java deleted file mode 100644 index eb1cafde..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Disjunction.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Disjunction'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Disjunction#getChildren Children}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDisjunction() - * @model - * @generated - */ -public interface Disjunction extends Expression { - /** - * Returns the value of the 'Children' containment reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Expression}. - * - * - * @return the value of the 'Children' containment reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getDisjunction_Children() - * @model containment="true" - * @generated - */ - EList getChildren(); - -} // Disjunction diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyIntervalLiteral.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyIntervalLiteral.java deleted file mode 100644 index b3e5ccf7..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/EmptyIntervalLiteral.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Empty Interval Literal'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getEmptyIntervalLiteral() - * @model - * @generated - */ -public interface EmptyIntervalLiteral extends Literal { -} // EmptyIntervalLiteral diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java deleted file mode 100644 index 666c2f43..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactMultiplicity.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Exact Multiplicity'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getMultiplicity Multiplicity}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactMultiplicity() - * @model - * @generated - */ -public interface ExactMultiplicity extends Multiplicity { - /** - * Returns the value of the 'Multiplicity' attribute. - * - * - * @return the value of the 'Multiplicity' attribute. - * @see #setMultiplicity(int) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactMultiplicity_Multiplicity() - * @model - * @generated - */ - int getMultiplicity(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getMultiplicity Multiplicity}' attribute. - * - * - * @param value the new value of the 'Multiplicity' attribute. - * @see #getMultiplicity() - * @generated - */ - void setMultiplicity(int value); - -} // ExactMultiplicity diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScopeDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScopeDefinition.java deleted file mode 100644 index 035329e2..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExactScopeDefinition.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Exact Scope Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition#getExactScope Exact Scope}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactScopeDefinition() - * @model - * @generated - */ -public interface ExactScopeDefinition extends ScopeDefinition { - /** - * Returns the value of the 'Exact Scope' attribute. - * - * - * @return the value of the 'Exact Scope' attribute. - * @see #setExactScope(int) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExactScopeDefinition_ExactScope() - * @model - * @generated - */ - int getExactScope(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition#getExactScope Exact Scope}' attribute. - * - * - * @param value the new value of the 'Exact Scope' attribute. - * @see #getExactScope() - * @generated - */ - void setExactScope(int value); - -} // ExactScopeDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java deleted file mode 100644 index 2034cdfd..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Expression.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Expression'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpression() - * @model abstract="true" - * @generated - */ -public interface Expression extends Statement { -} // Expression diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java deleted file mode 100644 index 26f6142e..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExpressionArgument.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Expression Argument'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getBody Body}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpressionArgument() - * @model - * @generated - */ -public interface ExpressionArgument extends Argument { - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExpressionArgument_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - -} // ExpressionArgument diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregatorDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregatorDefinition.java deleted file mode 100644 index eb6b8cdf..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternAggregatorDefinition.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Extern Aggregator Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getType Type}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getInputType Input Type}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregatorDefinition() - * @model - * @generated - */ -public interface ExternAggregatorDefinition extends Statement { - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregatorDefinition_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - - /** - * Returns the value of the 'Name' attribute. - * - * - * @return the value of the 'Name' attribute. - * @see #setName(String) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregatorDefinition_Name() - * @model - * @generated - */ - String getName(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getName Name}' attribute. - * - * - * @param value the new value of the 'Name' attribute. - * @see #getName() - * @generated - */ - void setName(String value); - - /** - * Returns the value of the 'Input Type' reference. - * - * - * @return the value of the 'Input Type' reference. - * @see #setInputType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternAggregatorDefinition_InputType() - * @model - * @generated - */ - NamedElement getInputType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getInputType Input Type}' reference. - * - * - * @param value the new value of the 'Input Type' reference. - * @see #getInputType() - * @generated - */ - void setInputType(NamedElement value); - -} // ExternAggregatorDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDefinition.java deleted file mode 100644 index a0fb33eb..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternDatatypeDefinition.java +++ /dev/null @@ -1,60 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Extern Datatype Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition#getSupertypes Supertypes}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDatatypeDefinition() - * @model - * @generated - */ -public interface ExternDatatypeDefinition extends Statement { - /** - * Returns the value of the 'Name' attribute. - * - * - * @return the value of the 'Name' attribute. - * @see #setName(String) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDatatypeDefinition_Name() - * @model - * @generated - */ - String getName(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition#getName Name}' attribute. - * - * - * @param value the new value of the 'Name' attribute. - * @see #getName() - * @generated - */ - void setName(String value); - - /** - * Returns the value of the 'Supertypes' reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.NamedElement}. - * - * - * @return the value of the 'Supertypes' reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternDatatypeDefinition_Supertypes() - * @model - * @generated - */ - EList getSupertypes(); - -} // ExternDatatypeDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternMetricDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternMetricDefinition.java deleted file mode 100644 index 45cac1e2..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternMetricDefinition.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Extern Metric Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getType Type}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getArgumentList Argument List}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternMetricDefinition() - * @model - * @generated - */ -public interface ExternMetricDefinition extends Statement { - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternMetricDefinition_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - - /** - * Returns the value of the 'Name' attribute. - * - * - * @return the value of the 'Name' attribute. - * @see #setName(String) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternMetricDefinition_Name() - * @model - * @generated - */ - String getName(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getName Name}' attribute. - * - * - * @param value the new value of the 'Name' attribute. - * @see #getName() - * @generated - */ - void setName(String value); - - /** - * Returns the value of the 'Argument List' containment reference. - * - * - * @return the value of the 'Argument List' containment reference. - * @see #setArgumentList(ArgumentList) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternMetricDefinition_ArgumentList() - * @model containment="true" - * @generated - */ - ArgumentList getArgumentList(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getArgumentList Argument List}' containment reference. - * - * - * @param value the new value of the 'Argument List' containment reference. - * @see #getArgumentList() - * @generated - */ - void setArgumentList(ArgumentList value); - -} // ExternMetricDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDefinition.java deleted file mode 100644 index 647f7b91..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ExternPredicateDefinition.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Extern Predicate Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition#getArgumentList Argument List}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternPredicateDefinition() - * @model - * @generated - */ -public interface ExternPredicateDefinition extends Statement { - /** - * Returns the value of the 'Name' attribute. - * - * - * @return the value of the 'Name' attribute. - * @see #setName(String) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternPredicateDefinition_Name() - * @model - * @generated - */ - String getName(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition#getName Name}' attribute. - * - * - * @param value the new value of the 'Name' attribute. - * @see #getName() - * @generated - */ - void setName(String value); - - /** - * Returns the value of the 'Argument List' containment reference. - * - * - * @return the value of the 'Argument List' containment reference. - * @see #setArgumentList(ArgumentList) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getExternPredicateDefinition_ArgumentList() - * @model containment="true" - * @generated - */ - ArgumentList getArgumentList(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition#getArgumentList Argument List}' containment reference. - * - * - * @param value the new value of the 'Argument List' containment reference. - * @see #getArgumentList() - * @generated - */ - void setArgumentList(ArgumentList value); - -} // ExternPredicateDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java deleted file mode 100644 index 45861d3e..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Functor.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Functor'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters Parameters}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctor() - * @model abstract="true" - * @generated - */ -public interface Functor extends NamedElement { - /** - * Returns the value of the 'Parameters' reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Variable}. - * - * - * @return the value of the 'Parameters' reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getFunctor_Parameters() - * @model - * @generated - */ - EList getParameters(); - -} // Functor diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/IfElse.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/IfElse.java deleted file mode 100644 index d32ca1e3..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/IfElse.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'If Else'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getThen Then}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getElse Else}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getCondition Condition}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIfElse() - * @model - * @generated - */ -public interface IfElse extends Expression { - /** - * Returns the value of the 'Then' containment reference. - * - * - * @return the value of the 'Then' containment reference. - * @see #setThen(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIfElse_Then() - * @model containment="true" - * @generated - */ - Expression getThen(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getThen Then}' containment reference. - * - * - * @param value the new value of the 'Then' containment reference. - * @see #getThen() - * @generated - */ - void setThen(Expression value); - - /** - * Returns the value of the 'Else' containment reference. - * - * - * @return the value of the 'Else' containment reference. - * @see #setElse(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIfElse_Else() - * @model containment="true" - * @generated - */ - Expression getElse(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getElse Else}' containment reference. - * - * - * @param value the new value of the 'Else' containment reference. - * @see #getElse() - * @generated - */ - void setElse(Expression value); - - /** - * Returns the value of the 'Condition' containment reference. - * - * - * @return the value of the 'Condition' containment reference. - * @see #setCondition(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getIfElse_Condition() - * @model containment="true" - * @generated - */ - Expression getCondition(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getCondition Condition}' containment reference. - * - * - * @param value the new value of the 'Condition' containment reference. - * @see #getCondition() - * @generated - */ - void setCondition(Expression value); - -} // IfElse diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java deleted file mode 100644 index 5a584019..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/InfinityLiteral.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Infinity Literal'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInfinityLiteral() - * @model - * @generated - */ -public interface InfinityLiteral extends Literal { -} // InfinityLiteral diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Interpretation.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Interpretation.java deleted file mode 100644 index 4d1b6b77..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Interpretation.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Interpretation'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation#getRange Range}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterpretation() - * @model - * @generated - */ -public interface Interpretation extends Statement { - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterpretation_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - - /** - * Returns the value of the 'Range' containment reference. - * - * - * @return the value of the 'Range' containment reference. - * @see #setRange(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterpretation_Range() - * @model containment="true" - * @generated - */ - Expression getRange(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation#getRange Range}' containment reference. - * - * - * @param value the new value of the 'Range' containment reference. - * @see #getRange() - * @generated - */ - void setRange(Expression value); - -} // Interpretation diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java deleted file mode 100644 index 39e4cbf3..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Interval.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Interval'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound Lower Bound}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound Upper Bound}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval() - * @model - * @generated - */ -public interface Interval extends Expression { - /** - * Returns the value of the 'Lower Bound' containment reference. - * - * - * @return the value of the 'Lower Bound' containment reference. - * @see #setLowerBound(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval_LowerBound() - * @model containment="true" - * @generated - */ - Expression getLowerBound(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound Lower Bound}' containment reference. - * - * - * @param value the new value of the 'Lower Bound' containment reference. - * @see #getLowerBound() - * @generated - */ - void setLowerBound(Expression value); - - /** - * Returns the value of the 'Upper Bound' containment reference. - * - * - * @return the value of the 'Upper Bound' containment reference. - * @see #setUpperBound(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getInterval_UpperBound() - * @model containment="true" - * @generated - */ - Expression getUpperBound(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound Upper Bound}' containment reference. - * - * - * @param value the new value of the 'Upper Bound' containment reference. - * @see #getUpperBound() - * @generated - */ - void setUpperBound(Expression value); - -} // Interval diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Let.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Let.java deleted file mode 100644 index d3e76c1e..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Let.java +++ /dev/null @@ -1,60 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Let'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Let#getBindings Bindings}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Let#getBody Body}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLet() - * @model - * @generated - */ -public interface Let extends Expression { - /** - * Returns the value of the 'Bindings' containment reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding}. - * - * - * @return the value of the 'Bindings' containment reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLet_Bindings() - * @model containment="true" - * @generated - */ - EList getBindings(); - - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLet_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Let#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - -} // Let diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java deleted file mode 100644 index f6569b11..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LetBinding.java +++ /dev/null @@ -1,70 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Let Binding'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable Variable}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue Value}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding() - * @model - * @generated - */ -public interface LetBinding extends EObject { - /** - * Returns the value of the 'Variable' containment reference. - * - * - * @return the value of the 'Variable' containment reference. - * @see #setVariable(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Variable() - * @model containment="true" - * @generated - */ - NamedElement getVariable(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable Variable}' containment reference. - * - * - * @param value the new value of the 'Variable' containment reference. - * @see #getVariable() - * @generated - */ - void setVariable(NamedElement value); - - /** - * Returns the value of the 'Value' containment reference. - * - * - * @return the value of the 'Value' containment reference. - * @see #setValue(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLetBinding_Value() - * @model containment="true" - * @generated - */ - Expression getValue(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue Value}' containment reference. - * - * - * @param value the new value of the 'Value' containment reference. - * @see #getValue() - * @generated - */ - void setValue(Expression value); - -} // LetBinding diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java deleted file mode 100644 index c7f7a31a..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Literal.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Literal'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLiteral() - * @model - * @generated - */ -public interface Literal extends Expression { -} // Literal diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LocalVariables.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LocalVariables.java deleted file mode 100644 index d5edda19..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LocalVariables.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Local Variables'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LocalVariables#getVariables Variables}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLocalVariables() - * @model - * @generated - */ -public interface LocalVariables extends EObject { - /** - * Returns the value of the 'Variables' containment reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.NamedElement}. - * - * - * @return the value of the 'Variables' containment reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLocalVariables_Variables() - * @model containment="true" - * @generated - */ - EList getVariables(); - -} // LocalVariables diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java deleted file mode 100644 index 8c60650b..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicLiteral.java +++ /dev/null @@ -1,49 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Logic Literal'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue Value}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicLiteral() - * @model - * @generated - */ -public interface LogicLiteral extends Literal { - /** - * Returns the value of the 'Value' attribute. - * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue}. - * - * - * @return the value of the 'Value' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue - * @see #setValue(LogicValue) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicLiteral_Value() - * @model - * @generated - */ - LogicValue getValue(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue Value}' attribute. - * - * - * @param value the new value of the 'Value' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue - * @see #getValue() - * @generated - */ - void setValue(LogicValue value); - -} // LogicLiteral diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java deleted file mode 100644 index 5f129c05..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LogicValue.java +++ /dev/null @@ -1,256 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.eclipse.emf.common.util.Enumerator; - -/** - * - * A representation of the literals of the enumeration 'Logic Value', - * and utility methods for working with them. - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLogicValue() - * @model - * @generated - */ -public enum LogicValue implements Enumerator { - /** - * The 'TRUE' literal object. - * - * - * @see #TRUE_VALUE - * @generated - * @ordered - */ - TRUE(0, "TRUE", "true"), - - /** - * The 'FALSE' literal object. - * - * - * @see #FALSE_VALUE - * @generated - * @ordered - */ - FALSE(1, "FALSE", "false"), - - /** - * The 'UNKNOWN' literal object. - * - * - * @see #UNKNOWN_VALUE - * @generated - * @ordered - */ - UNKNOWN(2, "UNKNOWN", "unknown"), - - /** - * The 'ERROR' literal object. - * - * - * @see #ERROR_VALUE - * @generated - * @ordered - */ - ERROR(3, "ERROR", "error"); - - /** - * The 'TRUE' literal value. - * - * - * @see #TRUE - * @model literal="true" - * @generated - * @ordered - */ - public static final int TRUE_VALUE = 0; - - /** - * The 'FALSE' literal value. - * - * - * @see #FALSE - * @model literal="false" - * @generated - * @ordered - */ - public static final int FALSE_VALUE = 1; - - /** - * The 'UNKNOWN' literal value. - * - * - * @see #UNKNOWN - * @model literal="unknown" - * @generated - * @ordered - */ - public static final int UNKNOWN_VALUE = 2; - - /** - * The 'ERROR' literal value. - * - * - * @see #ERROR - * @model literal="error" - * @generated - * @ordered - */ - public static final int ERROR_VALUE = 3; - - /** - * An array of all the 'Logic Value' enumerators. - * - * - * @generated - */ - private static final LogicValue[] VALUES_ARRAY = - new LogicValue[] { - TRUE, - FALSE, - UNKNOWN, - ERROR, - }; - - /** - * A public read-only list of all the 'Logic Value' enumerators. - * - * - * @generated - */ - public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); - - /** - * Returns the 'Logic Value' literal with the specified literal value. - * - * - * @param literal the literal. - * @return the matching enumerator or null. - * @generated - */ - public static LogicValue get(String literal) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - LogicValue result = VALUES_ARRAY[i]; - if (result.toString().equals(literal)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Logic Value' literal with the specified name. - * - * - * @param name the name. - * @return the matching enumerator or null. - * @generated - */ - public static LogicValue getByName(String name) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - LogicValue result = VALUES_ARRAY[i]; - if (result.getName().equals(name)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Logic Value' literal with the specified integer value. - * - * - * @param value the integer value. - * @return the matching enumerator or null. - * @generated - */ - public static LogicValue get(int value) { - switch (value) { - case TRUE_VALUE: return TRUE; - case FALSE_VALUE: return FALSE; - case UNKNOWN_VALUE: return UNKNOWN; - case ERROR_VALUE: return ERROR; - } - return null; - } - - /** - * - * - * @generated - */ - private final int value; - - /** - * - * - * @generated - */ - private final String name; - - /** - * - * - * @generated - */ - private final String literal; - - /** - * Only this class can construct instances. - * - * - * @generated - */ - private LogicValue(int value, String name, String literal) { - this.value = value; - this.name = name; - this.literal = literal; - } - - /** - * - * - * @generated - */ - @Override - public int getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public String getLiteral() { - return literal; - } - - /** - * Returns the literal value of the enumerator, which is its string representation. - * - * - * @generated - */ - @Override - public String toString() { - return literal; - } - -} //LogicValue diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScopeDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScopeDefinition.java deleted file mode 100644 index 1c1c6764..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/LowerBoundedScopeDefinition.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Lower Bounded Scope Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition#getLowerBound Lower Bound}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLowerBoundedScopeDefinition() - * @model - * @generated - */ -public interface LowerBoundedScopeDefinition extends ScopeDefinition { - /** - * Returns the value of the 'Lower Bound' attribute. - * - * - * @return the value of the 'Lower Bound' attribute. - * @see #setLowerBound(int) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getLowerBoundedScopeDefinition_LowerBound() - * @model - * @generated - */ - int getLowerBound(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition#getLowerBound Lower Bound}' attribute. - * - * - * @param value the new value of the 'Lower Bound' attribute. - * @see #getLowerBound() - * @generated - */ - void setLowerBound(int value); - -} // LowerBoundedScopeDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ManyMultiplicity.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ManyMultiplicity.java deleted file mode 100644 index 2d40f570..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ManyMultiplicity.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Many Multiplicity'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getManyMultiplicity() - * @model - * @generated - */ -public interface ManyMultiplicity extends Multiplicity { -} // ManyMultiplicity diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/MemberDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/MemberDefinition.java deleted file mode 100644 index 6a8d507e..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/MemberDefinition.java +++ /dev/null @@ -1,139 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Member Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#isContainment Containment}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getType Type}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getMultiplicity Multiplicity}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getOpposite Opposite}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition() - * @model - * @generated - */ -public interface MemberDefinition extends EObject { - /** - * Returns the value of the 'Containment' attribute. - * - * - * @return the value of the 'Containment' attribute. - * @see #setContainment(boolean) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Containment() - * @model - * @generated - */ - boolean isContainment(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#isContainment Containment}' attribute. - * - * - * @param value the new value of the 'Containment' attribute. - * @see #isContainment() - * @generated - */ - void setContainment(boolean value); - - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - - /** - * Returns the value of the 'Multiplicity' containment reference. - * - * - * @return the value of the 'Multiplicity' containment reference. - * @see #setMultiplicity(Multiplicity) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Multiplicity() - * @model containment="true" - * @generated - */ - Multiplicity getMultiplicity(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getMultiplicity Multiplicity}' containment reference. - * - * - * @param value the new value of the 'Multiplicity' containment reference. - * @see #getMultiplicity() - * @generated - */ - void setMultiplicity(Multiplicity value); - - /** - * Returns the value of the 'Name' attribute. - * - * - * @return the value of the 'Name' attribute. - * @see #setName(String) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Name() - * @model - * @generated - */ - String getName(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getName Name}' attribute. - * - * - * @param value the new value of the 'Name' attribute. - * @see #getName() - * @generated - */ - void setName(String value); - - /** - * Returns the value of the 'Opposite' reference. - * - * - * @return the value of the 'Opposite' reference. - * @see #setOpposite(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMemberDefinition_Opposite() - * @model - * @generated - */ - NamedElement getOpposite(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getOpposite Opposite}' reference. - * - * - * @param value the new value of the 'Opposite' reference. - * @see #getOpposite() - * @generated - */ - void setOpposite(NamedElement value); - -} // MemberDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java deleted file mode 100644 index 02724d03..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Metric.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Metric'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Metric#getReturnType Return Type}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetric() - * @model - * @generated - */ -public interface Metric extends Functor { - /** - * Returns the value of the 'Return Type' reference. - * - * - * @return the value of the 'Return Type' reference. - * @see #setReturnType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetric_ReturnType() - * @model - * @generated - */ - NamedElement getReturnType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Metric#getReturnType Return Type}' reference. - * - * - * @param value the new value of the 'Return Type' reference. - * @see #getReturnType() - * @generated - */ - void setReturnType(NamedElement value); - -} // Metric diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/MetricDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/MetricDefinition.java deleted file mode 100644 index fa86f55e..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/MetricDefinition.java +++ /dev/null @@ -1,92 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Metric Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getHead Head}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getType Type}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetricDefinition() - * @model - * @generated - */ -public interface MetricDefinition extends Statement { - /** - * Returns the value of the 'Head' containment reference. - * - * - * @return the value of the 'Head' containment reference. - * @see #setHead(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetricDefinition_Head() - * @model containment="true" - * @generated - */ - Expression getHead(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getHead Head}' containment reference. - * - * - * @param value the new value of the 'Head' containment reference. - * @see #getHead() - * @generated - */ - void setHead(Expression value); - - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetricDefinition_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMetricDefinition_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - -} // MetricDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java deleted file mode 100644 index 5b6f1306..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Multiplicity.java +++ /dev/null @@ -1,19 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Multiplicity'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getMultiplicity() - * @model - * @generated - */ -public interface Multiplicity extends EObject { -} // Multiplicity diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/NamedElement.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/NamedElement.java deleted file mode 100644 index 4daa21ab..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/NamedElement.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Named Element'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.NamedElement#getName Name}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNamedElement() - * @model - * @generated - */ -public interface NamedElement extends EObject { - /** - * Returns the value of the 'Name' attribute. - * - * - * @return the value of the 'Name' attribute. - * @see #setName(String) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNamedElement_Name() - * @model - * @generated - */ - String getName(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.NamedElement#getName Name}' attribute. - * - * - * @param value the new value of the 'Name' attribute. - * @see #getName() - * @generated - */ - void setName(String value); - -} // NamedElement diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java deleted file mode 100644 index f9c5d833..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Node.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Node'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Node#isWithId With Id}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNode() - * @model - * @generated - */ -public interface Node extends NamedElement { - /** - * Returns the value of the 'With Id' attribute. - * - * - * @return the value of the 'With Id' attribute. - * @see #setWithId(boolean) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNode_WithId() - * @model - * @generated - */ - boolean isWithId(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Node#isWithId With Id}' attribute. - * - * - * @param value the new value of the 'With Id' attribute. - * @see #isWithId() - * @generated - */ - void setWithId(boolean value); - -} // Node diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/NumericLiteral.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/NumericLiteral.java deleted file mode 100644 index dcefba48..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/NumericLiteral.java +++ /dev/null @@ -1,47 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import java.math.BigDecimal; - -/** - * - * A representation of the model object 'Numeric Literal'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral#getValue Value}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNumericLiteral() - * @model - * @generated - */ -public interface NumericLiteral extends Literal { - /** - * Returns the value of the 'Value' attribute. - * - * - * @return the value of the 'Value' attribute. - * @see #setValue(BigDecimal) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getNumericLiteral_Value() - * @model - * @generated - */ - BigDecimal getValue(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral#getValue Value}' attribute. - * - * - * @param value the new value of the 'Value' attribute. - * @see #getValue() - * @generated - */ - void setValue(BigDecimal value); - -} // NumericLiteral diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDefinition.java deleted file mode 100644 index ffd46d01..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveDefinition.java +++ /dev/null @@ -1,72 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Objective Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition#getKind Kind}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition#getObjective Objective}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDefinition() - * @model - * @generated - */ -public interface ObjectiveDefinition extends Statement { - /** - * Returns the value of the 'Kind' attribute. - * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind}. - * - * - * @return the value of the 'Kind' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind - * @see #setKind(ObjectiveKind) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDefinition_Kind() - * @model - * @generated - */ - ObjectiveKind getKind(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition#getKind Kind}' attribute. - * - * - * @param value the new value of the 'Kind' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind - * @see #getKind() - * @generated - */ - void setKind(ObjectiveKind value); - - /** - * Returns the value of the 'Objective' containment reference. - * - * - * @return the value of the 'Objective' containment reference. - * @see #setObjective(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveDefinition_Objective() - * @model containment="true" - * @generated - */ - Expression getObjective(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition#getObjective Objective}' containment reference. - * - * - * @param value the new value of the 'Objective' containment reference. - * @see #getObjective() - * @generated - */ - void setObjective(Expression value); - -} // ObjectiveDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java deleted file mode 100644 index 72f5947c..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ObjectiveKind.java +++ /dev/null @@ -1,210 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.eclipse.emf.common.util.Enumerator; - -/** - * - * A representation of the literals of the enumeration 'Objective Kind', - * and utility methods for working with them. - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getObjectiveKind() - * @model - * @generated - */ -public enum ObjectiveKind implements Enumerator { - /** - * The 'MINIMIZE' literal object. - * - * - * @see #MINIMIZE_VALUE - * @generated - * @ordered - */ - MINIMIZE(0, "MINIMIZE", "minimize"), - - /** - * The 'MAXIMIZE' literal object. - * - * - * @see #MAXIMIZE_VALUE - * @generated - * @ordered - */ - MAXIMIZE(1, "MAXIMIZE", "maximize"); - - /** - * The 'MINIMIZE' literal value. - * - * - * @see #MINIMIZE - * @model literal="minimize" - * @generated - * @ordered - */ - public static final int MINIMIZE_VALUE = 0; - - /** - * The 'MAXIMIZE' literal value. - * - * - * @see #MAXIMIZE - * @model literal="maximize" - * @generated - * @ordered - */ - public static final int MAXIMIZE_VALUE = 1; - - /** - * An array of all the 'Objective Kind' enumerators. - * - * - * @generated - */ - private static final ObjectiveKind[] VALUES_ARRAY = - new ObjectiveKind[] { - MINIMIZE, - MAXIMIZE, - }; - - /** - * A public read-only list of all the 'Objective Kind' enumerators. - * - * - * @generated - */ - public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); - - /** - * Returns the 'Objective Kind' literal with the specified literal value. - * - * - * @param literal the literal. - * @return the matching enumerator or null. - * @generated - */ - public static ObjectiveKind get(String literal) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - ObjectiveKind result = VALUES_ARRAY[i]; - if (result.toString().equals(literal)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Objective Kind' literal with the specified name. - * - * - * @param name the name. - * @return the matching enumerator or null. - * @generated - */ - public static ObjectiveKind getByName(String name) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - ObjectiveKind result = VALUES_ARRAY[i]; - if (result.getName().equals(name)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Objective Kind' literal with the specified integer value. - * - * - * @param value the integer value. - * @return the matching enumerator or null. - * @generated - */ - public static ObjectiveKind get(int value) { - switch (value) { - case MINIMIZE_VALUE: return MINIMIZE; - case MAXIMIZE_VALUE: return MAXIMIZE; - } - return null; - } - - /** - * - * - * @generated - */ - private final int value; - - /** - * - * - * @generated - */ - private final String name; - - /** - * - * - * @generated - */ - private final String literal; - - /** - * Only this class can construct instances. - * - * - * @generated - */ - private ObjectiveKind(int value, String name, String literal) { - this.value = value; - this.name = name; - this.literal = literal; - } - - /** - * - * - * @generated - */ - @Override - public int getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public String getLiteral() { - return literal; - } - - /** - * Returns the literal value of the enumerator, which is its string representation. - * - * - * @generated - */ - @Override - public String toString() { - return literal; - } - -} //ObjectiveKind diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java deleted file mode 100644 index cfeaa0f2..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Predicate.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Predicate'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicate() - * @model - * @generated - */ -public interface Predicate extends Functor { -} // Predicate diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java deleted file mode 100644 index ff248906..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/PredicateDefinition.java +++ /dev/null @@ -1,115 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Predicate Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#getHead Head}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#isFunctional Functional}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#isError Error}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateDefinition() - * @model - * @generated - */ -public interface PredicateDefinition extends Statement { - /** - * Returns the value of the 'Head' containment reference. - * - * - * @return the value of the 'Head' containment reference. - * @see #setHead(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateDefinition_Head() - * @model containment="true" - * @generated - */ - Expression getHead(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#getHead Head}' containment reference. - * - * - * @param value the new value of the 'Head' containment reference. - * @see #getHead() - * @generated - */ - void setHead(Expression value); - - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateDefinition_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - - /** - * Returns the value of the 'Functional' attribute. - * - * - * @return the value of the 'Functional' attribute. - * @see #setFunctional(boolean) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateDefinition_Functional() - * @model - * @generated - */ - boolean isFunctional(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#isFunctional Functional}' attribute. - * - * - * @param value the new value of the 'Functional' attribute. - * @see #isFunctional() - * @generated - */ - void setFunctional(boolean value); - - /** - * Returns the value of the 'Error' attribute. - * - * - * @return the value of the 'Error' attribute. - * @see #setError(boolean) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getPredicateDefinition_Error() - * @model - * @generated - */ - boolean isError(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#isError Error}' attribute. - * - * - * @param value the new value of the 'Error' attribute. - * @see #isError() - * @generated - */ - void setError(boolean value); - -} // PredicateDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java deleted file mode 100644 index 56fac081..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Problem.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Problem'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements Statements}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem() - * @model - * @generated - */ -public interface Problem extends EObject { - /** - * Returns the value of the 'Statements' containment reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Statement}. - * - * - * @return the value of the 'Statements' containment reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getProblem_Statements() - * @model containment="true" - * @generated - */ - EList getStatements(); - -} // Problem diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/QuantifiedExpression.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/QuantifiedExpression.java deleted file mode 100644 index 0b2edb36..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/QuantifiedExpression.java +++ /dev/null @@ -1,95 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Quantified Expression'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getLocalVariables Local Variables}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getQuantifier Quantifier}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getQuantifiedExpression() - * @model - * @generated - */ -public interface QuantifiedExpression extends Expression { - /** - * Returns the value of the 'Local Variables' containment reference. - * - * - * @return the value of the 'Local Variables' containment reference. - * @see #setLocalVariables(LocalVariables) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getQuantifiedExpression_LocalVariables() - * @model containment="true" - * @generated - */ - LocalVariables getLocalVariables(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getLocalVariables Local Variables}' containment reference. - * - * - * @param value the new value of the 'Local Variables' containment reference. - * @see #getLocalVariables() - * @generated - */ - void setLocalVariables(LocalVariables value); - - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getQuantifiedExpression_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - - /** - * Returns the value of the 'Quantifier' attribute. - * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.Quantifier}. - * - * - * @return the value of the 'Quantifier' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.Quantifier - * @see #setQuantifier(Quantifier) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getQuantifiedExpression_Quantifier() - * @model - * @generated - */ - Quantifier getQuantifier(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getQuantifier Quantifier}' attribute. - * - * - * @param value the new value of the 'Quantifier' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.Quantifier - * @see #getQuantifier() - * @generated - */ - void setQuantifier(Quantifier value); - -} // QuantifiedExpression diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Quantifier.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Quantifier.java deleted file mode 100644 index 4c674fe0..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Quantifier.java +++ /dev/null @@ -1,233 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.eclipse.emf.common.util.Enumerator; - -/** - * - * A representation of the literals of the enumeration 'Quantifier', - * and utility methods for working with them. - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getQuantifier() - * @model - * @generated - */ -public enum Quantifier implements Enumerator { - /** - * The 'EXISTS' literal object. - * - * - * @see #EXISTS_VALUE - * @generated - * @ordered - */ - EXISTS(0, "EXISTS", "EXISTS"), - - /** - * The 'FORALL' literal object. - * - * - * @see #FORALL_VALUE - * @generated - * @ordered - */ - FORALL(1, "FORALL", "FORALL"), - - /** - * The 'COUNT' literal object. - * - * - * @see #COUNT_VALUE - * @generated - * @ordered - */ - COUNT(2, "COUNT", "COUNT"); - - /** - * The 'EXISTS' literal value. - * - * - * @see #EXISTS - * @model - * @generated - * @ordered - */ - public static final int EXISTS_VALUE = 0; - - /** - * The 'FORALL' literal value. - * - * - * @see #FORALL - * @model - * @generated - * @ordered - */ - public static final int FORALL_VALUE = 1; - - /** - * The 'COUNT' literal value. - * - * - * @see #COUNT - * @model - * @generated - * @ordered - */ - public static final int COUNT_VALUE = 2; - - /** - * An array of all the 'Quantifier' enumerators. - * - * - * @generated - */ - private static final Quantifier[] VALUES_ARRAY = - new Quantifier[] { - EXISTS, - FORALL, - COUNT, - }; - - /** - * A public read-only list of all the 'Quantifier' enumerators. - * - * - * @generated - */ - public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); - - /** - * Returns the 'Quantifier' literal with the specified literal value. - * - * - * @param literal the literal. - * @return the matching enumerator or null. - * @generated - */ - public static Quantifier get(String literal) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - Quantifier result = VALUES_ARRAY[i]; - if (result.toString().equals(literal)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Quantifier' literal with the specified name. - * - * - * @param name the name. - * @return the matching enumerator or null. - * @generated - */ - public static Quantifier getByName(String name) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - Quantifier result = VALUES_ARRAY[i]; - if (result.getName().equals(name)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Quantifier' literal with the specified integer value. - * - * - * @param value the integer value. - * @return the matching enumerator or null. - * @generated - */ - public static Quantifier get(int value) { - switch (value) { - case EXISTS_VALUE: return EXISTS; - case FORALL_VALUE: return FORALL; - case COUNT_VALUE: return COUNT; - } - return null; - } - - /** - * - * - * @generated - */ - private final int value; - - /** - * - * - * @generated - */ - private final String name; - - /** - * - * - * @generated - */ - private final String literal; - - /** - * Only this class can construct instances. - * - * - * @generated - */ - private Quantifier(int value, String name, String literal) { - this.value = value; - this.name = name; - this.literal = literal; - } - - /** - * - * - * @generated - */ - @Override - public int getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public String getLiteral() { - return literal; - } - - /** - * Returns the literal value of the enumerator, which is its string representation. - * - * - * @generated - */ - @Override - public String toString() { - return literal; - } - -} //Quantifier diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java deleted file mode 100644 index 5fd43f34..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Reference.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Reference'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Reference#getReferred Referred}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getReference() - * @model - * @generated - */ -public interface Reference extends Expression { - /** - * Returns the value of the 'Referred' reference. - * - * - * @return the value of the 'Referred' reference. - * @see #setReferred(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getReference_Referred() - * @model - * @generated - */ - NamedElement getReferred(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference#getReferred Referred}' reference. - * - * - * @param value the new value of the 'Referred' reference. - * @see #getReferred() - * @generated - */ - void setReferred(NamedElement value); - -} // Reference diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDefinition.java deleted file mode 100644 index 6cd03ef0..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/ScopeDefinition.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Scope Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition#getType Type}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getScopeDefinition() - * @model - * @generated - */ -public interface ScopeDefinition extends Statement { - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getScopeDefinition_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - -} // ScopeDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java deleted file mode 100644 index 6589eaa4..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguageFactory.java +++ /dev/null @@ -1,538 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.ecore.EFactory; - -/** - * - * The Factory for the model. - * It provides a create method for each non-abstract class of the model. - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage - * @generated - */ -public interface SolverLanguageFactory extends EFactory { - /** - * The singleton instance of the factory. - * - * - * @generated - */ - SolverLanguageFactory eINSTANCE = org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguageFactoryImpl.init(); - - /** - * Returns a new object of class 'Problem'. - * - * - * @return a new object of class 'Problem'. - * @generated - */ - Problem createProblem(); - - /** - * Returns a new object of class 'Statement'. - * - * - * @return a new object of class 'Statement'. - * @generated - */ - Statement createStatement(); - - /** - * Returns a new object of class 'Predicate Definition'. - * - * - * @return a new object of class 'Predicate Definition'. - * @generated - */ - PredicateDefinition createPredicateDefinition(); - - /** - * Returns a new object of class 'Unnamed Error Prediate Definition'. - * - * - * @return a new object of class 'Unnamed Error Prediate Definition'. - * @generated - */ - UnnamedErrorPrediateDefinition createUnnamedErrorPrediateDefinition(); - - /** - * Returns a new object of class 'Default Definition'. - * - * - * @return a new object of class 'Default Definition'. - * @generated - */ - DefaultDefinition createDefaultDefinition(); - - /** - * Returns a new object of class 'Metric Definition'. - * - * - * @return a new object of class 'Metric Definition'. - * @generated - */ - MetricDefinition createMetricDefinition(); - - /** - * Returns a new object of class 'Extern Predicate Definition'. - * - * - * @return a new object of class 'Extern Predicate Definition'. - * @generated - */ - ExternPredicateDefinition createExternPredicateDefinition(); - - /** - * Returns a new object of class 'Extern Metric Definition'. - * - * - * @return a new object of class 'Extern Metric Definition'. - * @generated - */ - ExternMetricDefinition createExternMetricDefinition(); - - /** - * Returns a new object of class 'Extern Aggregator Definition'. - * - * - * @return a new object of class 'Extern Aggregator Definition'. - * @generated - */ - ExternAggregatorDefinition createExternAggregatorDefinition(); - - /** - * Returns a new object of class 'Extern Datatype Definition'. - * - * - * @return a new object of class 'Extern Datatype Definition'. - * @generated - */ - ExternDatatypeDefinition createExternDatatypeDefinition(); - - /** - * Returns a new object of class 'Named Element'. - * - * - * @return a new object of class 'Named Element'. - * @generated - */ - NamedElement createNamedElement(); - - /** - * Returns a new object of class 'If Else'. - * - * - * @return a new object of class 'If Else'. - * @generated - */ - IfElse createIfElse(); - - /** - * Returns a new object of class 'Let'. - * - * - * @return a new object of class 'Let'. - * @generated - */ - Let createLet(); - - /** - * Returns a new object of class 'Let Binding'. - * - * - * @return a new object of class 'Let Binding'. - * @generated - */ - LetBinding createLetBinding(); - - /** - * Returns a new object of class 'Case'. - * - * - * @return a new object of class 'Case'. - * @generated - */ - Case createCase(); - - /** - * Returns a new object of class 'Local Variables'. - * - * - * @return a new object of class 'Local Variables'. - * @generated - */ - LocalVariables createLocalVariables(); - - /** - * Returns a new object of class 'Quantified Expression'. - * - * - * @return a new object of class 'Quantified Expression'. - * @generated - */ - QuantifiedExpression createQuantifiedExpression(); - - /** - * Returns a new object of class 'Aggregation'. - * - * - * @return a new object of class 'Aggregation'. - * @generated - */ - Aggregation createAggregation(); - - /** - * Returns a new object of class 'Call'. - * - * - * @return a new object of class 'Call'. - * @generated - */ - Call createCall(); - - /** - * Returns a new object of class 'Argument List'. - * - * - * @return a new object of class 'Argument List'. - * @generated - */ - ArgumentList createArgumentList(); - - /** - * Returns a new object of class 'Argument'. - * - * - * @return a new object of class 'Argument'. - * @generated - */ - Argument createArgument(); - - /** - * Returns a new object of class 'Expression Argument'. - * - * - * @return a new object of class 'Expression Argument'. - * @generated - */ - ExpressionArgument createExpressionArgument(); - - /** - * Returns a new object of class 'Star Argument'. - * - * - * @return a new object of class 'Star Argument'. - * @generated - */ - StarArgument createStarArgument(); - - /** - * Returns a new object of class 'Typed Argument'. - * - * - * @return a new object of class 'Typed Argument'. - * @generated - */ - TypedArgument createTypedArgument(); - - /** - * Returns a new object of class 'Typed Star Argument'. - * - * - * @return a new object of class 'Typed Star Argument'. - * @generated - */ - TypedStarArgument createTypedStarArgument(); - - /** - * Returns a new object of class 'Reference'. - * - * - * @return a new object of class 'Reference'. - * @generated - */ - Reference createReference(); - - /** - * Returns a new object of class 'Interval'. - * - * - * @return a new object of class 'Interval'. - * @generated - */ - Interval createInterval(); - - /** - * Returns a new object of class 'Literal'. - * - * - * @return a new object of class 'Literal'. - * @generated - */ - Literal createLiteral(); - - /** - * Returns a new object of class 'Logic Literal'. - * - * - * @return a new object of class 'Logic Literal'. - * @generated - */ - LogicLiteral createLogicLiteral(); - - /** - * Returns a new object of class 'Numeric Literal'. - * - * - * @return a new object of class 'Numeric Literal'. - * @generated - */ - NumericLiteral createNumericLiteral(); - - /** - * Returns a new object of class 'Infinity Literal'. - * - * - * @return a new object of class 'Infinity Literal'. - * @generated - */ - InfinityLiteral createInfinityLiteral(); - - /** - * Returns a new object of class 'Empty Interval Literal'. - * - * - * @return a new object of class 'Empty Interval Literal'. - * @generated - */ - EmptyIntervalLiteral createEmptyIntervalLiteral(); - - /** - * Returns a new object of class 'String Literal'. - * - * - * @return a new object of class 'String Literal'. - * @generated - */ - StringLiteral createStringLiteral(); - - /** - * Returns a new object of class 'Class Definition'. - * - * - * @return a new object of class 'Class Definition'. - * @generated - */ - ClassDefinition createClassDefinition(); - - /** - * Returns a new object of class 'Member Definition'. - * - * - * @return a new object of class 'Member Definition'. - * @generated - */ - MemberDefinition createMemberDefinition(); - - /** - * Returns a new object of class 'Multiplicity'. - * - * - * @return a new object of class 'Multiplicity'. - * @generated - */ - Multiplicity createMultiplicity(); - - /** - * Returns a new object of class 'Many Multiplicity'. - * - * - * @return a new object of class 'Many Multiplicity'. - * @generated - */ - ManyMultiplicity createManyMultiplicity(); - - /** - * Returns a new object of class 'Exact Multiplicity'. - * - * - * @return a new object of class 'Exact Multiplicity'. - * @generated - */ - ExactMultiplicity createExactMultiplicity(); - - /** - * Returns a new object of class 'Bounded Multiplicity'. - * - * - * @return a new object of class 'Bounded Multiplicity'. - * @generated - */ - BoundedMultiplicity createBoundedMultiplicity(); - - /** - * Returns a new object of class 'Scope Definition'. - * - * - * @return a new object of class 'Scope Definition'. - * @generated - */ - ScopeDefinition createScopeDefinition(); - - /** - * Returns a new object of class 'Exact Scope Definition'. - * - * - * @return a new object of class 'Exact Scope Definition'. - * @generated - */ - ExactScopeDefinition createExactScopeDefinition(); - - /** - * Returns a new object of class 'Bounded Scope Definition'. - * - * - * @return a new object of class 'Bounded Scope Definition'. - * @generated - */ - BoundedScopeDefinition createBoundedScopeDefinition(); - - /** - * Returns a new object of class 'Lower Bounded Scope Definition'. - * - * - * @return a new object of class 'Lower Bounded Scope Definition'. - * @generated - */ - LowerBoundedScopeDefinition createLowerBoundedScopeDefinition(); - - /** - * Returns a new object of class 'Objective Definition'. - * - * - * @return a new object of class 'Objective Definition'. - * @generated - */ - ObjectiveDefinition createObjectiveDefinition(); - - /** - * Returns a new object of class 'Interpretation'. - * - * - * @return a new object of class 'Interpretation'. - * @generated - */ - Interpretation createInterpretation(); - - /** - * Returns a new object of class 'Variable'. - * - * - * @return a new object of class 'Variable'. - * @generated - */ - Variable createVariable(); - - /** - * Returns a new object of class 'Disjunction'. - * - * - * @return a new object of class 'Disjunction'. - * @generated - */ - Disjunction createDisjunction(); - - /** - * Returns a new object of class 'Switch'. - * - * - * @return a new object of class 'Switch'. - * @generated - */ - Switch createSwitch(); - - /** - * Returns a new object of class 'Conjunction'. - * - * - * @return a new object of class 'Conjunction'. - * @generated - */ - Conjunction createConjunction(); - - /** - * Returns a new object of class 'Comparison'. - * - * - * @return a new object of class 'Comparison'. - * @generated - */ - Comparison createComparison(); - - /** - * Returns a new object of class 'Binary Expression'. - * - * - * @return a new object of class 'Binary Expression'. - * @generated - */ - BinaryExpression createBinaryExpression(); - - /** - * Returns a new object of class 'Cast Expression'. - * - * - * @return a new object of class 'Cast Expression'. - * @generated - */ - CastExpression createCastExpression(); - - /** - * Returns a new object of class 'Unary Expression'. - * - * - * @return a new object of class 'Unary Expression'. - * @generated - */ - UnaryExpression createUnaryExpression(); - - /** - * Returns a new object of class 'Node'. - * - * - * @return a new object of class 'Node'. - * @generated - */ - Node createNode(); - - /** - * Returns a new object of class 'Predicate'. - * - * - * @return a new object of class 'Predicate'. - * @generated - */ - Predicate createPredicate(); - - /** - * Returns a new object of class 'Metric'. - * - * - * @return a new object of class 'Metric'. - * @generated - */ - Metric createMetric(); - - /** - * Returns the package supported by this factory. - * - * - * @return the package supported by this factory. - * @generated - */ - SolverLanguagePackage getSolverLanguagePackage(); - -} //SolverLanguageFactory diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java deleted file mode 100644 index 9e01d8db..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/SolverLanguagePackage.java +++ /dev/null @@ -1,5191 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.ecore.EAttribute; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EEnum; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.EReference; - -/** - * - * The Package for the model. - * It contains accessors for the meta objects to represent - *
    - *
  • each class,
  • - *
  • each feature of each class,
  • - *
  • each enum,
  • - *
  • and each data type
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory - * @model kind="package" - * @generated - */ -public interface SolverLanguagePackage extends EPackage { - /** - * The package name. - * - * - * @generated - */ - String eNAME = "solverLanguage"; - - /** - * The package namespace URI. - * - * - * @generated - */ - String eNS_URI = "http://www.eclipse.org/viatra/solver/language/SolverLanguage"; - - /** - * The package namespace name. - * - * - * @generated - */ - String eNS_PREFIX = "solverLanguage"; - - /** - * The singleton instance of the package. - * - * - * @generated - */ - SolverLanguagePackage eINSTANCE = org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl.init(); - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl Problem}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getProblem() - * @generated - */ - int PROBLEM = 0; - - /** - * The feature id for the 'Statements' containment reference list. - * - * - * @generated - * @ordered - */ - int PROBLEM__STATEMENTS = 0; - - /** - * The number of structural features of the 'Problem' class. - * - * - * @generated - * @ordered - */ - int PROBLEM_FEATURE_COUNT = 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl Statement}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStatement() - * @generated - */ - int STATEMENT = 1; - - /** - * The number of structural features of the 'Statement' class. - * - * - * @generated - * @ordered - */ - int STATEMENT_FEATURE_COUNT = 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl Predicate Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicateDefinition() - * @generated - */ - int PREDICATE_DEFINITION = 2; - - /** - * The feature id for the 'Head' containment reference. - * - * - * @generated - * @ordered - */ - int PREDICATE_DEFINITION__HEAD = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int PREDICATE_DEFINITION__BODY = STATEMENT_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Functional' attribute. - * - * - * @generated - * @ordered - */ - int PREDICATE_DEFINITION__FUNCTIONAL = STATEMENT_FEATURE_COUNT + 2; - - /** - * The feature id for the 'Error' attribute. - * - * - * @generated - * @ordered - */ - int PREDICATE_DEFINITION__ERROR = STATEMENT_FEATURE_COUNT + 3; - - /** - * The number of structural features of the 'Predicate Definition' class. - * - * - * @generated - * @ordered - */ - int PREDICATE_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 4; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPrediateDefinitionImpl Unnamed Error Prediate Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPrediateDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnnamedErrorPrediateDefinition() - * @generated - */ - int UNNAMED_ERROR_PREDIATE_DEFINITION = 3; - - /** - * The feature id for the 'Argument List' containment reference. - * - * - * @generated - * @ordered - */ - int UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int UNNAMED_ERROR_PREDIATE_DEFINITION__BODY = STATEMENT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Unnamed Error Prediate Definition' class. - * - * - * @generated - * @ordered - */ - int UNNAMED_ERROR_PREDIATE_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultDefinitionImpl Default Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDefaultDefinition() - * @generated - */ - int DEFAULT_DEFINITION = 4; - - /** - * The feature id for the 'Head' containment reference. - * - * - * @generated - * @ordered - */ - int DEFAULT_DEFINITION__HEAD = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Range' containment reference. - * - * - * @generated - * @ordered - */ - int DEFAULT_DEFINITION__RANGE = STATEMENT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Default Definition' class. - * - * - * @generated - * @ordered - */ - int DEFAULT_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricDefinitionImpl Metric Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MetricDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMetricDefinition() - * @generated - */ - int METRIC_DEFINITION = 5; - - /** - * The feature id for the 'Head' containment reference. - * - * - * @generated - * @ordered - */ - int METRIC_DEFINITION__HEAD = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int METRIC_DEFINITION__BODY = STATEMENT_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int METRIC_DEFINITION__TYPE = STATEMENT_FEATURE_COUNT + 2; - - /** - * The number of structural features of the 'Metric Definition' class. - * - * - * @generated - * @ordered - */ - int METRIC_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 3; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDefinitionImpl Extern Predicate Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternPredicateDefinition() - * @generated - */ - int EXTERN_PREDICATE_DEFINITION = 6; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int EXTERN_PREDICATE_DEFINITION__NAME = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Argument List' containment reference. - * - * - * @generated - * @ordered - */ - int EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST = STATEMENT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Extern Predicate Definition' class. - * - * - * @generated - * @ordered - */ - int EXTERN_PREDICATE_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternMetricDefinitionImpl Extern Metric Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternMetricDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternMetricDefinition() - * @generated - */ - int EXTERN_METRIC_DEFINITION = 7; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int EXTERN_METRIC_DEFINITION__TYPE = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int EXTERN_METRIC_DEFINITION__NAME = STATEMENT_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Argument List' containment reference. - * - * - * @generated - * @ordered - */ - int EXTERN_METRIC_DEFINITION__ARGUMENT_LIST = STATEMENT_FEATURE_COUNT + 2; - - /** - * The number of structural features of the 'Extern Metric Definition' class. - * - * - * @generated - * @ordered - */ - int EXTERN_METRIC_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 3; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregatorDefinitionImpl Extern Aggregator Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregatorDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternAggregatorDefinition() - * @generated - */ - int EXTERN_AGGREGATOR_DEFINITION = 8; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int EXTERN_AGGREGATOR_DEFINITION__TYPE = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int EXTERN_AGGREGATOR_DEFINITION__NAME = STATEMENT_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Input Type' reference. - * - * - * @generated - * @ordered - */ - int EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE = STATEMENT_FEATURE_COUNT + 2; - - /** - * The number of structural features of the 'Extern Aggregator Definition' class. - * - * - * @generated - * @ordered - */ - int EXTERN_AGGREGATOR_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 3; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDefinitionImpl Extern Datatype Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDatatypeDefinition() - * @generated - */ - int EXTERN_DATATYPE_DEFINITION = 9; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int EXTERN_DATATYPE_DEFINITION__NAME = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Supertypes' reference list. - * - * - * @generated - * @ordered - */ - int EXTERN_DATATYPE_DEFINITION__SUPERTYPES = STATEMENT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Extern Datatype Definition' class. - * - * - * @generated - * @ordered - */ - int EXTERN_DATATYPE_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamedElementImpl Named Element}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NamedElementImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNamedElement() - * @generated - */ - int NAMED_ELEMENT = 10; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int NAMED_ELEMENT__NAME = 0; - - /** - * The number of structural features of the 'Named Element' class. - * - * - * @generated - * @ordered - */ - int NAMED_ELEMENT_FEATURE_COUNT = 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpression() - * @generated - */ - int EXPRESSION = 11; - - /** - * The number of structural features of the 'Expression' class. - * - * - * @generated - * @ordered - */ - int EXPRESSION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IfElseImpl If Else}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IfElseImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIfElse() - * @generated - */ - int IF_ELSE = 12; - - /** - * The feature id for the 'Then' containment reference. - * - * - * @generated - * @ordered - */ - int IF_ELSE__THEN = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Else' containment reference. - * - * - * @generated - * @ordered - */ - int IF_ELSE__ELSE = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Condition' containment reference. - * - * - * @generated - * @ordered - */ - int IF_ELSE__CONDITION = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The number of structural features of the 'If Else' class. - * - * - * @generated - * @ordered - */ - int IF_ELSE_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetImpl Let}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLet() - * @generated - */ - int LET = 13; - - /** - * The feature id for the 'Bindings' containment reference list. - * - * - * @generated - * @ordered - */ - int LET__BINDINGS = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int LET__BODY = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Let' class. - * - * - * @generated - * @ordered - */ - int LET_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl Let Binding}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetBinding() - * @generated - */ - int LET_BINDING = 14; - - /** - * The feature id for the 'Variable' containment reference. - * - * - * @generated - * @ordered - */ - int LET_BINDING__VARIABLE = 0; - - /** - * The feature id for the 'Value' containment reference. - * - * - * @generated - * @ordered - */ - int LET_BINDING__VALUE = 1; - - /** - * The number of structural features of the 'Let Binding' class. - * - * - * @generated - * @ordered - */ - int LET_BINDING_FEATURE_COUNT = 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl Case}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCase() - * @generated - */ - int CASE = 15; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int CASE__BODY = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Condition' containment reference. - * - * - * @generated - * @ordered - */ - int CASE__CONDITION = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Case' class. - * - * - * @generated - * @ordered - */ - int CASE_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LocalVariablesImpl Local Variables}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LocalVariablesImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLocalVariables() - * @generated - */ - int LOCAL_VARIABLES = 16; - - /** - * The feature id for the 'Variables' containment reference list. - * - * - * @generated - * @ordered - */ - int LOCAL_VARIABLES__VARIABLES = 0; - - /** - * The number of structural features of the 'Local Variables' class. - * - * - * @generated - * @ordered - */ - int LOCAL_VARIABLES_FEATURE_COUNT = 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.QuantifiedExpressionImpl Quantified Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.QuantifiedExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getQuantifiedExpression() - * @generated - */ - int QUANTIFIED_EXPRESSION = 17; - - /** - * The feature id for the 'Local Variables' containment reference. - * - * - * @generated - * @ordered - */ - int QUANTIFIED_EXPRESSION__LOCAL_VARIABLES = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int QUANTIFIED_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Quantifier' attribute. - * - * - * @generated - * @ordered - */ - int QUANTIFIED_EXPRESSION__QUANTIFIER = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The number of structural features of the 'Quantified Expression' class. - * - * - * @generated - * @ordered - */ - int QUANTIFIED_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl Aggregation}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregation() - * @generated - */ - int AGGREGATION = 18; - - /** - * The feature id for the 'Op' reference. - * - * - * @generated - * @ordered - */ - int AGGREGATION__OP = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Local Variables' containment reference. - * - * - * @generated - * @ordered - */ - int AGGREGATION__LOCAL_VARIABLES = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int AGGREGATION__BODY = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The feature id for the 'Condition' containment reference. - * - * - * @generated - * @ordered - */ - int AGGREGATION__CONDITION = EXPRESSION_FEATURE_COUNT + 3; - - /** - * The number of structural features of the 'Aggregation' class. - * - * - * @generated - * @ordered - */ - int AGGREGATION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 4; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl Call}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCall() - * @generated - */ - int CALL = 19; - - /** - * The feature id for the 'Functor' containment reference. - * - * - * @generated - * @ordered - */ - int CALL__FUNCTOR = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Transitive Closure' attribute. - * - * - * @generated - * @ordered - */ - int CALL__TRANSITIVE_CLOSURE = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Reflexive Transitive Closure' attribute. - * - * - * @generated - * @ordered - */ - int CALL__REFLEXIVE_TRANSITIVE_CLOSURE = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The feature id for the 'Argument List' containment reference. - * - * - * @generated - * @ordered - */ - int CALL__ARGUMENT_LIST = EXPRESSION_FEATURE_COUNT + 3; - - /** - * The number of structural features of the 'Call' class. - * - * - * @generated - * @ordered - */ - int CALL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 4; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl Argument List}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgumentList() - * @generated - */ - int ARGUMENT_LIST = 20; - - /** - * The feature id for the 'Arguments' containment reference list. - * - * - * @generated - * @ordered - */ - int ARGUMENT_LIST__ARGUMENTS = 0; - - /** - * The number of structural features of the 'Argument List' class. - * - * - * @generated - * @ordered - */ - int ARGUMENT_LIST_FEATURE_COUNT = 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgument() - * @generated - */ - int ARGUMENT = 21; - - /** - * The number of structural features of the 'Argument' class. - * - * - * @generated - * @ordered - */ - int ARGUMENT_FEATURE_COUNT = 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl Expression Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpressionArgument() - * @generated - */ - int EXPRESSION_ARGUMENT = 22; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int EXPRESSION_ARGUMENT__BODY = ARGUMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Expression Argument' class. - * - * - * @generated - * @ordered - */ - int EXPRESSION_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl Star Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStarArgument() - * @generated - */ - int STAR_ARGUMENT = 23; - - /** - * The number of structural features of the 'Star Argument' class. - * - * - * @generated - * @ordered - */ - int STAR_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl Typed Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedArgument() - * @generated - */ - int TYPED_ARGUMENT = 24; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int TYPED_ARGUMENT__TYPE = ARGUMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Variable' reference. - * - * - * @generated - * @ordered - */ - int TYPED_ARGUMENT__VARIABLE = ARGUMENT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Typed Argument' class. - * - * - * @generated - * @ordered - */ - int TYPED_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl Typed Star Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedStarArgument() - * @generated - */ - int TYPED_STAR_ARGUMENT = 25; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int TYPED_STAR_ARGUMENT__TYPE = ARGUMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Typed Star Argument' class. - * - * - * @generated - * @ordered - */ - int TYPED_STAR_ARGUMENT_FEATURE_COUNT = ARGUMENT_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl Reference}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getReference() - * @generated - */ - int REFERENCE = 26; - - /** - * The feature id for the 'Referred' reference. - * - * - * @generated - * @ordered - */ - int REFERENCE__REFERRED = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Reference' class. - * - * - * @generated - * @ordered - */ - int REFERENCE_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl Interval}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterval() - * @generated - */ - int INTERVAL = 27; - - /** - * The feature id for the 'Lower Bound' containment reference. - * - * - * @generated - * @ordered - */ - int INTERVAL__LOWER_BOUND = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Upper Bound' containment reference. - * - * - * @generated - * @ordered - */ - int INTERVAL__UPPER_BOUND = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Interval' class. - * - * - * @generated - * @ordered - */ - int INTERVAL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLiteral() - * @generated - */ - int LITERAL = 28; - - /** - * The number of structural features of the 'Literal' class. - * - * - * @generated - * @ordered - */ - int LITERAL_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl Logic Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicLiteral() - * @generated - */ - int LOGIC_LITERAL = 29; - - /** - * The feature id for the 'Value' attribute. - * - * - * @generated - * @ordered - */ - int LOGIC_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Logic Literal' class. - * - * - * @generated - * @ordered - */ - int LOGIC_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NumericLiteralImpl Numeric Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NumericLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNumericLiteral() - * @generated - */ - int NUMERIC_LITERAL = 30; - - /** - * The feature id for the 'Value' attribute. - * - * - * @generated - * @ordered - */ - int NUMERIC_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Numeric Literal' class. - * - * - * @generated - * @ordered - */ - int NUMERIC_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl Infinity Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInfinityLiteral() - * @generated - */ - int INFINITY_LITERAL = 31; - - /** - * The number of structural features of the 'Infinity Literal' class. - * - * - * @generated - * @ordered - */ - int INFINITY_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyIntervalLiteralImpl Empty Interval Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyIntervalLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEmptyIntervalLiteral() - * @generated - */ - int EMPTY_INTERVAL_LITERAL = 32; - - /** - * The number of structural features of the 'Empty Interval Literal' class. - * - * - * @generated - * @ordered - */ - int EMPTY_INTERVAL_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl String Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringLiteral() - * @generated - */ - int STRING_LITERAL = 33; - - /** - * The feature id for the 'Value' attribute. - * - * - * @generated - * @ordered - */ - int STRING_LITERAL__VALUE = LITERAL_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'String Literal' class. - * - * - * @generated - * @ordered - */ - int STRING_LITERAL_FEATURE_COUNT = LITERAL_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDefinitionImpl Class Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClassDefinition() - * @generated - */ - int CLASS_DEFINITION = 34; - - /** - * The feature id for the 'Abstract' attribute. - * - * - * @generated - * @ordered - */ - int CLASS_DEFINITION__ABSTRACT = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int CLASS_DEFINITION__NAME = STATEMENT_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Superclasses' reference list. - * - * - * @generated - * @ordered - */ - int CLASS_DEFINITION__SUPERCLASSES = STATEMENT_FEATURE_COUNT + 2; - - /** - * The feature id for the 'Members' containment reference list. - * - * - * @generated - * @ordered - */ - int CLASS_DEFINITION__MEMBERS = STATEMENT_FEATURE_COUNT + 3; - - /** - * The number of structural features of the 'Class Definition' class. - * - * - * @generated - * @ordered - */ - int CLASS_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 4; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl Member Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMemberDefinition() - * @generated - */ - int MEMBER_DEFINITION = 35; - - /** - * The feature id for the 'Containment' attribute. - * - * - * @generated - * @ordered - */ - int MEMBER_DEFINITION__CONTAINMENT = 0; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int MEMBER_DEFINITION__TYPE = 1; - - /** - * The feature id for the 'Multiplicity' containment reference. - * - * - * @generated - * @ordered - */ - int MEMBER_DEFINITION__MULTIPLICITY = 2; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int MEMBER_DEFINITION__NAME = 3; - - /** - * The feature id for the 'Opposite' reference. - * - * - * @generated - * @ordered - */ - int MEMBER_DEFINITION__OPPOSITE = 4; - - /** - * The number of structural features of the 'Member Definition' class. - * - * - * @generated - * @ordered - */ - int MEMBER_DEFINITION_FEATURE_COUNT = 5; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl Multiplicity}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiplicity() - * @generated - */ - int MULTIPLICITY = 36; - - /** - * The number of structural features of the 'Multiplicity' class. - * - * - * @generated - * @ordered - */ - int MULTIPLICITY_FEATURE_COUNT = 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ManyMultiplicityImpl Many Multiplicity}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ManyMultiplicityImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getManyMultiplicity() - * @generated - */ - int MANY_MULTIPLICITY = 37; - - /** - * The number of structural features of the 'Many Multiplicity' class. - * - * - * @generated - * @ordered - */ - int MANY_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl Exact Multiplicity}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactMultiplicity() - * @generated - */ - int EXACT_MULTIPLICITY = 38; - - /** - * The feature id for the 'Multiplicity' attribute. - * - * - * @generated - * @ordered - */ - int EXACT_MULTIPLICITY__MULTIPLICITY = MULTIPLICITY_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Exact Multiplicity' class. - * - * - * @generated - * @ordered - */ - int EXACT_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl Bounded Multiplicity}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedMultiplicity() - * @generated - */ - int BOUNDED_MULTIPLICITY = 39; - - /** - * The feature id for the 'Lower Bound' attribute. - * - * - * @generated - * @ordered - */ - int BOUNDED_MULTIPLICITY__LOWER_BOUND = MULTIPLICITY_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Upper Bound' attribute. - * - * - * @generated - * @ordered - */ - int BOUNDED_MULTIPLICITY__UPPER_BOUND = MULTIPLICITY_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Bounded Multiplicity' class. - * - * - * @generated - * @ordered - */ - int BOUNDED_MULTIPLICITY_FEATURE_COUNT = MULTIPLICITY_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDefinitionImpl Scope Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getScopeDefinition() - * @generated - */ - int SCOPE_DEFINITION = 40; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int SCOPE_DEFINITION__TYPE = STATEMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Scope Definition' class. - * - * - * @generated - * @ordered - */ - int SCOPE_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeDefinitionImpl Exact Scope Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactScopeDefinition() - * @generated - */ - int EXACT_SCOPE_DEFINITION = 41; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int EXACT_SCOPE_DEFINITION__TYPE = SCOPE_DEFINITION__TYPE; - - /** - * The feature id for the 'Exact Scope' attribute. - * - * - * @generated - * @ordered - */ - int EXACT_SCOPE_DEFINITION__EXACT_SCOPE = SCOPE_DEFINITION_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Exact Scope Definition' class. - * - * - * @generated - * @ordered - */ - int EXACT_SCOPE_DEFINITION_FEATURE_COUNT = SCOPE_DEFINITION_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeDefinitionImpl Bounded Scope Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedScopeDefinition() - * @generated - */ - int BOUNDED_SCOPE_DEFINITION = 42; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int BOUNDED_SCOPE_DEFINITION__TYPE = SCOPE_DEFINITION__TYPE; - - /** - * The feature id for the 'Lower Bound' attribute. - * - * - * @generated - * @ordered - */ - int BOUNDED_SCOPE_DEFINITION__LOWER_BOUND = SCOPE_DEFINITION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Upper Bound' attribute. - * - * - * @generated - * @ordered - */ - int BOUNDED_SCOPE_DEFINITION__UPPER_BOUND = SCOPE_DEFINITION_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Bounded Scope Definition' class. - * - * - * @generated - * @ordered - */ - int BOUNDED_SCOPE_DEFINITION_FEATURE_COUNT = SCOPE_DEFINITION_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeDefinitionImpl Lower Bounded Scope Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLowerBoundedScopeDefinition() - * @generated - */ - int LOWER_BOUNDED_SCOPE_DEFINITION = 43; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int LOWER_BOUNDED_SCOPE_DEFINITION__TYPE = SCOPE_DEFINITION__TYPE; - - /** - * The feature id for the 'Lower Bound' attribute. - * - * - * @generated - * @ordered - */ - int LOWER_BOUNDED_SCOPE_DEFINITION__LOWER_BOUND = SCOPE_DEFINITION_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Lower Bounded Scope Definition' class. - * - * - * @generated - * @ordered - */ - int LOWER_BOUNDED_SCOPE_DEFINITION_FEATURE_COUNT = SCOPE_DEFINITION_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDefinitionImpl Objective Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveDefinition() - * @generated - */ - int OBJECTIVE_DEFINITION = 44; - - /** - * The feature id for the 'Kind' attribute. - * - * - * @generated - * @ordered - */ - int OBJECTIVE_DEFINITION__KIND = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Objective' containment reference. - * - * - * @generated - * @ordered - */ - int OBJECTIVE_DEFINITION__OBJECTIVE = STATEMENT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Objective Definition' class. - * - * - * @generated - * @ordered - */ - int OBJECTIVE_DEFINITION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl Interpretation}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterpretation() - * @generated - */ - int INTERPRETATION = 45; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int INTERPRETATION__BODY = STATEMENT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Range' containment reference. - * - * - * @generated - * @ordered - */ - int INTERPRETATION__RANGE = STATEMENT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Interpretation' class. - * - * - * @generated - * @ordered - */ - int INTERPRETATION_FEATURE_COUNT = STATEMENT_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl Variable}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getVariable() - * @generated - */ - int VARIABLE = 46; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int VARIABLE__NAME = NAMED_ELEMENT__NAME; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int VARIABLE__TYPE = NAMED_ELEMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Variable' class. - * - * - * @generated - * @ordered - */ - int VARIABLE_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl Disjunction}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDisjunction() - * @generated - */ - int DISJUNCTION = 47; - - /** - * The feature id for the 'Children' containment reference list. - * - * - * @generated - * @ordered - */ - int DISJUNCTION__CHILDREN = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Disjunction' class. - * - * - * @generated - * @ordered - */ - int DISJUNCTION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl Switch}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSwitch() - * @generated - */ - int SWITCH = 48; - - /** - * The feature id for the 'Cases' containment reference list. - * - * - * @generated - * @ordered - */ - int SWITCH__CASES = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Switch' class. - * - * - * @generated - * @ordered - */ - int SWITCH_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl Conjunction}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConjunction() - * @generated - */ - int CONJUNCTION = 49; - - /** - * The feature id for the 'Children' containment reference list. - * - * - * @generated - * @ordered - */ - int CONJUNCTION__CHILDREN = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Conjunction' class. - * - * - * @generated - * @ordered - */ - int CONJUNCTION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ComparisonImpl Comparison}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ComparisonImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getComparison() - * @generated - */ - int COMPARISON = 50; - - /** - * The feature id for the 'Left' containment reference. - * - * - * @generated - * @ordered - */ - int COMPARISON__LEFT = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Op' attribute. - * - * - * @generated - * @ordered - */ - int COMPARISON__OP = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Right' containment reference. - * - * - * @generated - * @ordered - */ - int COMPARISON__RIGHT = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The number of structural features of the 'Comparison' class. - * - * - * @generated - * @ordered - */ - int COMPARISON_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl Binary Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryExpression() - * @generated - */ - int BINARY_EXPRESSION = 51; - - /** - * The feature id for the 'Left' containment reference. - * - * - * @generated - * @ordered - */ - int BINARY_EXPRESSION__LEFT = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Op' attribute. - * - * - * @generated - * @ordered - */ - int BINARY_EXPRESSION__OP = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Right' containment reference. - * - * - * @generated - * @ordered - */ - int BINARY_EXPRESSION__RIGHT = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The number of structural features of the 'Binary Expression' class. - * - * - * @generated - * @ordered - */ - int BINARY_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 3; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl Cast Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCastExpression() - * @generated - */ - int CAST_EXPRESSION = 52; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int CAST_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Type' reference. - * - * - * @generated - * @ordered - */ - int CAST_EXPRESSION__TYPE = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Cast Expression' class. - * - * - * @generated - * @ordered - */ - int CAST_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl Unary Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryExpression() - * @generated - */ - int UNARY_EXPRESSION = 53; - - /** - * The feature id for the 'Op' attribute. - * - * - * @generated - * @ordered - */ - int UNARY_EXPRESSION__OP = EXPRESSION_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Body' containment reference. - * - * - * @generated - * @ordered - */ - int UNARY_EXPRESSION__BODY = EXPRESSION_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'Unary Expression' class. - * - * - * @generated - * @ordered - */ - int UNARY_EXPRESSION_FEATURE_COUNT = EXPRESSION_FEATURE_COUNT + 2; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl Node}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNode() - * @generated - */ - int NODE = 54; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int NODE__NAME = NAMED_ELEMENT__NAME; - - /** - * The feature id for the 'With Id' attribute. - * - * - * @generated - * @ordered - */ - int NODE__WITH_ID = NAMED_ELEMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Node' class. - * - * - * @generated - * @ordered - */ - int NODE_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl Functor}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctor() - * @generated - */ - int FUNCTOR = 55; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int FUNCTOR__NAME = NAMED_ELEMENT__NAME; - - /** - * The feature id for the 'Parameters' reference list. - * - * - * @generated - * @ordered - */ - int FUNCTOR__PARAMETERS = NAMED_ELEMENT_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Functor' class. - * - * - * @generated - * @ordered - */ - int FUNCTOR_FEATURE_COUNT = NAMED_ELEMENT_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl Predicate}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicate() - * @generated - */ - int PREDICATE = 56; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int PREDICATE__NAME = FUNCTOR__NAME; - - /** - * The feature id for the 'Parameters' reference list. - * - * - * @generated - * @ordered - */ - int PREDICATE__PARAMETERS = FUNCTOR__PARAMETERS; - - /** - * The number of structural features of the 'Predicate' class. - * - * - * @generated - * @ordered - */ - int PREDICATE_FEATURE_COUNT = FUNCTOR_FEATURE_COUNT + 0; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl Metric}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMetric() - * @generated - */ - int METRIC = 57; - - /** - * The feature id for the 'Name' attribute. - * - * - * @generated - * @ordered - */ - int METRIC__NAME = FUNCTOR__NAME; - - /** - * The feature id for the 'Parameters' reference list. - * - * - * @generated - * @ordered - */ - int METRIC__PARAMETERS = FUNCTOR__PARAMETERS; - - /** - * The feature id for the 'Return Type' reference. - * - * - * @generated - * @ordered - */ - int METRIC__RETURN_TYPE = FUNCTOR_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'Metric' class. - * - * - * @generated - * @ordered - */ - int METRIC_FEATURE_COUNT = FUNCTOR_FEATURE_COUNT + 1; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator Binary Operator}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryOperator() - * @generated - */ - int BINARY_OPERATOR = 58; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOp Unary Op}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOp - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryOp() - * @generated - */ - int UNARY_OP = 59; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue Logic Value}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicValue() - * @generated - */ - int LOGIC_VALUE = 60; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind Objective Kind}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveKind() - * @generated - */ - int OBJECTIVE_KIND = 61; - - /** - * The meta object id for the '{@link org.eclipse.viatra.solver.language.solverLanguage.Quantifier Quantifier}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.Quantifier - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getQuantifier() - * @generated - */ - int QUANTIFIER = 62; - - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem Problem}'. - * - * - * @return the meta object for class 'Problem'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Problem - * @generated - */ - EClass getProblem(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements Statements}'. - * - * - * @return the meta object for the containment reference list 'Statements'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Problem#getStatements() - * @see #getProblem() - * @generated - */ - EReference getProblem_Statements(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Statement Statement}'. - * - * - * @return the meta object for class 'Statement'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Statement - * @generated - */ - EClass getStatement(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition Predicate Definition}'. - * - * - * @return the meta object for class 'Predicate Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition - * @generated - */ - EClass getPredicateDefinition(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#getHead Head}'. - * - * - * @return the meta object for the containment reference 'Head'. - * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#getHead() - * @see #getPredicateDefinition() - * @generated - */ - EReference getPredicateDefinition_Head(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#getBody() - * @see #getPredicateDefinition() - * @generated - */ - EReference getPredicateDefinition_Body(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#isFunctional Functional}'. - * - * - * @return the meta object for the attribute 'Functional'. - * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#isFunctional() - * @see #getPredicateDefinition() - * @generated - */ - EAttribute getPredicateDefinition_Functional(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#isError Error}'. - * - * - * @return the meta object for the attribute 'Error'. - * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition#isError() - * @see #getPredicateDefinition() - * @generated - */ - EAttribute getPredicateDefinition_Error(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition Unnamed Error Prediate Definition}'. - * - * - * @return the meta object for class 'Unnamed Error Prediate Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition - * @generated - */ - EClass getUnnamedErrorPrediateDefinition(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition#getArgumentList Argument List}'. - * - * - * @return the meta object for the containment reference 'Argument List'. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition#getArgumentList() - * @see #getUnnamedErrorPrediateDefinition() - * @generated - */ - EReference getUnnamedErrorPrediateDefinition_ArgumentList(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition#getBody() - * @see #getUnnamedErrorPrediateDefinition() - * @generated - */ - EReference getUnnamedErrorPrediateDefinition_Body(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition Default Definition}'. - * - * - * @return the meta object for class 'Default Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition - * @generated - */ - EClass getDefaultDefinition(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition#getHead Head}'. - * - * - * @return the meta object for the containment reference 'Head'. - * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition#getHead() - * @see #getDefaultDefinition() - * @generated - */ - EReference getDefaultDefinition_Head(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition#getRange Range}'. - * - * - * @return the meta object for the containment reference 'Range'. - * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition#getRange() - * @see #getDefaultDefinition() - * @generated - */ - EReference getDefaultDefinition_Range(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition Metric Definition}'. - * - * - * @return the meta object for class 'Metric Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition - * @generated - */ - EClass getMetricDefinition(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getHead Head}'. - * - * - * @return the meta object for the containment reference 'Head'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getHead() - * @see #getMetricDefinition() - * @generated - */ - EReference getMetricDefinition_Head(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getBody() - * @see #getMetricDefinition() - * @generated - */ - EReference getMetricDefinition_Body(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition#getType() - * @see #getMetricDefinition() - * @generated - */ - EReference getMetricDefinition_Type(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition Extern Predicate Definition}'. - * - * - * @return the meta object for class 'Extern Predicate Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition - * @generated - */ - EClass getExternPredicateDefinition(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition#getName Name}'. - * - * - * @return the meta object for the attribute 'Name'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition#getName() - * @see #getExternPredicateDefinition() - * @generated - */ - EAttribute getExternPredicateDefinition_Name(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition#getArgumentList Argument List}'. - * - * - * @return the meta object for the containment reference 'Argument List'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition#getArgumentList() - * @see #getExternPredicateDefinition() - * @generated - */ - EReference getExternPredicateDefinition_ArgumentList(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition Extern Metric Definition}'. - * - * - * @return the meta object for class 'Extern Metric Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition - * @generated - */ - EClass getExternMetricDefinition(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getType() - * @see #getExternMetricDefinition() - * @generated - */ - EReference getExternMetricDefinition_Type(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getName Name}'. - * - * - * @return the meta object for the attribute 'Name'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getName() - * @see #getExternMetricDefinition() - * @generated - */ - EAttribute getExternMetricDefinition_Name(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getArgumentList Argument List}'. - * - * - * @return the meta object for the containment reference 'Argument List'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition#getArgumentList() - * @see #getExternMetricDefinition() - * @generated - */ - EReference getExternMetricDefinition_ArgumentList(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition Extern Aggregator Definition}'. - * - * - * @return the meta object for class 'Extern Aggregator Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition - * @generated - */ - EClass getExternAggregatorDefinition(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getType() - * @see #getExternAggregatorDefinition() - * @generated - */ - EReference getExternAggregatorDefinition_Type(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getName Name}'. - * - * - * @return the meta object for the attribute 'Name'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getName() - * @see #getExternAggregatorDefinition() - * @generated - */ - EAttribute getExternAggregatorDefinition_Name(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getInputType Input Type}'. - * - * - * @return the meta object for the reference 'Input Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition#getInputType() - * @see #getExternAggregatorDefinition() - * @generated - */ - EReference getExternAggregatorDefinition_InputType(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition Extern Datatype Definition}'. - * - * - * @return the meta object for class 'Extern Datatype Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition - * @generated - */ - EClass getExternDatatypeDefinition(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition#getName Name}'. - * - * - * @return the meta object for the attribute 'Name'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition#getName() - * @see #getExternDatatypeDefinition() - * @generated - */ - EAttribute getExternDatatypeDefinition_Name(); - - /** - * Returns the meta object for the reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition#getSupertypes Supertypes}'. - * - * - * @return the meta object for the reference list 'Supertypes'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition#getSupertypes() - * @see #getExternDatatypeDefinition() - * @generated - */ - EReference getExternDatatypeDefinition_Supertypes(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.NamedElement Named Element}'. - * - * - * @return the meta object for class 'Named Element'. - * @see org.eclipse.viatra.solver.language.solverLanguage.NamedElement - * @generated - */ - EClass getNamedElement(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.NamedElement#getName Name}'. - * - * - * @return the meta object for the attribute 'Name'. - * @see org.eclipse.viatra.solver.language.solverLanguage.NamedElement#getName() - * @see #getNamedElement() - * @generated - */ - EAttribute getNamedElement_Name(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Expression Expression}'. - * - * - * @return the meta object for class 'Expression'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Expression - * @generated - */ - EClass getExpression(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.IfElse If Else}'. - * - * - * @return the meta object for class 'If Else'. - * @see org.eclipse.viatra.solver.language.solverLanguage.IfElse - * @generated - */ - EClass getIfElse(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getThen Then}'. - * - * - * @return the meta object for the containment reference 'Then'. - * @see org.eclipse.viatra.solver.language.solverLanguage.IfElse#getThen() - * @see #getIfElse() - * @generated - */ - EReference getIfElse_Then(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getElse Else}'. - * - * - * @return the meta object for the containment reference 'Else'. - * @see org.eclipse.viatra.solver.language.solverLanguage.IfElse#getElse() - * @see #getIfElse() - * @generated - */ - EReference getIfElse_Else(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.IfElse#getCondition Condition}'. - * - * - * @return the meta object for the containment reference 'Condition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.IfElse#getCondition() - * @see #getIfElse() - * @generated - */ - EReference getIfElse_Condition(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Let Let}'. - * - * - * @return the meta object for class 'Let'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Let - * @generated - */ - EClass getLet(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Let#getBindings Bindings}'. - * - * - * @return the meta object for the containment reference list 'Bindings'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Let#getBindings() - * @see #getLet() - * @generated - */ - EReference getLet_Bindings(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Let#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Let#getBody() - * @see #getLet() - * @generated - */ - EReference getLet_Body(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding Let Binding}'. - * - * - * @return the meta object for class 'Let Binding'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding - * @generated - */ - EClass getLetBinding(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable Variable}'. - * - * - * @return the meta object for the containment reference 'Variable'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getVariable() - * @see #getLetBinding() - * @generated - */ - EReference getLetBinding_Variable(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue Value}'. - * - * - * @return the meta object for the containment reference 'Value'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding#getValue() - * @see #getLetBinding() - * @generated - */ - EReference getLetBinding_Value(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Case Case}'. - * - * - * @return the meta object for class 'Case'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Case - * @generated - */ - EClass getCase(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Case#getBody() - * @see #getCase() - * @generated - */ - EReference getCase_Body(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition Condition}'. - * - * - * @return the meta object for the containment reference 'Condition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Case#getCondition() - * @see #getCase() - * @generated - */ - EReference getCase_Condition(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LocalVariables Local Variables}'. - * - * - * @return the meta object for class 'Local Variables'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LocalVariables - * @generated - */ - EClass getLocalVariables(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.LocalVariables#getVariables Variables}'. - * - * - * @return the meta object for the containment reference list 'Variables'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LocalVariables#getVariables() - * @see #getLocalVariables() - * @generated - */ - EReference getLocalVariables_Variables(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression Quantified Expression}'. - * - * - * @return the meta object for class 'Quantified Expression'. - * @see org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression - * @generated - */ - EClass getQuantifiedExpression(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getLocalVariables Local Variables}'. - * - * - * @return the meta object for the containment reference 'Local Variables'. - * @see org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getLocalVariables() - * @see #getQuantifiedExpression() - * @generated - */ - EReference getQuantifiedExpression_LocalVariables(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getBody() - * @see #getQuantifiedExpression() - * @generated - */ - EReference getQuantifiedExpression_Body(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getQuantifier Quantifier}'. - * - * - * @return the meta object for the attribute 'Quantifier'. - * @see org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression#getQuantifier() - * @see #getQuantifiedExpression() - * @generated - */ - EAttribute getQuantifiedExpression_Quantifier(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation Aggregation}'. - * - * - * @return the meta object for class 'Aggregation'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation - * @generated - */ - EClass getAggregation(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp Op}'. - * - * - * @return the meta object for the reference 'Op'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getOp() - * @see #getAggregation() - * @generated - */ - EReference getAggregation_Op(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getLocalVariables Local Variables}'. - * - * - * @return the meta object for the containment reference 'Local Variables'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getLocalVariables() - * @see #getAggregation() - * @generated - */ - EReference getAggregation_LocalVariables(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getBody() - * @see #getAggregation() - * @generated - */ - EReference getAggregation_Body(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getCondition Condition}'. - * - * - * @return the meta object for the containment reference 'Condition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation#getCondition() - * @see #getAggregation() - * @generated - */ - EReference getAggregation_Condition(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Call Call}'. - * - * - * @return the meta object for class 'Call'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Call - * @generated - */ - EClass getCall(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor Functor}'. - * - * - * @return the meta object for the containment reference 'Functor'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Call#getFunctor() - * @see #getCall() - * @generated - */ - EReference getCall_Functor(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#isTransitiveClosure Transitive Closure}'. - * - * - * @return the meta object for the attribute 'Transitive Closure'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Call#isTransitiveClosure() - * @see #getCall() - * @generated - */ - EAttribute getCall_TransitiveClosure(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#isReflexiveTransitiveClosure Reflexive Transitive Closure}'. - * - * - * @return the meta object for the attribute 'Reflexive Transitive Closure'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Call#isReflexiveTransitiveClosure() - * @see #getCall() - * @generated - */ - EAttribute getCall_ReflexiveTransitiveClosure(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList Argument List}'. - * - * - * @return the meta object for the containment reference 'Argument List'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Call#getArgumentList() - * @see #getCall() - * @generated - */ - EReference getCall_ArgumentList(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList Argument List}'. - * - * - * @return the meta object for class 'Argument List'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList - * @generated - */ - EClass getArgumentList(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments Arguments}'. - * - * - * @return the meta object for the containment reference list 'Arguments'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList#getArguments() - * @see #getArgumentList() - * @generated - */ - EReference getArgumentList_Arguments(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Argument Argument}'. - * - * - * @return the meta object for class 'Argument'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Argument - * @generated - */ - EClass getArgument(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument Expression Argument}'. - * - * - * @return the meta object for class 'Expression Argument'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument - * @generated - */ - EClass getExpressionArgument(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument#getBody() - * @see #getExpressionArgument() - * @generated - */ - EReference getExpressionArgument_Body(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.StarArgument Star Argument}'. - * - * - * @return the meta object for class 'Star Argument'. - * @see org.eclipse.viatra.solver.language.solverLanguage.StarArgument - * @generated - */ - EClass getStarArgument(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument Typed Argument}'. - * - * - * @return the meta object for class 'Typed Argument'. - * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument - * @generated - */ - EClass getTypedArgument(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getType() - * @see #getTypedArgument() - * @generated - */ - EReference getTypedArgument_Type(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getVariable Variable}'. - * - * - * @return the meta object for the reference 'Variable'. - * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getVariable() - * @see #getTypedArgument() - * @generated - */ - EReference getTypedArgument_Variable(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument Typed Star Argument}'. - * - * - * @return the meta object for class 'Typed Star Argument'. - * @see org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument - * @generated - */ - EClass getTypedStarArgument(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument#getType() - * @see #getTypedStarArgument() - * @generated - */ - EReference getTypedStarArgument_Type(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference Reference}'. - * - * - * @return the meta object for class 'Reference'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Reference - * @generated - */ - EClass getReference(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference#getReferred Referred}'. - * - * - * @return the meta object for the reference 'Referred'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Reference#getReferred() - * @see #getReference() - * @generated - */ - EReference getReference_Referred(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval Interval}'. - * - * - * @return the meta object for class 'Interval'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Interval - * @generated - */ - EClass getInterval(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound Lower Bound}'. - * - * - * @return the meta object for the containment reference 'Lower Bound'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Interval#getLowerBound() - * @see #getInterval() - * @generated - */ - EReference getInterval_LowerBound(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound Upper Bound}'. - * - * - * @return the meta object for the containment reference 'Upper Bound'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Interval#getUpperBound() - * @see #getInterval() - * @generated - */ - EReference getInterval_UpperBound(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Literal Literal}'. - * - * - * @return the meta object for class 'Literal'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Literal - * @generated - */ - EClass getLiteral(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral Logic Literal}'. - * - * - * @return the meta object for class 'Logic Literal'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral - * @generated - */ - EClass getLogicLiteral(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue Value}'. - * - * - * @return the meta object for the attribute 'Value'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral#getValue() - * @see #getLogicLiteral() - * @generated - */ - EAttribute getLogicLiteral_Value(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral Numeric Literal}'. - * - * - * @return the meta object for class 'Numeric Literal'. - * @see org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral - * @generated - */ - EClass getNumericLiteral(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral#getValue Value}'. - * - * - * @return the meta object for the attribute 'Value'. - * @see org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral#getValue() - * @see #getNumericLiteral() - * @generated - */ - EAttribute getNumericLiteral_Value(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral Infinity Literal}'. - * - * - * @return the meta object for class 'Infinity Literal'. - * @see org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral - * @generated - */ - EClass getInfinityLiteral(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral Empty Interval Literal}'. - * - * - * @return the meta object for class 'Empty Interval Literal'. - * @see org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral - * @generated - */ - EClass getEmptyIntervalLiteral(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral String Literal}'. - * - * - * @return the meta object for class 'String Literal'. - * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral - * @generated - */ - EClass getStringLiteral(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue Value}'. - * - * - * @return the meta object for the attribute 'Value'. - * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue() - * @see #getStringLiteral() - * @generated - */ - EAttribute getStringLiteral_Value(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition Class Definition}'. - * - * - * @return the meta object for class 'Class Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition - * @generated - */ - EClass getClassDefinition(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#isAbstract Abstract}'. - * - * - * @return the meta object for the attribute 'Abstract'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#isAbstract() - * @see #getClassDefinition() - * @generated - */ - EAttribute getClassDefinition_Abstract(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getName Name}'. - * - * - * @return the meta object for the attribute 'Name'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getName() - * @see #getClassDefinition() - * @generated - */ - EAttribute getClassDefinition_Name(); - - /** - * Returns the meta object for the reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getSuperclasses Superclasses}'. - * - * - * @return the meta object for the reference list 'Superclasses'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getSuperclasses() - * @see #getClassDefinition() - * @generated - */ - EReference getClassDefinition_Superclasses(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getMembers Members}'. - * - * - * @return the meta object for the containment reference list 'Members'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition#getMembers() - * @see #getClassDefinition() - * @generated - */ - EReference getClassDefinition_Members(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition Member Definition}'. - * - * - * @return the meta object for class 'Member Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition - * @generated - */ - EClass getMemberDefinition(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#isContainment Containment}'. - * - * - * @return the meta object for the attribute 'Containment'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#isContainment() - * @see #getMemberDefinition() - * @generated - */ - EAttribute getMemberDefinition_Containment(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getType() - * @see #getMemberDefinition() - * @generated - */ - EReference getMemberDefinition_Type(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getMultiplicity Multiplicity}'. - * - * - * @return the meta object for the containment reference 'Multiplicity'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getMultiplicity() - * @see #getMemberDefinition() - * @generated - */ - EReference getMemberDefinition_Multiplicity(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getName Name}'. - * - * - * @return the meta object for the attribute 'Name'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getName() - * @see #getMemberDefinition() - * @generated - */ - EAttribute getMemberDefinition_Name(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getOpposite Opposite}'. - * - * - * @return the meta object for the reference 'Opposite'. - * @see org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition#getOpposite() - * @see #getMemberDefinition() - * @generated - */ - EReference getMemberDefinition_Opposite(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Multiplicity Multiplicity}'. - * - * - * @return the meta object for class 'Multiplicity'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Multiplicity - * @generated - */ - EClass getMultiplicity(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity Many Multiplicity}'. - * - * - * @return the meta object for class 'Many Multiplicity'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity - * @generated - */ - EClass getManyMultiplicity(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity Exact Multiplicity}'. - * - * - * @return the meta object for class 'Exact Multiplicity'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity - * @generated - */ - EClass getExactMultiplicity(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getMultiplicity Multiplicity}'. - * - * - * @return the meta object for the attribute 'Multiplicity'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity#getMultiplicity() - * @see #getExactMultiplicity() - * @generated - */ - EAttribute getExactMultiplicity_Multiplicity(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity Bounded Multiplicity}'. - * - * - * @return the meta object for class 'Bounded Multiplicity'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity - * @generated - */ - EClass getBoundedMultiplicity(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound Lower Bound}'. - * - * - * @return the meta object for the attribute 'Lower Bound'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getLowerBound() - * @see #getBoundedMultiplicity() - * @generated - */ - EAttribute getBoundedMultiplicity_LowerBound(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound Upper Bound}'. - * - * - * @return the meta object for the attribute 'Upper Bound'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity#getUpperBound() - * @see #getBoundedMultiplicity() - * @generated - */ - EAttribute getBoundedMultiplicity_UpperBound(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition Scope Definition}'. - * - * - * @return the meta object for class 'Scope Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition - * @generated - */ - EClass getScopeDefinition(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition#getType() - * @see #getScopeDefinition() - * @generated - */ - EReference getScopeDefinition_Type(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition Exact Scope Definition}'. - * - * - * @return the meta object for class 'Exact Scope Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition - * @generated - */ - EClass getExactScopeDefinition(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition#getExactScope Exact Scope}'. - * - * - * @return the meta object for the attribute 'Exact Scope'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition#getExactScope() - * @see #getExactScopeDefinition() - * @generated - */ - EAttribute getExactScopeDefinition_ExactScope(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition Bounded Scope Definition}'. - * - * - * @return the meta object for class 'Bounded Scope Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition - * @generated - */ - EClass getBoundedScopeDefinition(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition#getLowerBound Lower Bound}'. - * - * - * @return the meta object for the attribute 'Lower Bound'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition#getLowerBound() - * @see #getBoundedScopeDefinition() - * @generated - */ - EAttribute getBoundedScopeDefinition_LowerBound(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition#getUpperBound Upper Bound}'. - * - * - * @return the meta object for the attribute 'Upper Bound'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition#getUpperBound() - * @see #getBoundedScopeDefinition() - * @generated - */ - EAttribute getBoundedScopeDefinition_UpperBound(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition Lower Bounded Scope Definition}'. - * - * - * @return the meta object for class 'Lower Bounded Scope Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition - * @generated - */ - EClass getLowerBoundedScopeDefinition(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition#getLowerBound Lower Bound}'. - * - * - * @return the meta object for the attribute 'Lower Bound'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition#getLowerBound() - * @see #getLowerBoundedScopeDefinition() - * @generated - */ - EAttribute getLowerBoundedScopeDefinition_LowerBound(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition Objective Definition}'. - * - * - * @return the meta object for class 'Objective Definition'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition - * @generated - */ - EClass getObjectiveDefinition(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition#getKind Kind}'. - * - * - * @return the meta object for the attribute 'Kind'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition#getKind() - * @see #getObjectiveDefinition() - * @generated - */ - EAttribute getObjectiveDefinition_Kind(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition#getObjective Objective}'. - * - * - * @return the meta object for the containment reference 'Objective'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition#getObjective() - * @see #getObjectiveDefinition() - * @generated - */ - EReference getObjectiveDefinition_Objective(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation Interpretation}'. - * - * - * @return the meta object for class 'Interpretation'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Interpretation - * @generated - */ - EClass getInterpretation(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Interpretation#getBody() - * @see #getInterpretation() - * @generated - */ - EReference getInterpretation_Body(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation#getRange Range}'. - * - * - * @return the meta object for the containment reference 'Range'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Interpretation#getRange() - * @see #getInterpretation() - * @generated - */ - EReference getInterpretation_Range(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable Variable}'. - * - * - * @return the meta object for class 'Variable'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Variable - * @generated - */ - EClass getVariable(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Variable#getType() - * @see #getVariable() - * @generated - */ - EReference getVariable_Type(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Disjunction Disjunction}'. - * - * - * @return the meta object for class 'Disjunction'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Disjunction - * @generated - */ - EClass getDisjunction(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Disjunction#getChildren Children}'. - * - * - * @return the meta object for the containment reference list 'Children'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Disjunction#getChildren() - * @see #getDisjunction() - * @generated - */ - EReference getDisjunction_Children(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch Switch}'. - * - * - * @return the meta object for class 'Switch'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Switch - * @generated - */ - EClass getSwitch(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases Cases}'. - * - * - * @return the meta object for the containment reference list 'Cases'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases() - * @see #getSwitch() - * @generated - */ - EReference getSwitch_Cases(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Conjunction Conjunction}'. - * - * - * @return the meta object for class 'Conjunction'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Conjunction - * @generated - */ - EClass getConjunction(); - - /** - * Returns the meta object for the containment reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Conjunction#getChildren Children}'. - * - * - * @return the meta object for the containment reference list 'Children'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Conjunction#getChildren() - * @see #getConjunction() - * @generated - */ - EReference getConjunction_Children(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Comparison Comparison}'. - * - * - * @return the meta object for class 'Comparison'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Comparison - * @generated - */ - EClass getComparison(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getLeft Left}'. - * - * - * @return the meta object for the containment reference 'Left'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Comparison#getLeft() - * @see #getComparison() - * @generated - */ - EReference getComparison_Left(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getOp Op}'. - * - * - * @return the meta object for the attribute 'Op'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Comparison#getOp() - * @see #getComparison() - * @generated - */ - EAttribute getComparison_Op(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Comparison#getRight Right}'. - * - * - * @return the meta object for the containment reference 'Right'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Comparison#getRight() - * @see #getComparison() - * @generated - */ - EReference getComparison_Right(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression Binary Expression}'. - * - * - * @return the meta object for class 'Binary Expression'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression - * @generated - */ - EClass getBinaryExpression(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft Left}'. - * - * - * @return the meta object for the containment reference 'Left'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getLeft() - * @see #getBinaryExpression() - * @generated - */ - EReference getBinaryExpression_Left(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp Op}'. - * - * - * @return the meta object for the attribute 'Op'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getOp() - * @see #getBinaryExpression() - * @generated - */ - EAttribute getBinaryExpression_Op(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight Right}'. - * - * - * @return the meta object for the containment reference 'Right'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression#getRight() - * @see #getBinaryExpression() - * @generated - */ - EReference getBinaryExpression_Right(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression Cast Expression}'. - * - * - * @return the meta object for class 'Cast Expression'. - * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression - * @generated - */ - EClass getCastExpression(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getBody() - * @see #getCastExpression() - * @generated - */ - EReference getCastExpression_Body(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getType Type}'. - * - * - * @return the meta object for the reference 'Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression#getType() - * @see #getCastExpression() - * @generated - */ - EReference getCastExpression_Type(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression Unary Expression}'. - * - * - * @return the meta object for class 'Unary Expression'. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression - * @generated - */ - EClass getUnaryExpression(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp Op}'. - * - * - * @return the meta object for the attribute 'Op'. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp() - * @see #getUnaryExpression() - * @generated - */ - EAttribute getUnaryExpression_Op(); - - /** - * Returns the meta object for the containment reference '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody Body}'. - * - * - * @return the meta object for the containment reference 'Body'. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody() - * @see #getUnaryExpression() - * @generated - */ - EReference getUnaryExpression_Body(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Node Node}'. - * - * - * @return the meta object for class 'Node'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Node - * @generated - */ - EClass getNode(); - - /** - * Returns the meta object for the attribute '{@link org.eclipse.viatra.solver.language.solverLanguage.Node#isWithId With Id}'. - * - * - * @return the meta object for the attribute 'With Id'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Node#isWithId() - * @see #getNode() - * @generated - */ - EAttribute getNode_WithId(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor Functor}'. - * - * - * @return the meta object for class 'Functor'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Functor - * @generated - */ - EClass getFunctor(); - - /** - * Returns the meta object for the reference list '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters Parameters}'. - * - * - * @return the meta object for the reference list 'Parameters'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Functor#getParameters() - * @see #getFunctor() - * @generated - */ - EReference getFunctor_Parameters(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate Predicate}'. - * - * - * @return the meta object for class 'Predicate'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate - * @generated - */ - EClass getPredicate(); - - /** - * Returns the meta object for class '{@link org.eclipse.viatra.solver.language.solverLanguage.Metric Metric}'. - * - * - * @return the meta object for class 'Metric'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Metric - * @generated - */ - EClass getMetric(); - - /** - * Returns the meta object for the reference '{@link org.eclipse.viatra.solver.language.solverLanguage.Metric#getReturnType Return Type}'. - * - * - * @return the meta object for the reference 'Return Type'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Metric#getReturnType() - * @see #getMetric() - * @generated - */ - EReference getMetric_ReturnType(); - - /** - * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator Binary Operator}'. - * - * - * @return the meta object for enum 'Binary Operator'. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator - * @generated - */ - EEnum getBinaryOperator(); - - /** - * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOp Unary Op}'. - * - * - * @return the meta object for enum 'Unary Op'. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOp - * @generated - */ - EEnum getUnaryOp(); - - /** - * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue Logic Value}'. - * - * - * @return the meta object for enum 'Logic Value'. - * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue - * @generated - */ - EEnum getLogicValue(); - - /** - * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind Objective Kind}'. - * - * - * @return the meta object for enum 'Objective Kind'. - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind - * @generated - */ - EEnum getObjectiveKind(); - - /** - * Returns the meta object for enum '{@link org.eclipse.viatra.solver.language.solverLanguage.Quantifier Quantifier}'. - * - * - * @return the meta object for enum 'Quantifier'. - * @see org.eclipse.viatra.solver.language.solverLanguage.Quantifier - * @generated - */ - EEnum getQuantifier(); - - /** - * Returns the factory that creates the instances of the model. - * - * - * @return the factory that creates the instances of the model. - * @generated - */ - SolverLanguageFactory getSolverLanguageFactory(); - - /** - * - * Defines literals for the meta objects that represent - *
    - *
  • each class,
  • - *
  • each feature of each class,
  • - *
  • each enum,
  • - *
  • and each data type
  • - *
- * - * @generated - */ - interface Literals { - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl Problem}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getProblem() - * @generated - */ - EClass PROBLEM = eINSTANCE.getProblem(); - - /** - * The meta object literal for the 'Statements' containment reference list feature. - * - * - * @generated - */ - EReference PROBLEM__STATEMENTS = eINSTANCE.getProblem_Statements(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl Statement}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StatementImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStatement() - * @generated - */ - EClass STATEMENT = eINSTANCE.getStatement(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl Predicate Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicateDefinition() - * @generated - */ - EClass PREDICATE_DEFINITION = eINSTANCE.getPredicateDefinition(); - - /** - * The meta object literal for the 'Head' containment reference feature. - * - * - * @generated - */ - EReference PREDICATE_DEFINITION__HEAD = eINSTANCE.getPredicateDefinition_Head(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference PREDICATE_DEFINITION__BODY = eINSTANCE.getPredicateDefinition_Body(); - - /** - * The meta object literal for the 'Functional' attribute feature. - * - * - * @generated - */ - EAttribute PREDICATE_DEFINITION__FUNCTIONAL = eINSTANCE.getPredicateDefinition_Functional(); - - /** - * The meta object literal for the 'Error' attribute feature. - * - * - * @generated - */ - EAttribute PREDICATE_DEFINITION__ERROR = eINSTANCE.getPredicateDefinition_Error(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPrediateDefinitionImpl Unnamed Error Prediate Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPrediateDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnnamedErrorPrediateDefinition() - * @generated - */ - EClass UNNAMED_ERROR_PREDIATE_DEFINITION = eINSTANCE.getUnnamedErrorPrediateDefinition(); - - /** - * The meta object literal for the 'Argument List' containment reference feature. - * - * - * @generated - */ - EReference UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST = eINSTANCE.getUnnamedErrorPrediateDefinition_ArgumentList(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference UNNAMED_ERROR_PREDIATE_DEFINITION__BODY = eINSTANCE.getUnnamedErrorPrediateDefinition_Body(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultDefinitionImpl Default Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDefaultDefinition() - * @generated - */ - EClass DEFAULT_DEFINITION = eINSTANCE.getDefaultDefinition(); - - /** - * The meta object literal for the 'Head' containment reference feature. - * - * - * @generated - */ - EReference DEFAULT_DEFINITION__HEAD = eINSTANCE.getDefaultDefinition_Head(); - - /** - * The meta object literal for the 'Range' containment reference feature. - * - * - * @generated - */ - EReference DEFAULT_DEFINITION__RANGE = eINSTANCE.getDefaultDefinition_Range(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricDefinitionImpl Metric Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MetricDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMetricDefinition() - * @generated - */ - EClass METRIC_DEFINITION = eINSTANCE.getMetricDefinition(); - - /** - * The meta object literal for the 'Head' containment reference feature. - * - * - * @generated - */ - EReference METRIC_DEFINITION__HEAD = eINSTANCE.getMetricDefinition_Head(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference METRIC_DEFINITION__BODY = eINSTANCE.getMetricDefinition_Body(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference METRIC_DEFINITION__TYPE = eINSTANCE.getMetricDefinition_Type(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDefinitionImpl Extern Predicate Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternPredicateDefinition() - * @generated - */ - EClass EXTERN_PREDICATE_DEFINITION = eINSTANCE.getExternPredicateDefinition(); - - /** - * The meta object literal for the 'Name' attribute feature. - * - * - * @generated - */ - EAttribute EXTERN_PREDICATE_DEFINITION__NAME = eINSTANCE.getExternPredicateDefinition_Name(); - - /** - * The meta object literal for the 'Argument List' containment reference feature. - * - * - * @generated - */ - EReference EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST = eINSTANCE.getExternPredicateDefinition_ArgumentList(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternMetricDefinitionImpl Extern Metric Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternMetricDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternMetricDefinition() - * @generated - */ - EClass EXTERN_METRIC_DEFINITION = eINSTANCE.getExternMetricDefinition(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference EXTERN_METRIC_DEFINITION__TYPE = eINSTANCE.getExternMetricDefinition_Type(); - - /** - * The meta object literal for the 'Name' attribute feature. - * - * - * @generated - */ - EAttribute EXTERN_METRIC_DEFINITION__NAME = eINSTANCE.getExternMetricDefinition_Name(); - - /** - * The meta object literal for the 'Argument List' containment reference feature. - * - * - * @generated - */ - EReference EXTERN_METRIC_DEFINITION__ARGUMENT_LIST = eINSTANCE.getExternMetricDefinition_ArgumentList(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregatorDefinitionImpl Extern Aggregator Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregatorDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternAggregatorDefinition() - * @generated - */ - EClass EXTERN_AGGREGATOR_DEFINITION = eINSTANCE.getExternAggregatorDefinition(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference EXTERN_AGGREGATOR_DEFINITION__TYPE = eINSTANCE.getExternAggregatorDefinition_Type(); - - /** - * The meta object literal for the 'Name' attribute feature. - * - * - * @generated - */ - EAttribute EXTERN_AGGREGATOR_DEFINITION__NAME = eINSTANCE.getExternAggregatorDefinition_Name(); - - /** - * The meta object literal for the 'Input Type' reference feature. - * - * - * @generated - */ - EReference EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE = eINSTANCE.getExternAggregatorDefinition_InputType(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDefinitionImpl Extern Datatype Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExternDatatypeDefinition() - * @generated - */ - EClass EXTERN_DATATYPE_DEFINITION = eINSTANCE.getExternDatatypeDefinition(); - - /** - * The meta object literal for the 'Name' attribute feature. - * - * - * @generated - */ - EAttribute EXTERN_DATATYPE_DEFINITION__NAME = eINSTANCE.getExternDatatypeDefinition_Name(); - - /** - * The meta object literal for the 'Supertypes' reference list feature. - * - * - * @generated - */ - EReference EXTERN_DATATYPE_DEFINITION__SUPERTYPES = eINSTANCE.getExternDatatypeDefinition_Supertypes(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamedElementImpl Named Element}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NamedElementImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNamedElement() - * @generated - */ - EClass NAMED_ELEMENT = eINSTANCE.getNamedElement(); - - /** - * The meta object literal for the 'Name' attribute feature. - * - * - * @generated - */ - EAttribute NAMED_ELEMENT__NAME = eINSTANCE.getNamedElement_Name(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpression() - * @generated - */ - EClass EXPRESSION = eINSTANCE.getExpression(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IfElseImpl If Else}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IfElseImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getIfElse() - * @generated - */ - EClass IF_ELSE = eINSTANCE.getIfElse(); - - /** - * The meta object literal for the 'Then' containment reference feature. - * - * - * @generated - */ - EReference IF_ELSE__THEN = eINSTANCE.getIfElse_Then(); - - /** - * The meta object literal for the 'Else' containment reference feature. - * - * - * @generated - */ - EReference IF_ELSE__ELSE = eINSTANCE.getIfElse_Else(); - - /** - * The meta object literal for the 'Condition' containment reference feature. - * - * - * @generated - */ - EReference IF_ELSE__CONDITION = eINSTANCE.getIfElse_Condition(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetImpl Let}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLet() - * @generated - */ - EClass LET = eINSTANCE.getLet(); - - /** - * The meta object literal for the 'Bindings' containment reference list feature. - * - * - * @generated - */ - EReference LET__BINDINGS = eINSTANCE.getLet_Bindings(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference LET__BODY = eINSTANCE.getLet_Body(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl Let Binding}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLetBinding() - * @generated - */ - EClass LET_BINDING = eINSTANCE.getLetBinding(); - - /** - * The meta object literal for the 'Variable' containment reference feature. - * - * - * @generated - */ - EReference LET_BINDING__VARIABLE = eINSTANCE.getLetBinding_Variable(); - - /** - * The meta object literal for the 'Value' containment reference feature. - * - * - * @generated - */ - EReference LET_BINDING__VALUE = eINSTANCE.getLetBinding_Value(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl Case}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCase() - * @generated - */ - EClass CASE = eINSTANCE.getCase(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference CASE__BODY = eINSTANCE.getCase_Body(); - - /** - * The meta object literal for the 'Condition' containment reference feature. - * - * - * @generated - */ - EReference CASE__CONDITION = eINSTANCE.getCase_Condition(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LocalVariablesImpl Local Variables}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LocalVariablesImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLocalVariables() - * @generated - */ - EClass LOCAL_VARIABLES = eINSTANCE.getLocalVariables(); - - /** - * The meta object literal for the 'Variables' containment reference list feature. - * - * - * @generated - */ - EReference LOCAL_VARIABLES__VARIABLES = eINSTANCE.getLocalVariables_Variables(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.QuantifiedExpressionImpl Quantified Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.QuantifiedExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getQuantifiedExpression() - * @generated - */ - EClass QUANTIFIED_EXPRESSION = eINSTANCE.getQuantifiedExpression(); - - /** - * The meta object literal for the 'Local Variables' containment reference feature. - * - * - * @generated - */ - EReference QUANTIFIED_EXPRESSION__LOCAL_VARIABLES = eINSTANCE.getQuantifiedExpression_LocalVariables(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference QUANTIFIED_EXPRESSION__BODY = eINSTANCE.getQuantifiedExpression_Body(); - - /** - * The meta object literal for the 'Quantifier' attribute feature. - * - * - * @generated - */ - EAttribute QUANTIFIED_EXPRESSION__QUANTIFIER = eINSTANCE.getQuantifiedExpression_Quantifier(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl Aggregation}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getAggregation() - * @generated - */ - EClass AGGREGATION = eINSTANCE.getAggregation(); - - /** - * The meta object literal for the 'Op' reference feature. - * - * - * @generated - */ - EReference AGGREGATION__OP = eINSTANCE.getAggregation_Op(); - - /** - * The meta object literal for the 'Local Variables' containment reference feature. - * - * - * @generated - */ - EReference AGGREGATION__LOCAL_VARIABLES = eINSTANCE.getAggregation_LocalVariables(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference AGGREGATION__BODY = eINSTANCE.getAggregation_Body(); - - /** - * The meta object literal for the 'Condition' containment reference feature. - * - * - * @generated - */ - EReference AGGREGATION__CONDITION = eINSTANCE.getAggregation_Condition(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl Call}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCall() - * @generated - */ - EClass CALL = eINSTANCE.getCall(); - - /** - * The meta object literal for the 'Functor' containment reference feature. - * - * - * @generated - */ - EReference CALL__FUNCTOR = eINSTANCE.getCall_Functor(); - - /** - * The meta object literal for the 'Transitive Closure' attribute feature. - * - * - * @generated - */ - EAttribute CALL__TRANSITIVE_CLOSURE = eINSTANCE.getCall_TransitiveClosure(); - - /** - * The meta object literal for the 'Reflexive Transitive Closure' attribute feature. - * - * - * @generated - */ - EAttribute CALL__REFLEXIVE_TRANSITIVE_CLOSURE = eINSTANCE.getCall_ReflexiveTransitiveClosure(); - - /** - * The meta object literal for the 'Argument List' containment reference feature. - * - * - * @generated - */ - EReference CALL__ARGUMENT_LIST = eINSTANCE.getCall_ArgumentList(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl Argument List}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgumentList() - * @generated - */ - EClass ARGUMENT_LIST = eINSTANCE.getArgumentList(); - - /** - * The meta object literal for the 'Arguments' containment reference list feature. - * - * - * @generated - */ - EReference ARGUMENT_LIST__ARGUMENTS = eINSTANCE.getArgumentList_Arguments(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getArgument() - * @generated - */ - EClass ARGUMENT = eINSTANCE.getArgument(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl Expression Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExpressionArgument() - * @generated - */ - EClass EXPRESSION_ARGUMENT = eINSTANCE.getExpressionArgument(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference EXPRESSION_ARGUMENT__BODY = eINSTANCE.getExpressionArgument_Body(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl Star Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StarArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStarArgument() - * @generated - */ - EClass STAR_ARGUMENT = eINSTANCE.getStarArgument(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl Typed Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedArgument() - * @generated - */ - EClass TYPED_ARGUMENT = eINSTANCE.getTypedArgument(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference TYPED_ARGUMENT__TYPE = eINSTANCE.getTypedArgument_Type(); - - /** - * The meta object literal for the 'Variable' reference feature. - * - * - * @generated - */ - EReference TYPED_ARGUMENT__VARIABLE = eINSTANCE.getTypedArgument_Variable(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl Typed Star Argument}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getTypedStarArgument() - * @generated - */ - EClass TYPED_STAR_ARGUMENT = eINSTANCE.getTypedStarArgument(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference TYPED_STAR_ARGUMENT__TYPE = eINSTANCE.getTypedStarArgument_Type(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl Reference}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getReference() - * @generated - */ - EClass REFERENCE = eINSTANCE.getReference(); - - /** - * The meta object literal for the 'Referred' reference feature. - * - * - * @generated - */ - EReference REFERENCE__REFERRED = eINSTANCE.getReference_Referred(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl Interval}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterval() - * @generated - */ - EClass INTERVAL = eINSTANCE.getInterval(); - - /** - * The meta object literal for the 'Lower Bound' containment reference feature. - * - * - * @generated - */ - EReference INTERVAL__LOWER_BOUND = eINSTANCE.getInterval_LowerBound(); - - /** - * The meta object literal for the 'Upper Bound' containment reference feature. - * - * - * @generated - */ - EReference INTERVAL__UPPER_BOUND = eINSTANCE.getInterval_UpperBound(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLiteral() - * @generated - */ - EClass LITERAL = eINSTANCE.getLiteral(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl Logic Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicLiteral() - * @generated - */ - EClass LOGIC_LITERAL = eINSTANCE.getLogicLiteral(); - - /** - * The meta object literal for the 'Value' attribute feature. - * - * - * @generated - */ - EAttribute LOGIC_LITERAL__VALUE = eINSTANCE.getLogicLiteral_Value(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NumericLiteralImpl Numeric Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NumericLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNumericLiteral() - * @generated - */ - EClass NUMERIC_LITERAL = eINSTANCE.getNumericLiteral(); - - /** - * The meta object literal for the 'Value' attribute feature. - * - * - * @generated - */ - EAttribute NUMERIC_LITERAL__VALUE = eINSTANCE.getNumericLiteral_Value(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl Infinity Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InfinityLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInfinityLiteral() - * @generated - */ - EClass INFINITY_LITERAL = eINSTANCE.getInfinityLiteral(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyIntervalLiteralImpl Empty Interval Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.EmptyIntervalLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getEmptyIntervalLiteral() - * @generated - */ - EClass EMPTY_INTERVAL_LITERAL = eINSTANCE.getEmptyIntervalLiteral(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl String Literal}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getStringLiteral() - * @generated - */ - EClass STRING_LITERAL = eINSTANCE.getStringLiteral(); - - /** - * The meta object literal for the 'Value' attribute feature. - * - * - * @generated - */ - EAttribute STRING_LITERAL__VALUE = eINSTANCE.getStringLiteral_Value(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDefinitionImpl Class Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getClassDefinition() - * @generated - */ - EClass CLASS_DEFINITION = eINSTANCE.getClassDefinition(); - - /** - * The meta object literal for the 'Abstract' attribute feature. - * - * - * @generated - */ - EAttribute CLASS_DEFINITION__ABSTRACT = eINSTANCE.getClassDefinition_Abstract(); - - /** - * The meta object literal for the 'Name' attribute feature. - * - * - * @generated - */ - EAttribute CLASS_DEFINITION__NAME = eINSTANCE.getClassDefinition_Name(); - - /** - * The meta object literal for the 'Superclasses' reference list feature. - * - * - * @generated - */ - EReference CLASS_DEFINITION__SUPERCLASSES = eINSTANCE.getClassDefinition_Superclasses(); - - /** - * The meta object literal for the 'Members' containment reference list feature. - * - * - * @generated - */ - EReference CLASS_DEFINITION__MEMBERS = eINSTANCE.getClassDefinition_Members(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl Member Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMemberDefinition() - * @generated - */ - EClass MEMBER_DEFINITION = eINSTANCE.getMemberDefinition(); - - /** - * The meta object literal for the 'Containment' attribute feature. - * - * - * @generated - */ - EAttribute MEMBER_DEFINITION__CONTAINMENT = eINSTANCE.getMemberDefinition_Containment(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference MEMBER_DEFINITION__TYPE = eINSTANCE.getMemberDefinition_Type(); - - /** - * The meta object literal for the 'Multiplicity' containment reference feature. - * - * - * @generated - */ - EReference MEMBER_DEFINITION__MULTIPLICITY = eINSTANCE.getMemberDefinition_Multiplicity(); - - /** - * The meta object literal for the 'Name' attribute feature. - * - * - * @generated - */ - EAttribute MEMBER_DEFINITION__NAME = eINSTANCE.getMemberDefinition_Name(); - - /** - * The meta object literal for the 'Opposite' reference feature. - * - * - * @generated - */ - EReference MEMBER_DEFINITION__OPPOSITE = eINSTANCE.getMemberDefinition_Opposite(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl Multiplicity}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MultiplicityImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMultiplicity() - * @generated - */ - EClass MULTIPLICITY = eINSTANCE.getMultiplicity(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ManyMultiplicityImpl Many Multiplicity}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ManyMultiplicityImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getManyMultiplicity() - * @generated - */ - EClass MANY_MULTIPLICITY = eINSTANCE.getManyMultiplicity(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl Exact Multiplicity}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactMultiplicity() - * @generated - */ - EClass EXACT_MULTIPLICITY = eINSTANCE.getExactMultiplicity(); - - /** - * The meta object literal for the 'Multiplicity' attribute feature. - * - * - * @generated - */ - EAttribute EXACT_MULTIPLICITY__MULTIPLICITY = eINSTANCE.getExactMultiplicity_Multiplicity(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl Bounded Multiplicity}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedMultiplicity() - * @generated - */ - EClass BOUNDED_MULTIPLICITY = eINSTANCE.getBoundedMultiplicity(); - - /** - * The meta object literal for the 'Lower Bound' attribute feature. - * - * - * @generated - */ - EAttribute BOUNDED_MULTIPLICITY__LOWER_BOUND = eINSTANCE.getBoundedMultiplicity_LowerBound(); - - /** - * The meta object literal for the 'Upper Bound' attribute feature. - * - * - * @generated - */ - EAttribute BOUNDED_MULTIPLICITY__UPPER_BOUND = eINSTANCE.getBoundedMultiplicity_UpperBound(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDefinitionImpl Scope Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getScopeDefinition() - * @generated - */ - EClass SCOPE_DEFINITION = eINSTANCE.getScopeDefinition(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference SCOPE_DEFINITION__TYPE = eINSTANCE.getScopeDefinition_Type(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeDefinitionImpl Exact Scope Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getExactScopeDefinition() - * @generated - */ - EClass EXACT_SCOPE_DEFINITION = eINSTANCE.getExactScopeDefinition(); - - /** - * The meta object literal for the 'Exact Scope' attribute feature. - * - * - * @generated - */ - EAttribute EXACT_SCOPE_DEFINITION__EXACT_SCOPE = eINSTANCE.getExactScopeDefinition_ExactScope(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeDefinitionImpl Bounded Scope Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBoundedScopeDefinition() - * @generated - */ - EClass BOUNDED_SCOPE_DEFINITION = eINSTANCE.getBoundedScopeDefinition(); - - /** - * The meta object literal for the 'Lower Bound' attribute feature. - * - * - * @generated - */ - EAttribute BOUNDED_SCOPE_DEFINITION__LOWER_BOUND = eINSTANCE.getBoundedScopeDefinition_LowerBound(); - - /** - * The meta object literal for the 'Upper Bound' attribute feature. - * - * - * @generated - */ - EAttribute BOUNDED_SCOPE_DEFINITION__UPPER_BOUND = eINSTANCE.getBoundedScopeDefinition_UpperBound(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeDefinitionImpl Lower Bounded Scope Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLowerBoundedScopeDefinition() - * @generated - */ - EClass LOWER_BOUNDED_SCOPE_DEFINITION = eINSTANCE.getLowerBoundedScopeDefinition(); - - /** - * The meta object literal for the 'Lower Bound' attribute feature. - * - * - * @generated - */ - EAttribute LOWER_BOUNDED_SCOPE_DEFINITION__LOWER_BOUND = eINSTANCE.getLowerBoundedScopeDefinition_LowerBound(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDefinitionImpl Objective Definition}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDefinitionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveDefinition() - * @generated - */ - EClass OBJECTIVE_DEFINITION = eINSTANCE.getObjectiveDefinition(); - - /** - * The meta object literal for the 'Kind' attribute feature. - * - * - * @generated - */ - EAttribute OBJECTIVE_DEFINITION__KIND = eINSTANCE.getObjectiveDefinition_Kind(); - - /** - * The meta object literal for the 'Objective' containment reference feature. - * - * - * @generated - */ - EReference OBJECTIVE_DEFINITION__OBJECTIVE = eINSTANCE.getObjectiveDefinition_Objective(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl Interpretation}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getInterpretation() - * @generated - */ - EClass INTERPRETATION = eINSTANCE.getInterpretation(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference INTERPRETATION__BODY = eINSTANCE.getInterpretation_Body(); - - /** - * The meta object literal for the 'Range' containment reference feature. - * - * - * @generated - */ - EReference INTERPRETATION__RANGE = eINSTANCE.getInterpretation_Range(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl Variable}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getVariable() - * @generated - */ - EClass VARIABLE = eINSTANCE.getVariable(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference VARIABLE__TYPE = eINSTANCE.getVariable_Type(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl Disjunction}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getDisjunction() - * @generated - */ - EClass DISJUNCTION = eINSTANCE.getDisjunction(); - - /** - * The meta object literal for the 'Children' containment reference list feature. - * - * - * @generated - */ - EReference DISJUNCTION__CHILDREN = eINSTANCE.getDisjunction_Children(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl Switch}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getSwitch() - * @generated - */ - EClass SWITCH = eINSTANCE.getSwitch(); - - /** - * The meta object literal for the 'Cases' containment reference list feature. - * - * - * @generated - */ - EReference SWITCH__CASES = eINSTANCE.getSwitch_Cases(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl Conjunction}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getConjunction() - * @generated - */ - EClass CONJUNCTION = eINSTANCE.getConjunction(); - - /** - * The meta object literal for the 'Children' containment reference list feature. - * - * - * @generated - */ - EReference CONJUNCTION__CHILDREN = eINSTANCE.getConjunction_Children(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.ComparisonImpl Comparison}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.ComparisonImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getComparison() - * @generated - */ - EClass COMPARISON = eINSTANCE.getComparison(); - - /** - * The meta object literal for the 'Left' containment reference feature. - * - * - * @generated - */ - EReference COMPARISON__LEFT = eINSTANCE.getComparison_Left(); - - /** - * The meta object literal for the 'Op' attribute feature. - * - * - * @generated - */ - EAttribute COMPARISON__OP = eINSTANCE.getComparison_Op(); - - /** - * The meta object literal for the 'Right' containment reference feature. - * - * - * @generated - */ - EReference COMPARISON__RIGHT = eINSTANCE.getComparison_Right(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl Binary Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryExpression() - * @generated - */ - EClass BINARY_EXPRESSION = eINSTANCE.getBinaryExpression(); - - /** - * The meta object literal for the 'Left' containment reference feature. - * - * - * @generated - */ - EReference BINARY_EXPRESSION__LEFT = eINSTANCE.getBinaryExpression_Left(); - - /** - * The meta object literal for the 'Op' attribute feature. - * - * - * @generated - */ - EAttribute BINARY_EXPRESSION__OP = eINSTANCE.getBinaryExpression_Op(); - - /** - * The meta object literal for the 'Right' containment reference feature. - * - * - * @generated - */ - EReference BINARY_EXPRESSION__RIGHT = eINSTANCE.getBinaryExpression_Right(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl Cast Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getCastExpression() - * @generated - */ - EClass CAST_EXPRESSION = eINSTANCE.getCastExpression(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference CAST_EXPRESSION__BODY = eINSTANCE.getCastExpression_Body(); - - /** - * The meta object literal for the 'Type' reference feature. - * - * - * @generated - */ - EReference CAST_EXPRESSION__TYPE = eINSTANCE.getCastExpression_Type(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl Unary Expression}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryExpression() - * @generated - */ - EClass UNARY_EXPRESSION = eINSTANCE.getUnaryExpression(); - - /** - * The meta object literal for the 'Op' attribute feature. - * - * - * @generated - */ - EAttribute UNARY_EXPRESSION__OP = eINSTANCE.getUnaryExpression_Op(); - - /** - * The meta object literal for the 'Body' containment reference feature. - * - * - * @generated - */ - EReference UNARY_EXPRESSION__BODY = eINSTANCE.getUnaryExpression_Body(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl Node}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getNode() - * @generated - */ - EClass NODE = eINSTANCE.getNode(); - - /** - * The meta object literal for the 'With Id' attribute feature. - * - * - * @generated - */ - EAttribute NODE__WITH_ID = eINSTANCE.getNode_WithId(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl Functor}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getFunctor() - * @generated - */ - EClass FUNCTOR = eINSTANCE.getFunctor(); - - /** - * The meta object literal for the 'Parameters' reference list feature. - * - * - * @generated - */ - EReference FUNCTOR__PARAMETERS = eINSTANCE.getFunctor_Parameters(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl Predicate}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getPredicate() - * @generated - */ - EClass PREDICATE = eINSTANCE.getPredicate(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl Metric}' class. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getMetric() - * @generated - */ - EClass METRIC = eINSTANCE.getMetric(); - - /** - * The meta object literal for the 'Return Type' reference feature. - * - * - * @generated - */ - EReference METRIC__RETURN_TYPE = eINSTANCE.getMetric_ReturnType(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator Binary Operator}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getBinaryOperator() - * @generated - */ - EEnum BINARY_OPERATOR = eINSTANCE.getBinaryOperator(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOp Unary Op}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOp - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getUnaryOp() - * @generated - */ - EEnum UNARY_OP = eINSTANCE.getUnaryOp(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicValue Logic Value}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.LogicValue - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getLogicValue() - * @generated - */ - EEnum LOGIC_VALUE = eINSTANCE.getLogicValue(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind Objective Kind}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getObjectiveKind() - * @generated - */ - EEnum OBJECTIVE_KIND = eINSTANCE.getObjectiveKind(); - - /** - * The meta object literal for the '{@link org.eclipse.viatra.solver.language.solverLanguage.Quantifier Quantifier}' enum. - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.Quantifier - * @see org.eclipse.viatra.solver.language.solverLanguage.impl.SolverLanguagePackageImpl#getQuantifier() - * @generated - */ - EEnum QUANTIFIER = eINSTANCE.getQuantifier(); - - } - -} //SolverLanguagePackage diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java deleted file mode 100644 index 1abc7ea1..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/StarArgument.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Star Argument'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStarArgument() - * @model - * @generated - */ -public interface StarArgument extends Argument { -} // StarArgument diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java deleted file mode 100644 index 2dd89f73..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Statement.java +++ /dev/null @@ -1,19 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Statement'. - * - * - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStatement() - * @model - * @generated - */ -public interface Statement extends EObject { -} // Statement diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java deleted file mode 100644 index 7272e64a..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/StringLiteral.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'String Literal'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue Value}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringLiteral() - * @model - * @generated - */ -public interface StringLiteral extends Literal { - /** - * Returns the value of the 'Value' attribute. - * - * - * @return the value of the 'Value' attribute. - * @see #setValue(String) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getStringLiteral_Value() - * @model - * @generated - */ - String getValue(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral#getValue Value}' attribute. - * - * - * @param value the new value of the 'Value' attribute. - * @see #getValue() - * @generated - */ - void setValue(String value); - -} // StringLiteral diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java deleted file mode 100644 index fc181c0b..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Switch.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import org.eclipse.emf.common.util.EList; - -/** - * - * A representation of the model object 'Switch'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Switch#getCases Cases}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSwitch() - * @model - * @generated - */ -public interface Switch extends Expression { - /** - * Returns the value of the 'Cases' containment reference list. - * The list contents are of type {@link org.eclipse.viatra.solver.language.solverLanguage.Case}. - * - * - * @return the value of the 'Cases' containment reference list. - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getSwitch_Cases() - * @model containment="true" - * @generated - */ - EList getCases(); - -} // Switch diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java deleted file mode 100644 index 04744ad9..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedArgument.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Typed Argument'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getType Type}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getVariable Variable}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedArgument() - * @model - * @generated - */ -public interface TypedArgument extends Argument { - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedArgument_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - - /** - * Returns the value of the 'Variable' reference. - * - * - * @return the value of the 'Variable' reference. - * @see #setVariable(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedArgument_Variable() - * @model - * @generated - */ - NamedElement getVariable(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument#getVariable Variable}' reference. - * - * - * @param value the new value of the 'Variable' reference. - * @see #getVariable() - * @generated - */ - void setVariable(NamedElement value); - -} // TypedArgument diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java deleted file mode 100644 index 53a18217..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/TypedStarArgument.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Typed Star Argument'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument#getType Type}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedStarArgument() - * @model - * @generated - */ -public interface TypedStarArgument extends Argument { - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getTypedStarArgument_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - -} // TypedStarArgument diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java deleted file mode 100644 index c0a1ddc7..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryExpression.java +++ /dev/null @@ -1,72 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Unary Expression'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp Op}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody Body}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression() - * @model - * @generated - */ -public interface UnaryExpression extends Expression { - /** - * Returns the value of the 'Op' attribute. - * The literals are from the enumeration {@link org.eclipse.viatra.solver.language.solverLanguage.UnaryOp}. - * - * - * @return the value of the 'Op' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOp - * @see #setOp(UnaryOp) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression_Op() - * @model - * @generated - */ - UnaryOp getOp(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getOp Op}' attribute. - * - * - * @param value the new value of the 'Op' attribute. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryOp - * @see #getOp() - * @generated - */ - void setOp(UnaryOp value); - - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryExpression_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - -} // UnaryExpression diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOp.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOp.java deleted file mode 100644 index fad289b1..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnaryOp.java +++ /dev/null @@ -1,302 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.eclipse.emf.common.util.Enumerator; - -/** - * - * A representation of the literals of the enumeration 'Unary Op', - * and utility methods for working with them. - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnaryOp() - * @model - * @generated - */ -public enum UnaryOp implements Enumerator { - /** - * The 'NEG' literal object. - * - * - * @see #NEG_VALUE - * @generated - * @ordered - */ - NEG(0, "NEG", "!"), - - /** - * The 'PLUS' literal object. - * - * - * @see #PLUS_VALUE - * @generated - * @ordered - */ - PLUS(1, "PLUS", "+"), - - /** - * The 'MINUS' literal object. - * - * - * @see #MINUS_VALUE - * @generated - * @ordered - */ - MINUS(2, "MINUS", "-"), - - /** - * The 'MAY' literal object. - * - * - * @see #MAY_VALUE - * @generated - * @ordered - */ - MAY(3, "MAY", "may"), - - /** - * The 'MUST' literal object. - * - * - * @see #MUST_VALUE - * @generated - * @ordered - */ - MUST(4, "MUST", "must"), - - /** - * The 'CURRENT' literal object. - * - * - * @see #CURRENT_VALUE - * @generated - * @ordered - */ - CURRENT(5, "CURRENT", "current"); - - /** - * The 'NEG' literal value. - * - * - * @see #NEG - * @model literal="!" - * @generated - * @ordered - */ - public static final int NEG_VALUE = 0; - - /** - * The 'PLUS' literal value. - * - * - * @see #PLUS - * @model literal="+" - * @generated - * @ordered - */ - public static final int PLUS_VALUE = 1; - - /** - * The 'MINUS' literal value. - * - * - * @see #MINUS - * @model literal="-" - * @generated - * @ordered - */ - public static final int MINUS_VALUE = 2; - - /** - * The 'MAY' literal value. - * - * - * @see #MAY - * @model literal="may" - * @generated - * @ordered - */ - public static final int MAY_VALUE = 3; - - /** - * The 'MUST' literal value. - * - * - * @see #MUST - * @model literal="must" - * @generated - * @ordered - */ - public static final int MUST_VALUE = 4; - - /** - * The 'CURRENT' literal value. - * - * - * @see #CURRENT - * @model literal="current" - * @generated - * @ordered - */ - public static final int CURRENT_VALUE = 5; - - /** - * An array of all the 'Unary Op' enumerators. - * - * - * @generated - */ - private static final UnaryOp[] VALUES_ARRAY = - new UnaryOp[] { - NEG, - PLUS, - MINUS, - MAY, - MUST, - CURRENT, - }; - - /** - * A public read-only list of all the 'Unary Op' enumerators. - * - * - * @generated - */ - public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); - - /** - * Returns the 'Unary Op' literal with the specified literal value. - * - * - * @param literal the literal. - * @return the matching enumerator or null. - * @generated - */ - public static UnaryOp get(String literal) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - UnaryOp result = VALUES_ARRAY[i]; - if (result.toString().equals(literal)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Unary Op' literal with the specified name. - * - * - * @param name the name. - * @return the matching enumerator or null. - * @generated - */ - public static UnaryOp getByName(String name) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - UnaryOp result = VALUES_ARRAY[i]; - if (result.getName().equals(name)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Unary Op' literal with the specified integer value. - * - * - * @param value the integer value. - * @return the matching enumerator or null. - * @generated - */ - public static UnaryOp get(int value) { - switch (value) { - case NEG_VALUE: return NEG; - case PLUS_VALUE: return PLUS; - case MINUS_VALUE: return MINUS; - case MAY_VALUE: return MAY; - case MUST_VALUE: return MUST; - case CURRENT_VALUE: return CURRENT; - } - return null; - } - - /** - * - * - * @generated - */ - private final int value; - - /** - * - * - * @generated - */ - private final String name; - - /** - * - * - * @generated - */ - private final String literal; - - /** - * Only this class can construct instances. - * - * - * @generated - */ - private UnaryOp(int value, String name, String literal) { - this.value = value; - this.name = name; - this.literal = literal; - } - - /** - * - * - * @generated - */ - @Override - public int getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public String getLiteral() { - return literal; - } - - /** - * Returns the literal value of the enumerator, which is its string representation. - * - * - * @generated - */ - @Override - public String toString() { - return literal; - } - -} //UnaryOp diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPrediateDefinition.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPrediateDefinition.java deleted file mode 100644 index fd916c18..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/UnnamedErrorPrediateDefinition.java +++ /dev/null @@ -1,69 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Unnamed Error Prediate Definition'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition#getArgumentList Argument List}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition#getBody Body}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPrediateDefinition() - * @model - * @generated - */ -public interface UnnamedErrorPrediateDefinition extends Statement { - /** - * Returns the value of the 'Argument List' containment reference. - * - * - * @return the value of the 'Argument List' containment reference. - * @see #setArgumentList(ArgumentList) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPrediateDefinition_ArgumentList() - * @model containment="true" - * @generated - */ - ArgumentList getArgumentList(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition#getArgumentList Argument List}' containment reference. - * - * - * @param value the new value of the 'Argument List' containment reference. - * @see #getArgumentList() - * @generated - */ - void setArgumentList(ArgumentList value); - - /** - * Returns the value of the 'Body' containment reference. - * - * - * @return the value of the 'Body' containment reference. - * @see #setBody(Expression) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getUnnamedErrorPrediateDefinition_Body() - * @model containment="true" - * @generated - */ - Expression getBody(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition#getBody Body}' containment reference. - * - * - * @param value the new value of the 'Body' containment reference. - * @see #getBody() - * @generated - */ - void setBody(Expression value); - -} // UnnamedErrorPrediateDefinition diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java deleted file mode 100644 index 581ce517..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/Variable.java +++ /dev/null @@ -1,46 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage; - - -/** - * - * A representation of the model object 'Variable'. - * - * - *

- * The following features are supported: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getType Type}
  • - *
- * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getVariable() - * @model - * @generated - */ -public interface Variable extends NamedElement { - /** - * Returns the value of the 'Type' reference. - * - * - * @return the value of the 'Type' reference. - * @see #setType(NamedElement) - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#getVariable_Type() - * @model - * @generated - */ - NamedElement getType(); - - /** - * Sets the value of the '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable#getType Type}' reference. - * - * - * @param value the new value of the 'Type' reference. - * @see #getType() - * @generated - */ - void setType(NamedElement value); - -} // Variable diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java deleted file mode 100644 index 0f0262df..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/AggregationImpl.java +++ /dev/null @@ -1,378 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Aggregation; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.LocalVariables; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Aggregation'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl#getOp Op}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl#getLocalVariables Local Variables}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.AggregationImpl#getCondition Condition}
  • - *
- * - * @generated - */ -public class AggregationImpl extends ExpressionImpl implements Aggregation { - /** - * The cached value of the '{@link #getOp() Op}' reference. - * - * - * @see #getOp() - * @generated - * @ordered - */ - protected NamedElement op; - - /** - * The cached value of the '{@link #getLocalVariables() Local Variables}' containment reference. - * - * - * @see #getLocalVariables() - * @generated - * @ordered - */ - protected LocalVariables localVariables; - - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * The cached value of the '{@link #getCondition() Condition}' containment reference. - * - * - * @see #getCondition() - * @generated - * @ordered - */ - protected Expression condition; - - /** - * - * - * @generated - */ - protected AggregationImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.AGGREGATION; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getOp() { - if (op != null && op.eIsProxy()) { - InternalEObject oldOp = (InternalEObject)op; - op = (NamedElement)eResolveProxy(oldOp); - if (op != oldOp) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.AGGREGATION__OP, oldOp, op)); - } - } - return op; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetOp() { - return op; - } - - /** - * - * - * @generated - */ - @Override - public void setOp(NamedElement newOp) { - NamedElement oldOp = op; - op = newOp; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__OP, oldOp, op)); - } - - /** - * - * - * @generated - */ - @Override - public LocalVariables getLocalVariables() { - return localVariables; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetLocalVariables(LocalVariables newLocalVariables, NotificationChain msgs) { - LocalVariables oldLocalVariables = localVariables; - localVariables = newLocalVariables; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES, oldLocalVariables, newLocalVariables); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setLocalVariables(LocalVariables newLocalVariables) { - if (newLocalVariables != localVariables) { - NotificationChain msgs = null; - if (localVariables != null) - msgs = ((InternalEObject)localVariables).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES, null, msgs); - if (newLocalVariables != null) - msgs = ((InternalEObject)newLocalVariables).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES, null, msgs); - msgs = basicSetLocalVariables(newLocalVariables, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES, newLocalVariables, newLocalVariables)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getCondition() { - return condition; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) { - Expression oldCondition = condition; - condition = newCondition; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__CONDITION, oldCondition, newCondition); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setCondition(Expression newCondition) { - if (newCondition != condition) { - NotificationChain msgs = null; - if (condition != null) - msgs = ((InternalEObject)condition).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__CONDITION, null, msgs); - if (newCondition != null) - msgs = ((InternalEObject)newCondition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.AGGREGATION__CONDITION, null, msgs); - msgs = basicSetCondition(newCondition, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.AGGREGATION__CONDITION, newCondition, newCondition)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES: - return basicSetLocalVariables(null, msgs); - case SolverLanguagePackage.AGGREGATION__BODY: - return basicSetBody(null, msgs); - case SolverLanguagePackage.AGGREGATION__CONDITION: - return basicSetCondition(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.AGGREGATION__OP: - if (resolve) return getOp(); - return basicGetOp(); - case SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES: - return getLocalVariables(); - case SolverLanguagePackage.AGGREGATION__BODY: - return getBody(); - case SolverLanguagePackage.AGGREGATION__CONDITION: - return getCondition(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.AGGREGATION__OP: - setOp((NamedElement)newValue); - return; - case SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES: - setLocalVariables((LocalVariables)newValue); - return; - case SolverLanguagePackage.AGGREGATION__BODY: - setBody((Expression)newValue); - return; - case SolverLanguagePackage.AGGREGATION__CONDITION: - setCondition((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.AGGREGATION__OP: - setOp((NamedElement)null); - return; - case SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES: - setLocalVariables((LocalVariables)null); - return; - case SolverLanguagePackage.AGGREGATION__BODY: - setBody((Expression)null); - return; - case SolverLanguagePackage.AGGREGATION__CONDITION: - setCondition((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.AGGREGATION__OP: - return op != null; - case SolverLanguagePackage.AGGREGATION__LOCAL_VARIABLES: - return localVariables != null; - case SolverLanguagePackage.AGGREGATION__BODY: - return body != null; - case SolverLanguagePackage.AGGREGATION__CONDITION: - return condition != null; - } - return super.eIsSet(featureID); - } - -} //AggregationImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java deleted file mode 100644 index afd14afa..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Argument; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Argument'. - * - * - * @generated - */ -public class ArgumentImpl extends MinimalEObjectImpl.Container implements Argument { - /** - * - * - * @generated - */ - protected ArgumentImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.ARGUMENT; - } - -} //ArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java deleted file mode 100644 index fce298f1..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ArgumentListImpl.java +++ /dev/null @@ -1,154 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.viatra.solver.language.solverLanguage.Argument; -import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Argument List'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ArgumentListImpl#getArguments Arguments}
  • - *
- * - * @generated - */ -public class ArgumentListImpl extends MinimalEObjectImpl.Container implements ArgumentList { - /** - * The cached value of the '{@link #getArguments() Arguments}' containment reference list. - * - * - * @see #getArguments() - * @generated - * @ordered - */ - protected EList arguments; - - /** - * - * - * @generated - */ - protected ArgumentListImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.ARGUMENT_LIST; - } - - /** - * - * - * @generated - */ - @Override - public EList getArguments() { - if (arguments == null) { - arguments = new EObjectContainmentEList(Argument.class, this, SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS); - } - return arguments; - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: - return ((InternalEList)getArguments()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: - return getArguments(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: - getArguments().clear(); - getArguments().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: - getArguments().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.ARGUMENT_LIST__ARGUMENTS: - return arguments != null && !arguments.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //ArgumentListImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java deleted file mode 100644 index e85a40f9..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BinaryExpressionImpl.java +++ /dev/null @@ -1,317 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression; -import org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Binary Expression'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getLeft Left}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getOp Op}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BinaryExpressionImpl#getRight Right}
  • - *
- * - * @generated - */ -public class BinaryExpressionImpl extends ExpressionImpl implements BinaryExpression { - /** - * The cached value of the '{@link #getLeft() Left}' containment reference. - * - * - * @see #getLeft() - * @generated - * @ordered - */ - protected Expression left; - - /** - * The default value of the '{@link #getOp() Op}' attribute. - * - * - * @see #getOp() - * @generated - * @ordered - */ - protected static final BinaryOperator OP_EDEFAULT = BinaryOperator.EQ; - - /** - * The cached value of the '{@link #getOp() Op}' attribute. - * - * - * @see #getOp() - * @generated - * @ordered - */ - protected BinaryOperator op = OP_EDEFAULT; - - /** - * The cached value of the '{@link #getRight() Right}' containment reference. - * - * - * @see #getRight() - * @generated - * @ordered - */ - protected Expression right; - - /** - * - * - * @generated - */ - protected BinaryExpressionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.BINARY_EXPRESSION; - } - - /** - * - * - * @generated - */ - @Override - public Expression getLeft() { - return left; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetLeft(Expression newLeft, NotificationChain msgs) { - Expression oldLeft = left; - left = newLeft; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__LEFT, oldLeft, newLeft); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setLeft(Expression newLeft) { - if (newLeft != left) { - NotificationChain msgs = null; - if (left != null) - msgs = ((InternalEObject)left).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__LEFT, null, msgs); - if (newLeft != null) - msgs = ((InternalEObject)newLeft).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__LEFT, null, msgs); - msgs = basicSetLeft(newLeft, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__LEFT, newLeft, newLeft)); - } - - /** - * - * - * @generated - */ - @Override - public BinaryOperator getOp() { - return op; - } - - /** - * - * - * @generated - */ - @Override - public void setOp(BinaryOperator newOp) { - BinaryOperator oldOp = op; - op = newOp == null ? OP_EDEFAULT : newOp; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__OP, oldOp, op)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getRight() { - return right; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetRight(Expression newRight, NotificationChain msgs) { - Expression oldRight = right; - right = newRight; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, oldRight, newRight); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setRight(Expression newRight) { - if (newRight != right) { - NotificationChain msgs = null; - if (right != null) - msgs = ((InternalEObject)right).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, null, msgs); - if (newRight != null) - msgs = ((InternalEObject)newRight).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, null, msgs); - msgs = basicSetRight(newRight, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BINARY_EXPRESSION__RIGHT, newRight, newRight)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: - return basicSetLeft(null, msgs); - case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: - return basicSetRight(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: - return getLeft(); - case SolverLanguagePackage.BINARY_EXPRESSION__OP: - return getOp(); - case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: - return getRight(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: - setLeft((Expression)newValue); - return; - case SolverLanguagePackage.BINARY_EXPRESSION__OP: - setOp((BinaryOperator)newValue); - return; - case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: - setRight((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: - setLeft((Expression)null); - return; - case SolverLanguagePackage.BINARY_EXPRESSION__OP: - setOp(OP_EDEFAULT); - return; - case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: - setRight((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.BINARY_EXPRESSION__LEFT: - return left != null; - case SolverLanguagePackage.BINARY_EXPRESSION__OP: - return op != OP_EDEFAULT; - case SolverLanguagePackage.BINARY_EXPRESSION__RIGHT: - return right != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (op: "); - result.append(op); - result.append(')'); - return result.toString(); - } - -} //BinaryExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java deleted file mode 100644 index 9b4f0385..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedMultiplicityImpl.java +++ /dev/null @@ -1,221 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Bounded Multiplicity'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl#getLowerBound Lower Bound}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedMultiplicityImpl#getUpperBound Upper Bound}
  • - *
- * - * @generated - */ -public class BoundedMultiplicityImpl extends MultiplicityImpl implements BoundedMultiplicity { - /** - * The default value of the '{@link #getLowerBound() Lower Bound}' attribute. - * - * - * @see #getLowerBound() - * @generated - * @ordered - */ - protected static final int LOWER_BOUND_EDEFAULT = 0; - - /** - * The cached value of the '{@link #getLowerBound() Lower Bound}' attribute. - * - * - * @see #getLowerBound() - * @generated - * @ordered - */ - protected int lowerBound = LOWER_BOUND_EDEFAULT; - - /** - * The default value of the '{@link #getUpperBound() Upper Bound}' attribute. - * - * - * @see #getUpperBound() - * @generated - * @ordered - */ - protected static final int UPPER_BOUND_EDEFAULT = 0; - - /** - * The cached value of the '{@link #getUpperBound() Upper Bound}' attribute. - * - * - * @see #getUpperBound() - * @generated - * @ordered - */ - protected int upperBound = UPPER_BOUND_EDEFAULT; - - /** - * - * - * @generated - */ - protected BoundedMultiplicityImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.BOUNDED_MULTIPLICITY; - } - - /** - * - * - * @generated - */ - @Override - public int getLowerBound() { - return lowerBound; - } - - /** - * - * - * @generated - */ - @Override - public void setLowerBound(int newLowerBound) { - int oldLowerBound = lowerBound; - lowerBound = newLowerBound; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND, oldLowerBound, lowerBound)); - } - - /** - * - * - * @generated - */ - @Override - public int getUpperBound() { - return upperBound; - } - - /** - * - * - * @generated - */ - @Override - public void setUpperBound(int newUpperBound) { - int oldUpperBound = upperBound; - upperBound = newUpperBound; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND, oldUpperBound, upperBound)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND: - return getLowerBound(); - case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND: - return getUpperBound(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND: - setLowerBound((Integer)newValue); - return; - case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND: - setUpperBound((Integer)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND: - setLowerBound(LOWER_BOUND_EDEFAULT); - return; - case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND: - setUpperBound(UPPER_BOUND_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.BOUNDED_MULTIPLICITY__LOWER_BOUND: - return lowerBound != LOWER_BOUND_EDEFAULT; - case SolverLanguagePackage.BOUNDED_MULTIPLICITY__UPPER_BOUND: - return upperBound != UPPER_BOUND_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (lowerBound: "); - result.append(lowerBound); - result.append(", upperBound: "); - result.append(upperBound); - result.append(')'); - return result.toString(); - } - -} //BoundedMultiplicityImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeDefinitionImpl.java deleted file mode 100644 index 7d3a981e..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/BoundedScopeDefinitionImpl.java +++ /dev/null @@ -1,221 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Bounded Scope Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeDefinitionImpl#getLowerBound Lower Bound}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.BoundedScopeDefinitionImpl#getUpperBound Upper Bound}
  • - *
- * - * @generated - */ -public class BoundedScopeDefinitionImpl extends ScopeDefinitionImpl implements BoundedScopeDefinition { - /** - * The default value of the '{@link #getLowerBound() Lower Bound}' attribute. - * - * - * @see #getLowerBound() - * @generated - * @ordered - */ - protected static final int LOWER_BOUND_EDEFAULT = 0; - - /** - * The cached value of the '{@link #getLowerBound() Lower Bound}' attribute. - * - * - * @see #getLowerBound() - * @generated - * @ordered - */ - protected int lowerBound = LOWER_BOUND_EDEFAULT; - - /** - * The default value of the '{@link #getUpperBound() Upper Bound}' attribute. - * - * - * @see #getUpperBound() - * @generated - * @ordered - */ - protected static final int UPPER_BOUND_EDEFAULT = 0; - - /** - * The cached value of the '{@link #getUpperBound() Upper Bound}' attribute. - * - * - * @see #getUpperBound() - * @generated - * @ordered - */ - protected int upperBound = UPPER_BOUND_EDEFAULT; - - /** - * - * - * @generated - */ - protected BoundedScopeDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.BOUNDED_SCOPE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public int getLowerBound() { - return lowerBound; - } - - /** - * - * - * @generated - */ - @Override - public void setLowerBound(int newLowerBound) { - int oldLowerBound = lowerBound; - lowerBound = newLowerBound; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__LOWER_BOUND, oldLowerBound, lowerBound)); - } - - /** - * - * - * @generated - */ - @Override - public int getUpperBound() { - return upperBound; - } - - /** - * - * - * @generated - */ - @Override - public void setUpperBound(int newUpperBound) { - int oldUpperBound = upperBound; - upperBound = newUpperBound; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__UPPER_BOUND, oldUpperBound, upperBound)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__LOWER_BOUND: - return getLowerBound(); - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__UPPER_BOUND: - return getUpperBound(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__LOWER_BOUND: - setLowerBound((Integer)newValue); - return; - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__UPPER_BOUND: - setUpperBound((Integer)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__LOWER_BOUND: - setLowerBound(LOWER_BOUND_EDEFAULT); - return; - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__UPPER_BOUND: - setUpperBound(UPPER_BOUND_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__LOWER_BOUND: - return lowerBound != LOWER_BOUND_EDEFAULT; - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION__UPPER_BOUND: - return upperBound != UPPER_BOUND_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (lowerBound: "); - result.append(lowerBound); - result.append(", upperBound: "); - result.append(upperBound); - result.append(')'); - return result.toString(); - } - -} //BoundedScopeDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java deleted file mode 100644 index bbc2dd4c..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CallImpl.java +++ /dev/null @@ -1,373 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; -import org.eclipse.viatra.solver.language.solverLanguage.Call; -import org.eclipse.viatra.solver.language.solverLanguage.Reference; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Call'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl#getFunctor Functor}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl#isTransitiveClosure Transitive Closure}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl#isReflexiveTransitiveClosure Reflexive Transitive Closure}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CallImpl#getArgumentList Argument List}
  • - *
- * - * @generated - */ -public class CallImpl extends ExpressionImpl implements Call { - /** - * The cached value of the '{@link #getFunctor() Functor}' containment reference. - * - * - * @see #getFunctor() - * @generated - * @ordered - */ - protected Reference functor; - - /** - * The default value of the '{@link #isTransitiveClosure() Transitive Closure}' attribute. - * - * - * @see #isTransitiveClosure() - * @generated - * @ordered - */ - protected static final boolean TRANSITIVE_CLOSURE_EDEFAULT = false; - - /** - * The cached value of the '{@link #isTransitiveClosure() Transitive Closure}' attribute. - * - * - * @see #isTransitiveClosure() - * @generated - * @ordered - */ - protected boolean transitiveClosure = TRANSITIVE_CLOSURE_EDEFAULT; - - /** - * The default value of the '{@link #isReflexiveTransitiveClosure() Reflexive Transitive Closure}' attribute. - * - * - * @see #isReflexiveTransitiveClosure() - * @generated - * @ordered - */ - protected static final boolean REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT = false; - - /** - * The cached value of the '{@link #isReflexiveTransitiveClosure() Reflexive Transitive Closure}' attribute. - * - * - * @see #isReflexiveTransitiveClosure() - * @generated - * @ordered - */ - protected boolean reflexiveTransitiveClosure = REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT; - - /** - * The cached value of the '{@link #getArgumentList() Argument List}' containment reference. - * - * - * @see #getArgumentList() - * @generated - * @ordered - */ - protected ArgumentList argumentList; - - /** - * - * - * @generated - */ - protected CallImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.CALL; - } - - /** - * - * - * @generated - */ - @Override - public Reference getFunctor() { - return functor; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetFunctor(Reference newFunctor, NotificationChain msgs) { - Reference oldFunctor = functor; - functor = newFunctor; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__FUNCTOR, oldFunctor, newFunctor); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setFunctor(Reference newFunctor) { - if (newFunctor != functor) { - NotificationChain msgs = null; - if (functor != null) - msgs = ((InternalEObject)functor).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__FUNCTOR, null, msgs); - if (newFunctor != null) - msgs = ((InternalEObject)newFunctor).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__FUNCTOR, null, msgs); - msgs = basicSetFunctor(newFunctor, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__FUNCTOR, newFunctor, newFunctor)); - } - - /** - * - * - * @generated - */ - @Override - public boolean isTransitiveClosure() { - return transitiveClosure; - } - - /** - * - * - * @generated - */ - @Override - public void setTransitiveClosure(boolean newTransitiveClosure) { - boolean oldTransitiveClosure = transitiveClosure; - transitiveClosure = newTransitiveClosure; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__TRANSITIVE_CLOSURE, oldTransitiveClosure, transitiveClosure)); - } - - /** - * - * - * @generated - */ - @Override - public boolean isReflexiveTransitiveClosure() { - return reflexiveTransitiveClosure; - } - - /** - * - * - * @generated - */ - @Override - public void setReflexiveTransitiveClosure(boolean newReflexiveTransitiveClosure) { - boolean oldReflexiveTransitiveClosure = reflexiveTransitiveClosure; - reflexiveTransitiveClosure = newReflexiveTransitiveClosure; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__REFLEXIVE_TRANSITIVE_CLOSURE, oldReflexiveTransitiveClosure, reflexiveTransitiveClosure)); - } - - /** - * - * - * @generated - */ - @Override - public ArgumentList getArgumentList() { - return argumentList; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) { - ArgumentList oldArgumentList = argumentList; - argumentList = newArgumentList; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__ARGUMENT_LIST, oldArgumentList, newArgumentList); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setArgumentList(ArgumentList newArgumentList) { - if (newArgumentList != argumentList) { - NotificationChain msgs = null; - if (argumentList != null) - msgs = ((InternalEObject)argumentList).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__ARGUMENT_LIST, null, msgs); - if (newArgumentList != null) - msgs = ((InternalEObject)newArgumentList).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CALL__ARGUMENT_LIST, null, msgs); - msgs = basicSetArgumentList(newArgumentList, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CALL__ARGUMENT_LIST, newArgumentList, newArgumentList)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.CALL__FUNCTOR: - return basicSetFunctor(null, msgs); - case SolverLanguagePackage.CALL__ARGUMENT_LIST: - return basicSetArgumentList(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.CALL__FUNCTOR: - return getFunctor(); - case SolverLanguagePackage.CALL__TRANSITIVE_CLOSURE: - return isTransitiveClosure(); - case SolverLanguagePackage.CALL__REFLEXIVE_TRANSITIVE_CLOSURE: - return isReflexiveTransitiveClosure(); - case SolverLanguagePackage.CALL__ARGUMENT_LIST: - return getArgumentList(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.CALL__FUNCTOR: - setFunctor((Reference)newValue); - return; - case SolverLanguagePackage.CALL__TRANSITIVE_CLOSURE: - setTransitiveClosure((Boolean)newValue); - return; - case SolverLanguagePackage.CALL__REFLEXIVE_TRANSITIVE_CLOSURE: - setReflexiveTransitiveClosure((Boolean)newValue); - return; - case SolverLanguagePackage.CALL__ARGUMENT_LIST: - setArgumentList((ArgumentList)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CALL__FUNCTOR: - setFunctor((Reference)null); - return; - case SolverLanguagePackage.CALL__TRANSITIVE_CLOSURE: - setTransitiveClosure(TRANSITIVE_CLOSURE_EDEFAULT); - return; - case SolverLanguagePackage.CALL__REFLEXIVE_TRANSITIVE_CLOSURE: - setReflexiveTransitiveClosure(REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT); - return; - case SolverLanguagePackage.CALL__ARGUMENT_LIST: - setArgumentList((ArgumentList)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CALL__FUNCTOR: - return functor != null; - case SolverLanguagePackage.CALL__TRANSITIVE_CLOSURE: - return transitiveClosure != TRANSITIVE_CLOSURE_EDEFAULT; - case SolverLanguagePackage.CALL__REFLEXIVE_TRANSITIVE_CLOSURE: - return reflexiveTransitiveClosure != REFLEXIVE_TRANSITIVE_CLOSURE_EDEFAULT; - case SolverLanguagePackage.CALL__ARGUMENT_LIST: - return argumentList != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (transitiveClosure: "); - result.append(transitiveClosure); - result.append(", reflexiveTransitiveClosure: "); - result.append(reflexiveTransitiveClosure); - result.append(')'); - return result.toString(); - } - -} //CallImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java deleted file mode 100644 index d6905f3b..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CaseImpl.java +++ /dev/null @@ -1,246 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Case; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Case'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CaseImpl#getCondition Condition}
  • - *
- * - * @generated - */ -public class CaseImpl extends ExpressionImpl implements Case { - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * The cached value of the '{@link #getCondition() Condition}' containment reference. - * - * - * @see #getCondition() - * @generated - * @ordered - */ - protected Expression condition; - - /** - * - * - * @generated - */ - protected CaseImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.CASE; - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CASE__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CASE__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getCondition() { - return condition; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) { - Expression oldCondition = condition; - condition = newCondition; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CASE__CONDITION, oldCondition, newCondition); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setCondition(Expression newCondition) { - if (newCondition != condition) { - NotificationChain msgs = null; - if (condition != null) - msgs = ((InternalEObject)condition).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__CONDITION, null, msgs); - if (newCondition != null) - msgs = ((InternalEObject)newCondition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CASE__CONDITION, null, msgs); - msgs = basicSetCondition(newCondition, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CASE__CONDITION, newCondition, newCondition)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.CASE__BODY: - return basicSetBody(null, msgs); - case SolverLanguagePackage.CASE__CONDITION: - return basicSetCondition(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.CASE__BODY: - return getBody(); - case SolverLanguagePackage.CASE__CONDITION: - return getCondition(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.CASE__BODY: - setBody((Expression)newValue); - return; - case SolverLanguagePackage.CASE__CONDITION: - setCondition((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CASE__BODY: - setBody((Expression)null); - return; - case SolverLanguagePackage.CASE__CONDITION: - setCondition((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CASE__BODY: - return body != null; - case SolverLanguagePackage.CASE__CONDITION: - return condition != null; - } - return super.eIsSet(featureID); - } - -} //CaseImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java deleted file mode 100644 index 39e20e46..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/CastExpressionImpl.java +++ /dev/null @@ -1,241 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.CastExpression; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Cast Expression'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.CastExpressionImpl#getType Type}
  • - *
- * - * @generated - */ -public class CastExpressionImpl extends ExpressionImpl implements CastExpression { - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * - * - * @generated - */ - protected CastExpressionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.CAST_EXPRESSION; - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CAST_EXPRESSION__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CAST_EXPRESSION__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.CAST_EXPRESSION__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CAST_EXPRESSION__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.CAST_EXPRESSION__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CAST_EXPRESSION__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.CAST_EXPRESSION__BODY: - return basicSetBody(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.CAST_EXPRESSION__BODY: - return getBody(); - case SolverLanguagePackage.CAST_EXPRESSION__TYPE: - if (resolve) return getType(); - return basicGetType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.CAST_EXPRESSION__BODY: - setBody((Expression)newValue); - return; - case SolverLanguagePackage.CAST_EXPRESSION__TYPE: - setType((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CAST_EXPRESSION__BODY: - setBody((Expression)null); - return; - case SolverLanguagePackage.CAST_EXPRESSION__TYPE: - setType((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CAST_EXPRESSION__BODY: - return body != null; - case SolverLanguagePackage.CAST_EXPRESSION__TYPE: - return type != null; - } - return super.eIsSet(featureID); - } - -} //CastExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDefinitionImpl.java deleted file mode 100644 index 9fe48f0b..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ClassDefinitionImpl.java +++ /dev/null @@ -1,318 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.EObjectResolvingEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Class Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDefinitionImpl#isAbstract Abstract}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDefinitionImpl#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDefinitionImpl#getSuperclasses Superclasses}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ClassDefinitionImpl#getMembers Members}
  • - *
- * - * @generated - */ -public class ClassDefinitionImpl extends StatementImpl implements ClassDefinition { - /** - * The default value of the '{@link #isAbstract() Abstract}' attribute. - * - * - * @see #isAbstract() - * @generated - * @ordered - */ - protected static final boolean ABSTRACT_EDEFAULT = false; - - /** - * The cached value of the '{@link #isAbstract() Abstract}' attribute. - * - * - * @see #isAbstract() - * @generated - * @ordered - */ - protected boolean abstract_ = ABSTRACT_EDEFAULT; - - /** - * The default value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected static final String NAME_EDEFAULT = null; - - /** - * The cached value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected String name = NAME_EDEFAULT; - - /** - * The cached value of the '{@link #getSuperclasses() Superclasses}' reference list. - * - * - * @see #getSuperclasses() - * @generated - * @ordered - */ - protected EList superclasses; - - /** - * The cached value of the '{@link #getMembers() Members}' containment reference list. - * - * - * @see #getMembers() - * @generated - * @ordered - */ - protected EList members; - - /** - * - * - * @generated - */ - protected ClassDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.CLASS_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public boolean isAbstract() { - return abstract_; - } - - /** - * - * - * @generated - */ - @Override - public void setAbstract(boolean newAbstract) { - boolean oldAbstract = abstract_; - abstract_ = newAbstract; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_DEFINITION__ABSTRACT, oldAbstract, abstract_)); - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public void setName(String newName) { - String oldName = name; - name = newName; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.CLASS_DEFINITION__NAME, oldName, name)); - } - - /** - * - * - * @generated - */ - @Override - public EList getSuperclasses() { - if (superclasses == null) { - superclasses = new EObjectResolvingEList(NamedElement.class, this, SolverLanguagePackage.CLASS_DEFINITION__SUPERCLASSES); - } - return superclasses; - } - - /** - * - * - * @generated - */ - @Override - public EList getMembers() { - if (members == null) { - members = new EObjectContainmentEList(MemberDefinition.class, this, SolverLanguagePackage.CLASS_DEFINITION__MEMBERS); - } - return members; - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.CLASS_DEFINITION__MEMBERS: - return ((InternalEList)getMembers()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.CLASS_DEFINITION__ABSTRACT: - return isAbstract(); - case SolverLanguagePackage.CLASS_DEFINITION__NAME: - return getName(); - case SolverLanguagePackage.CLASS_DEFINITION__SUPERCLASSES: - return getSuperclasses(); - case SolverLanguagePackage.CLASS_DEFINITION__MEMBERS: - return getMembers(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.CLASS_DEFINITION__ABSTRACT: - setAbstract((Boolean)newValue); - return; - case SolverLanguagePackage.CLASS_DEFINITION__NAME: - setName((String)newValue); - return; - case SolverLanguagePackage.CLASS_DEFINITION__SUPERCLASSES: - getSuperclasses().clear(); - getSuperclasses().addAll((Collection)newValue); - return; - case SolverLanguagePackage.CLASS_DEFINITION__MEMBERS: - getMembers().clear(); - getMembers().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CLASS_DEFINITION__ABSTRACT: - setAbstract(ABSTRACT_EDEFAULT); - return; - case SolverLanguagePackage.CLASS_DEFINITION__NAME: - setName(NAME_EDEFAULT); - return; - case SolverLanguagePackage.CLASS_DEFINITION__SUPERCLASSES: - getSuperclasses().clear(); - return; - case SolverLanguagePackage.CLASS_DEFINITION__MEMBERS: - getMembers().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CLASS_DEFINITION__ABSTRACT: - return abstract_ != ABSTRACT_EDEFAULT; - case SolverLanguagePackage.CLASS_DEFINITION__NAME: - return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); - case SolverLanguagePackage.CLASS_DEFINITION__SUPERCLASSES: - return superclasses != null && !superclasses.isEmpty(); - case SolverLanguagePackage.CLASS_DEFINITION__MEMBERS: - return members != null && !members.isEmpty(); - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (abstract: "); - result.append(abstract_); - result.append(", name: "); - result.append(name); - result.append(')'); - return result.toString(); - } - -} //ClassDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ComparisonImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ComparisonImpl.java deleted file mode 100644 index 37cc2e07..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ComparisonImpl.java +++ /dev/null @@ -1,317 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator; -import org.eclipse.viatra.solver.language.solverLanguage.Comparison; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Comparison'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ComparisonImpl#getLeft Left}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ComparisonImpl#getOp Op}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ComparisonImpl#getRight Right}
  • - *
- * - * @generated - */ -public class ComparisonImpl extends ExpressionImpl implements Comparison { - /** - * The cached value of the '{@link #getLeft() Left}' containment reference. - * - * - * @see #getLeft() - * @generated - * @ordered - */ - protected Expression left; - - /** - * The default value of the '{@link #getOp() Op}' attribute. - * - * - * @see #getOp() - * @generated - * @ordered - */ - protected static final BinaryOperator OP_EDEFAULT = BinaryOperator.EQ; - - /** - * The cached value of the '{@link #getOp() Op}' attribute. - * - * - * @see #getOp() - * @generated - * @ordered - */ - protected BinaryOperator op = OP_EDEFAULT; - - /** - * The cached value of the '{@link #getRight() Right}' containment reference. - * - * - * @see #getRight() - * @generated - * @ordered - */ - protected Expression right; - - /** - * - * - * @generated - */ - protected ComparisonImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.COMPARISON; - } - - /** - * - * - * @generated - */ - @Override - public Expression getLeft() { - return left; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetLeft(Expression newLeft, NotificationChain msgs) { - Expression oldLeft = left; - left = newLeft; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.COMPARISON__LEFT, oldLeft, newLeft); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setLeft(Expression newLeft) { - if (newLeft != left) { - NotificationChain msgs = null; - if (left != null) - msgs = ((InternalEObject)left).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.COMPARISON__LEFT, null, msgs); - if (newLeft != null) - msgs = ((InternalEObject)newLeft).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.COMPARISON__LEFT, null, msgs); - msgs = basicSetLeft(newLeft, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.COMPARISON__LEFT, newLeft, newLeft)); - } - - /** - * - * - * @generated - */ - @Override - public BinaryOperator getOp() { - return op; - } - - /** - * - * - * @generated - */ - @Override - public void setOp(BinaryOperator newOp) { - BinaryOperator oldOp = op; - op = newOp == null ? OP_EDEFAULT : newOp; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.COMPARISON__OP, oldOp, op)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getRight() { - return right; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetRight(Expression newRight, NotificationChain msgs) { - Expression oldRight = right; - right = newRight; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.COMPARISON__RIGHT, oldRight, newRight); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setRight(Expression newRight) { - if (newRight != right) { - NotificationChain msgs = null; - if (right != null) - msgs = ((InternalEObject)right).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.COMPARISON__RIGHT, null, msgs); - if (newRight != null) - msgs = ((InternalEObject)newRight).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.COMPARISON__RIGHT, null, msgs); - msgs = basicSetRight(newRight, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.COMPARISON__RIGHT, newRight, newRight)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.COMPARISON__LEFT: - return basicSetLeft(null, msgs); - case SolverLanguagePackage.COMPARISON__RIGHT: - return basicSetRight(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.COMPARISON__LEFT: - return getLeft(); - case SolverLanguagePackage.COMPARISON__OP: - return getOp(); - case SolverLanguagePackage.COMPARISON__RIGHT: - return getRight(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.COMPARISON__LEFT: - setLeft((Expression)newValue); - return; - case SolverLanguagePackage.COMPARISON__OP: - setOp((BinaryOperator)newValue); - return; - case SolverLanguagePackage.COMPARISON__RIGHT: - setRight((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.COMPARISON__LEFT: - setLeft((Expression)null); - return; - case SolverLanguagePackage.COMPARISON__OP: - setOp(OP_EDEFAULT); - return; - case SolverLanguagePackage.COMPARISON__RIGHT: - setRight((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.COMPARISON__LEFT: - return left != null; - case SolverLanguagePackage.COMPARISON__OP: - return op != OP_EDEFAULT; - case SolverLanguagePackage.COMPARISON__RIGHT: - return right != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (op: "); - result.append(op); - result.append(')'); - return result.toString(); - } - -} //ComparisonImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java deleted file mode 100644 index cc689c0d..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ConjunctionImpl.java +++ /dev/null @@ -1,152 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.viatra.solver.language.solverLanguage.Conjunction; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Conjunction'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ConjunctionImpl#getChildren Children}
  • - *
- * - * @generated - */ -public class ConjunctionImpl extends ExpressionImpl implements Conjunction { - /** - * The cached value of the '{@link #getChildren() Children}' containment reference list. - * - * - * @see #getChildren() - * @generated - * @ordered - */ - protected EList children; - - /** - * - * - * @generated - */ - protected ConjunctionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.CONJUNCTION; - } - - /** - * - * - * @generated - */ - @Override - public EList getChildren() { - if (children == null) { - children = new EObjectContainmentEList(Expression.class, this, SolverLanguagePackage.CONJUNCTION__CHILDREN); - } - return children; - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.CONJUNCTION__CHILDREN: - return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.CONJUNCTION__CHILDREN: - return getChildren(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.CONJUNCTION__CHILDREN: - getChildren().clear(); - getChildren().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CONJUNCTION__CHILDREN: - getChildren().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.CONJUNCTION__CHILDREN: - return children != null && !children.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //ConjunctionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultDefinitionImpl.java deleted file mode 100644 index f1ad7bea..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DefaultDefinitionImpl.java +++ /dev/null @@ -1,247 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Call; -import org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Default Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultDefinitionImpl#getHead Head}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.DefaultDefinitionImpl#getRange Range}
  • - *
- * - * @generated - */ -public class DefaultDefinitionImpl extends StatementImpl implements DefaultDefinition { - /** - * The cached value of the '{@link #getHead() Head}' containment reference. - * - * - * @see #getHead() - * @generated - * @ordered - */ - protected Call head; - - /** - * The cached value of the '{@link #getRange() Range}' containment reference. - * - * - * @see #getRange() - * @generated - * @ordered - */ - protected Expression range; - - /** - * - * - * @generated - */ - protected DefaultDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.DEFAULT_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public Call getHead() { - return head; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetHead(Call newHead, NotificationChain msgs) { - Call oldHead = head; - head = newHead; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.DEFAULT_DEFINITION__HEAD, oldHead, newHead); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setHead(Call newHead) { - if (newHead != head) { - NotificationChain msgs = null; - if (head != null) - msgs = ((InternalEObject)head).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.DEFAULT_DEFINITION__HEAD, null, msgs); - if (newHead != null) - msgs = ((InternalEObject)newHead).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.DEFAULT_DEFINITION__HEAD, null, msgs); - msgs = basicSetHead(newHead, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.DEFAULT_DEFINITION__HEAD, newHead, newHead)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getRange() { - return range; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetRange(Expression newRange, NotificationChain msgs) { - Expression oldRange = range; - range = newRange; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.DEFAULT_DEFINITION__RANGE, oldRange, newRange); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setRange(Expression newRange) { - if (newRange != range) { - NotificationChain msgs = null; - if (range != null) - msgs = ((InternalEObject)range).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.DEFAULT_DEFINITION__RANGE, null, msgs); - if (newRange != null) - msgs = ((InternalEObject)newRange).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.DEFAULT_DEFINITION__RANGE, null, msgs); - msgs = basicSetRange(newRange, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.DEFAULT_DEFINITION__RANGE, newRange, newRange)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.DEFAULT_DEFINITION__HEAD: - return basicSetHead(null, msgs); - case SolverLanguagePackage.DEFAULT_DEFINITION__RANGE: - return basicSetRange(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.DEFAULT_DEFINITION__HEAD: - return getHead(); - case SolverLanguagePackage.DEFAULT_DEFINITION__RANGE: - return getRange(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.DEFAULT_DEFINITION__HEAD: - setHead((Call)newValue); - return; - case SolverLanguagePackage.DEFAULT_DEFINITION__RANGE: - setRange((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.DEFAULT_DEFINITION__HEAD: - setHead((Call)null); - return; - case SolverLanguagePackage.DEFAULT_DEFINITION__RANGE: - setRange((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.DEFAULT_DEFINITION__HEAD: - return head != null; - case SolverLanguagePackage.DEFAULT_DEFINITION__RANGE: - return range != null; - } - return super.eIsSet(featureID); - } - -} //DefaultDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java deleted file mode 100644 index 47dd7bcc..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/DisjunctionImpl.java +++ /dev/null @@ -1,152 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.viatra.solver.language.solverLanguage.Disjunction; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Disjunction'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.DisjunctionImpl#getChildren Children}
  • - *
- * - * @generated - */ -public class DisjunctionImpl extends ExpressionImpl implements Disjunction { - /** - * The cached value of the '{@link #getChildren() Children}' containment reference list. - * - * - * @see #getChildren() - * @generated - * @ordered - */ - protected EList children; - - /** - * - * - * @generated - */ - protected DisjunctionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.DISJUNCTION; - } - - /** - * - * - * @generated - */ - @Override - public EList getChildren() { - if (children == null) { - children = new EObjectContainmentEList(Expression.class, this, SolverLanguagePackage.DISJUNCTION__CHILDREN); - } - return children; - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.DISJUNCTION__CHILDREN: - return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.DISJUNCTION__CHILDREN: - return getChildren(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.DISJUNCTION__CHILDREN: - getChildren().clear(); - getChildren().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.DISJUNCTION__CHILDREN: - getChildren().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.DISJUNCTION__CHILDREN: - return children != null && !children.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //DisjunctionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyIntervalLiteralImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyIntervalLiteralImpl.java deleted file mode 100644 index 26717519..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/EmptyIntervalLiteralImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Empty Interval Literal'. - * - * - * @generated - */ -public class EmptyIntervalLiteralImpl extends LiteralImpl implements EmptyIntervalLiteral { - /** - * - * - * @generated - */ - protected EmptyIntervalLiteralImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EMPTY_INTERVAL_LITERAL; - } - -} //EmptyIntervalLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java deleted file mode 100644 index fdeeae5e..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactMultiplicityImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Exact Multiplicity'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactMultiplicityImpl#getMultiplicity Multiplicity}
  • - *
- * - * @generated - */ -public class ExactMultiplicityImpl extends MultiplicityImpl implements ExactMultiplicity { - /** - * The default value of the '{@link #getMultiplicity() Multiplicity}' attribute. - * - * - * @see #getMultiplicity() - * @generated - * @ordered - */ - protected static final int MULTIPLICITY_EDEFAULT = 0; - - /** - * The cached value of the '{@link #getMultiplicity() Multiplicity}' attribute. - * - * - * @see #getMultiplicity() - * @generated - * @ordered - */ - protected int multiplicity = MULTIPLICITY_EDEFAULT; - - /** - * - * - * @generated - */ - protected ExactMultiplicityImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EXACT_MULTIPLICITY; - } - - /** - * - * - * @generated - */ - @Override - public int getMultiplicity() { - return multiplicity; - } - - /** - * - * - * @generated - */ - @Override - public void setMultiplicity(int newMultiplicity) { - int oldMultiplicity = multiplicity; - multiplicity = newMultiplicity; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXACT_MULTIPLICITY__MULTIPLICITY, oldMultiplicity, multiplicity)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.EXACT_MULTIPLICITY__MULTIPLICITY: - return getMultiplicity(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.EXACT_MULTIPLICITY__MULTIPLICITY: - setMultiplicity((Integer)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXACT_MULTIPLICITY__MULTIPLICITY: - setMultiplicity(MULTIPLICITY_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXACT_MULTIPLICITY__MULTIPLICITY: - return multiplicity != MULTIPLICITY_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (multiplicity: "); - result.append(multiplicity); - result.append(')'); - return result.toString(); - } - -} //ExactMultiplicityImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeDefinitionImpl.java deleted file mode 100644 index d5a375b0..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExactScopeDefinitionImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Exact Scope Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExactScopeDefinitionImpl#getExactScope Exact Scope}
  • - *
- * - * @generated - */ -public class ExactScopeDefinitionImpl extends ScopeDefinitionImpl implements ExactScopeDefinition { - /** - * The default value of the '{@link #getExactScope() Exact Scope}' attribute. - * - * - * @see #getExactScope() - * @generated - * @ordered - */ - protected static final int EXACT_SCOPE_EDEFAULT = 0; - - /** - * The cached value of the '{@link #getExactScope() Exact Scope}' attribute. - * - * - * @see #getExactScope() - * @generated - * @ordered - */ - protected int exactScope = EXACT_SCOPE_EDEFAULT; - - /** - * - * - * @generated - */ - protected ExactScopeDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EXACT_SCOPE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public int getExactScope() { - return exactScope; - } - - /** - * - * - * @generated - */ - @Override - public void setExactScope(int newExactScope) { - int oldExactScope = exactScope; - exactScope = newExactScope; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXACT_SCOPE_DEFINITION__EXACT_SCOPE, oldExactScope, exactScope)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.EXACT_SCOPE_DEFINITION__EXACT_SCOPE: - return getExactScope(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.EXACT_SCOPE_DEFINITION__EXACT_SCOPE: - setExactScope((Integer)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXACT_SCOPE_DEFINITION__EXACT_SCOPE: - setExactScope(EXACT_SCOPE_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXACT_SCOPE_DEFINITION__EXACT_SCOPE: - return exactScope != EXACT_SCOPE_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (exactScope: "); - result.append(exactScope); - result.append(')'); - return result.toString(); - } - -} //ExactScopeDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java deleted file mode 100644 index 798b4b68..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionArgumentImpl.java +++ /dev/null @@ -1,178 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Expression Argument'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExpressionArgumentImpl#getBody Body}
  • - *
- * - * @generated - */ -public class ExpressionArgumentImpl extends ArgumentImpl implements ExpressionArgument { - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * - * - * @generated - */ - protected ExpressionArgumentImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EXPRESSION_ARGUMENT; - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY: - return basicSetBody(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY: - return getBody(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY: - setBody((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY: - setBody((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXPRESSION_ARGUMENT__BODY: - return body != null; - } - return super.eIsSet(featureID); - } - -} //ExpressionArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java deleted file mode 100644 index 5b1c5969..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExpressionImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Expression'. - * - * - * @generated - */ -public abstract class ExpressionImpl extends StatementImpl implements Expression { - /** - * - * - * @generated - */ - protected ExpressionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EXPRESSION; - } - -} //ExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregatorDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregatorDefinitionImpl.java deleted file mode 100644 index 2b4efc07..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternAggregatorDefinitionImpl.java +++ /dev/null @@ -1,291 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Extern Aggregator Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregatorDefinitionImpl#getType Type}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregatorDefinitionImpl#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternAggregatorDefinitionImpl#getInputType Input Type}
  • - *
- * - * @generated - */ -public class ExternAggregatorDefinitionImpl extends StatementImpl implements ExternAggregatorDefinition { - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * The default value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected static final String NAME_EDEFAULT = null; - - /** - * The cached value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected String name = NAME_EDEFAULT; - - /** - * The cached value of the '{@link #getInputType() Input Type}' reference. - * - * - * @see #getInputType() - * @generated - * @ordered - */ - protected NamedElement inputType; - - /** - * - * - * @generated - */ - protected ExternAggregatorDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public void setName(String newName) { - String oldName = name; - name = newName; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__NAME, oldName, name)); - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getInputType() { - if (inputType != null && inputType.eIsProxy()) { - InternalEObject oldInputType = (InternalEObject)inputType; - inputType = (NamedElement)eResolveProxy(oldInputType); - if (inputType != oldInputType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE, oldInputType, inputType)); - } - } - return inputType; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetInputType() { - return inputType; - } - - /** - * - * - * @generated - */ - @Override - public void setInputType(NamedElement newInputType) { - NamedElement oldInputType = inputType; - inputType = newInputType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE, oldInputType, inputType)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__TYPE: - if (resolve) return getType(); - return basicGetType(); - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__NAME: - return getName(); - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE: - if (resolve) return getInputType(); - return basicGetInputType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__TYPE: - setType((NamedElement)newValue); - return; - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__NAME: - setName((String)newValue); - return; - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE: - setInputType((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__TYPE: - setType((NamedElement)null); - return; - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__NAME: - setName(NAME_EDEFAULT); - return; - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE: - setInputType((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__TYPE: - return type != null; - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__NAME: - return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE: - return inputType != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (name: "); - result.append(name); - result.append(')'); - return result.toString(); - } - -} //ExternAggregatorDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDefinitionImpl.java deleted file mode 100644 index d186fb95..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternDatatypeDefinitionImpl.java +++ /dev/null @@ -1,208 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.emf.ecore.util.EObjectResolvingEList; - -import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Extern Datatype Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDefinitionImpl#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternDatatypeDefinitionImpl#getSupertypes Supertypes}
  • - *
- * - * @generated - */ -public class ExternDatatypeDefinitionImpl extends StatementImpl implements ExternDatatypeDefinition { - /** - * The default value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected static final String NAME_EDEFAULT = null; - - /** - * The cached value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected String name = NAME_EDEFAULT; - - /** - * The cached value of the '{@link #getSupertypes() Supertypes}' reference list. - * - * - * @see #getSupertypes() - * @generated - * @ordered - */ - protected EList supertypes; - - /** - * - * - * @generated - */ - protected ExternDatatypeDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EXTERN_DATATYPE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public void setName(String newName) { - String oldName = name; - name = newName; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__NAME, oldName, name)); - } - - /** - * - * - * @generated - */ - @Override - public EList getSupertypes() { - if (supertypes == null) { - supertypes = new EObjectResolvingEList(NamedElement.class, this, SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__SUPERTYPES); - } - return supertypes; - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__NAME: - return getName(); - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__SUPERTYPES: - return getSupertypes(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__NAME: - setName((String)newValue); - return; - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__SUPERTYPES: - getSupertypes().clear(); - getSupertypes().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__NAME: - setName(NAME_EDEFAULT); - return; - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__SUPERTYPES: - getSupertypes().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__NAME: - return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION__SUPERTYPES: - return supertypes != null && !supertypes.isEmpty(); - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (name: "); - result.append(name); - result.append(')'); - return result.toString(); - } - -} //ExternDatatypeDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternMetricDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternMetricDefinitionImpl.java deleted file mode 100644 index 97c76273..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternMetricDefinitionImpl.java +++ /dev/null @@ -1,311 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; -import org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Extern Metric Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternMetricDefinitionImpl#getType Type}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternMetricDefinitionImpl#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternMetricDefinitionImpl#getArgumentList Argument List}
  • - *
- * - * @generated - */ -public class ExternMetricDefinitionImpl extends StatementImpl implements ExternMetricDefinition { - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * The default value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected static final String NAME_EDEFAULT = null; - - /** - * The cached value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected String name = NAME_EDEFAULT; - - /** - * The cached value of the '{@link #getArgumentList() Argument List}' containment reference. - * - * - * @see #getArgumentList() - * @generated - * @ordered - */ - protected ArgumentList argumentList; - - /** - * - * - * @generated - */ - protected ExternMetricDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.EXTERN_METRIC_DEFINITION__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_METRIC_DEFINITION__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public void setName(String newName) { - String oldName = name; - name = newName; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_METRIC_DEFINITION__NAME, oldName, name)); - } - - /** - * - * - * @generated - */ - @Override - public ArgumentList getArgumentList() { - return argumentList; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) { - ArgumentList oldArgumentList = argumentList; - argumentList = newArgumentList; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST, oldArgumentList, newArgumentList); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setArgumentList(ArgumentList newArgumentList) { - if (newArgumentList != argumentList) { - NotificationChain msgs = null; - if (argumentList != null) - msgs = ((InternalEObject)argumentList).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST, null, msgs); - if (newArgumentList != null) - msgs = ((InternalEObject)newArgumentList).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST, null, msgs); - msgs = basicSetArgumentList(newArgumentList, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST, newArgumentList, newArgumentList)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST: - return basicSetArgumentList(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__TYPE: - if (resolve) return getType(); - return basicGetType(); - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__NAME: - return getName(); - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST: - return getArgumentList(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__TYPE: - setType((NamedElement)newValue); - return; - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__NAME: - setName((String)newValue); - return; - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST: - setArgumentList((ArgumentList)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__TYPE: - setType((NamedElement)null); - return; - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__NAME: - setName(NAME_EDEFAULT); - return; - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST: - setArgumentList((ArgumentList)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__TYPE: - return type != null; - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__NAME: - return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST: - return argumentList != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (name: "); - result.append(name); - result.append(')'); - return result.toString(); - } - -} //ExternMetricDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDefinitionImpl.java deleted file mode 100644 index e59fa4e3..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ExternPredicateDefinitionImpl.java +++ /dev/null @@ -1,248 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; -import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Extern Predicate Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDefinitionImpl#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ExternPredicateDefinitionImpl#getArgumentList Argument List}
  • - *
- * - * @generated - */ -public class ExternPredicateDefinitionImpl extends StatementImpl implements ExternPredicateDefinition { - /** - * The default value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected static final String NAME_EDEFAULT = null; - - /** - * The cached value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected String name = NAME_EDEFAULT; - - /** - * The cached value of the '{@link #getArgumentList() Argument List}' containment reference. - * - * - * @see #getArgumentList() - * @generated - * @ordered - */ - protected ArgumentList argumentList; - - /** - * - * - * @generated - */ - protected ExternPredicateDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public void setName(String newName) { - String oldName = name; - name = newName; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__NAME, oldName, name)); - } - - /** - * - * - * @generated - */ - @Override - public ArgumentList getArgumentList() { - return argumentList; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) { - ArgumentList oldArgumentList = argumentList; - argumentList = newArgumentList; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST, oldArgumentList, newArgumentList); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setArgumentList(ArgumentList newArgumentList) { - if (newArgumentList != argumentList) { - NotificationChain msgs = null; - if (argumentList != null) - msgs = ((InternalEObject)argumentList).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST, null, msgs); - if (newArgumentList != null) - msgs = ((InternalEObject)newArgumentList).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST, null, msgs); - msgs = basicSetArgumentList(newArgumentList, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST, newArgumentList, newArgumentList)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST: - return basicSetArgumentList(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__NAME: - return getName(); - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST: - return getArgumentList(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__NAME: - setName((String)newValue); - return; - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST: - setArgumentList((ArgumentList)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__NAME: - setName(NAME_EDEFAULT); - return; - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST: - setArgumentList((ArgumentList)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__NAME: - return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST: - return argumentList != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (name: "); - result.append(name); - result.append(')'); - return result.toString(); - } - -} //ExternPredicateDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java deleted file mode 100644 index 73bbc04f..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/FunctorImpl.java +++ /dev/null @@ -1,134 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.util.EObjectResolvingEList; - -import org.eclipse.viatra.solver.language.solverLanguage.Functor; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.Variable; - -/** - * - * An implementation of the model object 'Functor'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.FunctorImpl#getParameters Parameters}
  • - *
- * - * @generated - */ -public abstract class FunctorImpl extends NamedElementImpl implements Functor { - /** - * The cached value of the '{@link #getParameters() Parameters}' reference list. - * - * - * @see #getParameters() - * @generated - * @ordered - */ - protected EList parameters; - - /** - * - * - * @generated - */ - protected FunctorImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.FUNCTOR; - } - - /** - * - * - * @generated - */ - @Override - public EList getParameters() { - if (parameters == null) { - parameters = new EObjectResolvingEList(Variable.class, this, SolverLanguagePackage.FUNCTOR__PARAMETERS); - } - return parameters; - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.FUNCTOR__PARAMETERS: - return getParameters(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.FUNCTOR__PARAMETERS: - getParameters().clear(); - getParameters().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.FUNCTOR__PARAMETERS: - getParameters().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.FUNCTOR__PARAMETERS: - return parameters != null && !parameters.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //FunctorImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IfElseImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IfElseImpl.java deleted file mode 100644 index 3c6bb17a..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IfElseImpl.java +++ /dev/null @@ -1,314 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.IfElse; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'If Else'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.IfElseImpl#getThen Then}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.IfElseImpl#getElse Else}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.IfElseImpl#getCondition Condition}
  • - *
- * - * @generated - */ -public class IfElseImpl extends ExpressionImpl implements IfElse { - /** - * The cached value of the '{@link #getThen() Then}' containment reference. - * - * - * @see #getThen() - * @generated - * @ordered - */ - protected Expression then; - - /** - * The cached value of the '{@link #getElse() Else}' containment reference. - * - * - * @see #getElse() - * @generated - * @ordered - */ - protected Expression else_; - - /** - * The cached value of the '{@link #getCondition() Condition}' containment reference. - * - * - * @see #getCondition() - * @generated - * @ordered - */ - protected Expression condition; - - /** - * - * - * @generated - */ - protected IfElseImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.IF_ELSE; - } - - /** - * - * - * @generated - */ - @Override - public Expression getThen() { - return then; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetThen(Expression newThen, NotificationChain msgs) { - Expression oldThen = then; - then = newThen; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.IF_ELSE__THEN, oldThen, newThen); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setThen(Expression newThen) { - if (newThen != then) { - NotificationChain msgs = null; - if (then != null) - msgs = ((InternalEObject)then).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.IF_ELSE__THEN, null, msgs); - if (newThen != null) - msgs = ((InternalEObject)newThen).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.IF_ELSE__THEN, null, msgs); - msgs = basicSetThen(newThen, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.IF_ELSE__THEN, newThen, newThen)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getElse() { - return else_; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetElse(Expression newElse, NotificationChain msgs) { - Expression oldElse = else_; - else_ = newElse; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.IF_ELSE__ELSE, oldElse, newElse); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setElse(Expression newElse) { - if (newElse != else_) { - NotificationChain msgs = null; - if (else_ != null) - msgs = ((InternalEObject)else_).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.IF_ELSE__ELSE, null, msgs); - if (newElse != null) - msgs = ((InternalEObject)newElse).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.IF_ELSE__ELSE, null, msgs); - msgs = basicSetElse(newElse, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.IF_ELSE__ELSE, newElse, newElse)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getCondition() { - return condition; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetCondition(Expression newCondition, NotificationChain msgs) { - Expression oldCondition = condition; - condition = newCondition; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.IF_ELSE__CONDITION, oldCondition, newCondition); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setCondition(Expression newCondition) { - if (newCondition != condition) { - NotificationChain msgs = null; - if (condition != null) - msgs = ((InternalEObject)condition).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.IF_ELSE__CONDITION, null, msgs); - if (newCondition != null) - msgs = ((InternalEObject)newCondition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.IF_ELSE__CONDITION, null, msgs); - msgs = basicSetCondition(newCondition, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.IF_ELSE__CONDITION, newCondition, newCondition)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.IF_ELSE__THEN: - return basicSetThen(null, msgs); - case SolverLanguagePackage.IF_ELSE__ELSE: - return basicSetElse(null, msgs); - case SolverLanguagePackage.IF_ELSE__CONDITION: - return basicSetCondition(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.IF_ELSE__THEN: - return getThen(); - case SolverLanguagePackage.IF_ELSE__ELSE: - return getElse(); - case SolverLanguagePackage.IF_ELSE__CONDITION: - return getCondition(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.IF_ELSE__THEN: - setThen((Expression)newValue); - return; - case SolverLanguagePackage.IF_ELSE__ELSE: - setElse((Expression)newValue); - return; - case SolverLanguagePackage.IF_ELSE__CONDITION: - setCondition((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.IF_ELSE__THEN: - setThen((Expression)null); - return; - case SolverLanguagePackage.IF_ELSE__ELSE: - setElse((Expression)null); - return; - case SolverLanguagePackage.IF_ELSE__CONDITION: - setCondition((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.IF_ELSE__THEN: - return then != null; - case SolverLanguagePackage.IF_ELSE__ELSE: - return else_ != null; - case SolverLanguagePackage.IF_ELSE__CONDITION: - return condition != null; - } - return super.eIsSet(featureID); - } - -} //IfElseImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java deleted file mode 100644 index 348f51df..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InfinityLiteralImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Infinity Literal'. - * - * - * @generated - */ -public class InfinityLiteralImpl extends LiteralImpl implements InfinityLiteral { - /** - * - * - * @generated - */ - protected InfinityLiteralImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.INFINITY_LITERAL; - } - -} //InfinityLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InterpretationImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InterpretationImpl.java deleted file mode 100644 index fab8335a..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/InterpretationImpl.java +++ /dev/null @@ -1,246 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.Interpretation; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Interpretation'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.InterpretationImpl#getRange Range}
  • - *
- * - * @generated - */ -public class InterpretationImpl extends StatementImpl implements Interpretation { - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * The cached value of the '{@link #getRange() Range}' containment reference. - * - * - * @see #getRange() - * @generated - * @ordered - */ - protected Expression range; - - /** - * - * - * @generated - */ - protected InterpretationImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.INTERPRETATION; - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERPRETATION__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERPRETATION__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERPRETATION__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERPRETATION__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getRange() { - return range; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetRange(Expression newRange, NotificationChain msgs) { - Expression oldRange = range; - range = newRange; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERPRETATION__RANGE, oldRange, newRange); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setRange(Expression newRange) { - if (newRange != range) { - NotificationChain msgs = null; - if (range != null) - msgs = ((InternalEObject)range).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERPRETATION__RANGE, null, msgs); - if (newRange != null) - msgs = ((InternalEObject)newRange).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERPRETATION__RANGE, null, msgs); - msgs = basicSetRange(newRange, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERPRETATION__RANGE, newRange, newRange)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.INTERPRETATION__BODY: - return basicSetBody(null, msgs); - case SolverLanguagePackage.INTERPRETATION__RANGE: - return basicSetRange(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.INTERPRETATION__BODY: - return getBody(); - case SolverLanguagePackage.INTERPRETATION__RANGE: - return getRange(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.INTERPRETATION__BODY: - setBody((Expression)newValue); - return; - case SolverLanguagePackage.INTERPRETATION__RANGE: - setRange((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.INTERPRETATION__BODY: - setBody((Expression)null); - return; - case SolverLanguagePackage.INTERPRETATION__RANGE: - setRange((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.INTERPRETATION__BODY: - return body != null; - case SolverLanguagePackage.INTERPRETATION__RANGE: - return range != null; - } - return super.eIsSet(featureID); - } - -} //InterpretationImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java deleted file mode 100644 index a04dae76..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/IntervalImpl.java +++ /dev/null @@ -1,246 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.Interval; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Interval'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl#getLowerBound Lower Bound}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.IntervalImpl#getUpperBound Upper Bound}
  • - *
- * - * @generated - */ -public class IntervalImpl extends ExpressionImpl implements Interval { - /** - * The cached value of the '{@link #getLowerBound() Lower Bound}' containment reference. - * - * - * @see #getLowerBound() - * @generated - * @ordered - */ - protected Expression lowerBound; - - /** - * The cached value of the '{@link #getUpperBound() Upper Bound}' containment reference. - * - * - * @see #getUpperBound() - * @generated - * @ordered - */ - protected Expression upperBound; - - /** - * - * - * @generated - */ - protected IntervalImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.INTERVAL; - } - - /** - * - * - * @generated - */ - @Override - public Expression getLowerBound() { - return lowerBound; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetLowerBound(Expression newLowerBound, NotificationChain msgs) { - Expression oldLowerBound = lowerBound; - lowerBound = newLowerBound; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERVAL__LOWER_BOUND, oldLowerBound, newLowerBound); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setLowerBound(Expression newLowerBound) { - if (newLowerBound != lowerBound) { - NotificationChain msgs = null; - if (lowerBound != null) - msgs = ((InternalEObject)lowerBound).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__LOWER_BOUND, null, msgs); - if (newLowerBound != null) - msgs = ((InternalEObject)newLowerBound).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__LOWER_BOUND, null, msgs); - msgs = basicSetLowerBound(newLowerBound, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERVAL__LOWER_BOUND, newLowerBound, newLowerBound)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getUpperBound() { - return upperBound; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetUpperBound(Expression newUpperBound, NotificationChain msgs) { - Expression oldUpperBound = upperBound; - upperBound = newUpperBound; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERVAL__UPPER_BOUND, oldUpperBound, newUpperBound); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setUpperBound(Expression newUpperBound) { - if (newUpperBound != upperBound) { - NotificationChain msgs = null; - if (upperBound != null) - msgs = ((InternalEObject)upperBound).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__UPPER_BOUND, null, msgs); - if (newUpperBound != null) - msgs = ((InternalEObject)newUpperBound).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.INTERVAL__UPPER_BOUND, null, msgs); - msgs = basicSetUpperBound(newUpperBound, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.INTERVAL__UPPER_BOUND, newUpperBound, newUpperBound)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.INTERVAL__LOWER_BOUND: - return basicSetLowerBound(null, msgs); - case SolverLanguagePackage.INTERVAL__UPPER_BOUND: - return basicSetUpperBound(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.INTERVAL__LOWER_BOUND: - return getLowerBound(); - case SolverLanguagePackage.INTERVAL__UPPER_BOUND: - return getUpperBound(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.INTERVAL__LOWER_BOUND: - setLowerBound((Expression)newValue); - return; - case SolverLanguagePackage.INTERVAL__UPPER_BOUND: - setUpperBound((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.INTERVAL__LOWER_BOUND: - setLowerBound((Expression)null); - return; - case SolverLanguagePackage.INTERVAL__UPPER_BOUND: - setUpperBound((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.INTERVAL__LOWER_BOUND: - return lowerBound != null; - case SolverLanguagePackage.INTERVAL__UPPER_BOUND: - return upperBound != null; - } - return super.eIsSet(featureID); - } - -} //IntervalImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java deleted file mode 100644 index 9788c44d..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetBindingImpl.java +++ /dev/null @@ -1,248 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.LetBinding; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Let Binding'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getVariable Variable}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetBindingImpl#getValue Value}
  • - *
- * - * @generated - */ -public class LetBindingImpl extends MinimalEObjectImpl.Container implements LetBinding { - /** - * The cached value of the '{@link #getVariable() Variable}' containment reference. - * - * - * @see #getVariable() - * @generated - * @ordered - */ - protected NamedElement variable; - - /** - * The cached value of the '{@link #getValue() Value}' containment reference. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected Expression value; - - /** - * - * - * @generated - */ - protected LetBindingImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.LET_BINDING; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getVariable() { - return variable; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetVariable(NamedElement newVariable, NotificationChain msgs) { - NamedElement oldVariable = variable; - variable = newVariable; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__VARIABLE, oldVariable, newVariable); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setVariable(NamedElement newVariable) { - if (newVariable != variable) { - NotificationChain msgs = null; - if (variable != null) - msgs = ((InternalEObject)variable).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VARIABLE, null, msgs); - if (newVariable != null) - msgs = ((InternalEObject)newVariable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VARIABLE, null, msgs); - msgs = basicSetVariable(newVariable, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__VARIABLE, newVariable, newVariable)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getValue() { - return value; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetValue(Expression newValue, NotificationChain msgs) { - Expression oldValue = value; - value = newValue; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__VALUE, oldValue, newValue); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setValue(Expression newValue) { - if (newValue != value) { - NotificationChain msgs = null; - if (value != null) - msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VALUE, null, msgs); - if (newValue != null) - msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET_BINDING__VALUE, null, msgs); - msgs = basicSetValue(newValue, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET_BINDING__VALUE, newValue, newValue)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.LET_BINDING__VARIABLE: - return basicSetVariable(null, msgs); - case SolverLanguagePackage.LET_BINDING__VALUE: - return basicSetValue(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.LET_BINDING__VARIABLE: - return getVariable(); - case SolverLanguagePackage.LET_BINDING__VALUE: - return getValue(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.LET_BINDING__VARIABLE: - setVariable((NamedElement)newValue); - return; - case SolverLanguagePackage.LET_BINDING__VALUE: - setValue((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LET_BINDING__VARIABLE: - setVariable((NamedElement)null); - return; - case SolverLanguagePackage.LET_BINDING__VALUE: - setValue((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LET_BINDING__VARIABLE: - return variable != null; - case SolverLanguagePackage.LET_BINDING__VALUE: - return value != null; - } - return super.eIsSet(featureID); - } - -} //LetBindingImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetImpl.java deleted file mode 100644 index 841c74c7..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LetImpl.java +++ /dev/null @@ -1,224 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.Let; -import org.eclipse.viatra.solver.language.solverLanguage.LetBinding; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Let'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetImpl#getBindings Bindings}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LetImpl#getBody Body}
  • - *
- * - * @generated - */ -public class LetImpl extends ExpressionImpl implements Let { - /** - * The cached value of the '{@link #getBindings() Bindings}' containment reference list. - * - * - * @see #getBindings() - * @generated - * @ordered - */ - protected EList bindings; - - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * - * - * @generated - */ - protected LetImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.LET; - } - - /** - * - * - * @generated - */ - @Override - public EList getBindings() { - if (bindings == null) { - bindings = new EObjectContainmentEList(LetBinding.class, this, SolverLanguagePackage.LET__BINDINGS); - } - return bindings; - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.LET__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LET__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.LET__BINDINGS: - return ((InternalEList)getBindings()).basicRemove(otherEnd, msgs); - case SolverLanguagePackage.LET__BODY: - return basicSetBody(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.LET__BINDINGS: - return getBindings(); - case SolverLanguagePackage.LET__BODY: - return getBody(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.LET__BINDINGS: - getBindings().clear(); - getBindings().addAll((Collection)newValue); - return; - case SolverLanguagePackage.LET__BODY: - setBody((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LET__BINDINGS: - getBindings().clear(); - return; - case SolverLanguagePackage.LET__BODY: - setBody((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LET__BINDINGS: - return bindings != null && !bindings.isEmpty(); - case SolverLanguagePackage.LET__BODY: - return body != null; - } - return super.eIsSet(featureID); - } - -} //LetImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java deleted file mode 100644 index 671fa305..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LiteralImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.viatra.solver.language.solverLanguage.Literal; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Literal'. - * - * - * @generated - */ -public class LiteralImpl extends ExpressionImpl implements Literal { - /** - * - * - * @generated - */ - protected LiteralImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.LITERAL; - } - -} //LiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LocalVariablesImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LocalVariablesImpl.java deleted file mode 100644 index e34a61c6..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LocalVariablesImpl.java +++ /dev/null @@ -1,154 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.viatra.solver.language.solverLanguage.LocalVariables; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Local Variables'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LocalVariablesImpl#getVariables Variables}
  • - *
- * - * @generated - */ -public class LocalVariablesImpl extends MinimalEObjectImpl.Container implements LocalVariables { - /** - * The cached value of the '{@link #getVariables() Variables}' containment reference list. - * - * - * @see #getVariables() - * @generated - * @ordered - */ - protected EList variables; - - /** - * - * - * @generated - */ - protected LocalVariablesImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.LOCAL_VARIABLES; - } - - /** - * - * - * @generated - */ - @Override - public EList getVariables() { - if (variables == null) { - variables = new EObjectContainmentEList(NamedElement.class, this, SolverLanguagePackage.LOCAL_VARIABLES__VARIABLES); - } - return variables; - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.LOCAL_VARIABLES__VARIABLES: - return ((InternalEList)getVariables()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.LOCAL_VARIABLES__VARIABLES: - return getVariables(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.LOCAL_VARIABLES__VARIABLES: - getVariables().clear(); - getVariables().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LOCAL_VARIABLES__VARIABLES: - getVariables().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LOCAL_VARIABLES__VARIABLES: - return variables != null && !variables.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //LocalVariablesImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java deleted file mode 100644 index 602edee1..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LogicLiteralImpl.java +++ /dev/null @@ -1,166 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.LogicValue; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Logic Literal'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LogicLiteralImpl#getValue Value}
  • - *
- * - * @generated - */ -public class LogicLiteralImpl extends LiteralImpl implements LogicLiteral { - /** - * The default value of the '{@link #getValue() Value}' attribute. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected static final LogicValue VALUE_EDEFAULT = LogicValue.TRUE; - - /** - * The cached value of the '{@link #getValue() Value}' attribute. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected LogicValue value = VALUE_EDEFAULT; - - /** - * - * - * @generated - */ - protected LogicLiteralImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.LOGIC_LITERAL; - } - - /** - * - * - * @generated - */ - @Override - public LogicValue getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public void setValue(LogicValue newValue) { - LogicValue oldValue = value; - value = newValue == null ? VALUE_EDEFAULT : newValue; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LOGIC_LITERAL__VALUE, oldValue, value)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.LOGIC_LITERAL__VALUE: - return getValue(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.LOGIC_LITERAL__VALUE: - setValue((LogicValue)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LOGIC_LITERAL__VALUE: - setValue(VALUE_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LOGIC_LITERAL__VALUE: - return value != VALUE_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (value: "); - result.append(value); - result.append(')'); - return result.toString(); - } - -} //LogicLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeDefinitionImpl.java deleted file mode 100644 index 0e33864d..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/LowerBoundedScopeDefinitionImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Lower Bounded Scope Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.LowerBoundedScopeDefinitionImpl#getLowerBound Lower Bound}
  • - *
- * - * @generated - */ -public class LowerBoundedScopeDefinitionImpl extends ScopeDefinitionImpl implements LowerBoundedScopeDefinition { - /** - * The default value of the '{@link #getLowerBound() Lower Bound}' attribute. - * - * - * @see #getLowerBound() - * @generated - * @ordered - */ - protected static final int LOWER_BOUND_EDEFAULT = 0; - - /** - * The cached value of the '{@link #getLowerBound() Lower Bound}' attribute. - * - * - * @see #getLowerBound() - * @generated - * @ordered - */ - protected int lowerBound = LOWER_BOUND_EDEFAULT; - - /** - * - * - * @generated - */ - protected LowerBoundedScopeDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.LOWER_BOUNDED_SCOPE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public int getLowerBound() { - return lowerBound; - } - - /** - * - * - * @generated - */ - @Override - public void setLowerBound(int newLowerBound) { - int oldLowerBound = lowerBound; - lowerBound = newLowerBound; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.LOWER_BOUNDED_SCOPE_DEFINITION__LOWER_BOUND, oldLowerBound, lowerBound)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.LOWER_BOUNDED_SCOPE_DEFINITION__LOWER_BOUND: - return getLowerBound(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.LOWER_BOUNDED_SCOPE_DEFINITION__LOWER_BOUND: - setLowerBound((Integer)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LOWER_BOUNDED_SCOPE_DEFINITION__LOWER_BOUND: - setLowerBound(LOWER_BOUND_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.LOWER_BOUNDED_SCOPE_DEFINITION__LOWER_BOUND: - return lowerBound != LOWER_BOUND_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (lowerBound: "); - result.append(lowerBound); - result.append(')'); - return result.toString(); - } - -} //LowerBoundedScopeDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ManyMultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ManyMultiplicityImpl.java deleted file mode 100644 index 20a59027..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ManyMultiplicityImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Many Multiplicity'. - * - * - * @generated - */ -public class ManyMultiplicityImpl extends MultiplicityImpl implements ManyMultiplicity { - /** - * - * - * @generated - */ - protected ManyMultiplicityImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.MANY_MULTIPLICITY; - } - -} //ManyMultiplicityImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MemberDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MemberDefinitionImpl.java deleted file mode 100644 index f632faa4..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MemberDefinitionImpl.java +++ /dev/null @@ -1,430 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Member Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl#isContainment Containment}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl#getType Type}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl#getMultiplicity Multiplicity}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl#getName Name}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MemberDefinitionImpl#getOpposite Opposite}
  • - *
- * - * @generated - */ -public class MemberDefinitionImpl extends MinimalEObjectImpl.Container implements MemberDefinition { - /** - * The default value of the '{@link #isContainment() Containment}' attribute. - * - * - * @see #isContainment() - * @generated - * @ordered - */ - protected static final boolean CONTAINMENT_EDEFAULT = false; - - /** - * The cached value of the '{@link #isContainment() Containment}' attribute. - * - * - * @see #isContainment() - * @generated - * @ordered - */ - protected boolean containment = CONTAINMENT_EDEFAULT; - - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * The cached value of the '{@link #getMultiplicity() Multiplicity}' containment reference. - * - * - * @see #getMultiplicity() - * @generated - * @ordered - */ - protected Multiplicity multiplicity; - - /** - * The default value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected static final String NAME_EDEFAULT = null; - - /** - * The cached value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected String name = NAME_EDEFAULT; - - /** - * The cached value of the '{@link #getOpposite() Opposite}' reference. - * - * - * @see #getOpposite() - * @generated - * @ordered - */ - protected NamedElement opposite; - - /** - * - * - * @generated - */ - protected MemberDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.MEMBER_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public boolean isContainment() { - return containment; - } - - /** - * - * - * @generated - */ - @Override - public void setContainment(boolean newContainment) { - boolean oldContainment = containment; - containment = newContainment; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MEMBER_DEFINITION__CONTAINMENT, oldContainment, containment)); - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.MEMBER_DEFINITION__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MEMBER_DEFINITION__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public Multiplicity getMultiplicity() { - return multiplicity; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetMultiplicity(Multiplicity newMultiplicity, NotificationChain msgs) { - Multiplicity oldMultiplicity = multiplicity; - multiplicity = newMultiplicity; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY, oldMultiplicity, newMultiplicity); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setMultiplicity(Multiplicity newMultiplicity) { - if (newMultiplicity != multiplicity) { - NotificationChain msgs = null; - if (multiplicity != null) - msgs = ((InternalEObject)multiplicity).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY, null, msgs); - if (newMultiplicity != null) - msgs = ((InternalEObject)newMultiplicity).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY, null, msgs); - msgs = basicSetMultiplicity(newMultiplicity, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY, newMultiplicity, newMultiplicity)); - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public void setName(String newName) { - String oldName = name; - name = newName; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MEMBER_DEFINITION__NAME, oldName, name)); - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getOpposite() { - if (opposite != null && opposite.eIsProxy()) { - InternalEObject oldOpposite = (InternalEObject)opposite; - opposite = (NamedElement)eResolveProxy(oldOpposite); - if (opposite != oldOpposite) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.MEMBER_DEFINITION__OPPOSITE, oldOpposite, opposite)); - } - } - return opposite; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetOpposite() { - return opposite; - } - - /** - * - * - * @generated - */ - @Override - public void setOpposite(NamedElement newOpposite) { - NamedElement oldOpposite = opposite; - opposite = newOpposite; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.MEMBER_DEFINITION__OPPOSITE, oldOpposite, opposite)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY: - return basicSetMultiplicity(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.MEMBER_DEFINITION__CONTAINMENT: - return isContainment(); - case SolverLanguagePackage.MEMBER_DEFINITION__TYPE: - if (resolve) return getType(); - return basicGetType(); - case SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY: - return getMultiplicity(); - case SolverLanguagePackage.MEMBER_DEFINITION__NAME: - return getName(); - case SolverLanguagePackage.MEMBER_DEFINITION__OPPOSITE: - if (resolve) return getOpposite(); - return basicGetOpposite(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.MEMBER_DEFINITION__CONTAINMENT: - setContainment((Boolean)newValue); - return; - case SolverLanguagePackage.MEMBER_DEFINITION__TYPE: - setType((NamedElement)newValue); - return; - case SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY: - setMultiplicity((Multiplicity)newValue); - return; - case SolverLanguagePackage.MEMBER_DEFINITION__NAME: - setName((String)newValue); - return; - case SolverLanguagePackage.MEMBER_DEFINITION__OPPOSITE: - setOpposite((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.MEMBER_DEFINITION__CONTAINMENT: - setContainment(CONTAINMENT_EDEFAULT); - return; - case SolverLanguagePackage.MEMBER_DEFINITION__TYPE: - setType((NamedElement)null); - return; - case SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY: - setMultiplicity((Multiplicity)null); - return; - case SolverLanguagePackage.MEMBER_DEFINITION__NAME: - setName(NAME_EDEFAULT); - return; - case SolverLanguagePackage.MEMBER_DEFINITION__OPPOSITE: - setOpposite((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.MEMBER_DEFINITION__CONTAINMENT: - return containment != CONTAINMENT_EDEFAULT; - case SolverLanguagePackage.MEMBER_DEFINITION__TYPE: - return type != null; - case SolverLanguagePackage.MEMBER_DEFINITION__MULTIPLICITY: - return multiplicity != null; - case SolverLanguagePackage.MEMBER_DEFINITION__NAME: - return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); - case SolverLanguagePackage.MEMBER_DEFINITION__OPPOSITE: - return opposite != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (containment: "); - result.append(containment); - result.append(", name: "); - result.append(name); - result.append(')'); - return result.toString(); - } - -} //MemberDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricDefinitionImpl.java deleted file mode 100644 index d441b8c1..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricDefinitionImpl.java +++ /dev/null @@ -1,309 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Metric Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricDefinitionImpl#getHead Head}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricDefinitionImpl#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricDefinitionImpl#getType Type}
  • - *
- * - * @generated - */ -public class MetricDefinitionImpl extends StatementImpl implements MetricDefinition { - /** - * The cached value of the '{@link #getHead() Head}' containment reference. - * - * - * @see #getHead() - * @generated - * @ordered - */ - protected Expression head; - - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * - * - * @generated - */ - protected MetricDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.METRIC_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public Expression getHead() { - return head; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetHead(Expression newHead, NotificationChain msgs) { - Expression oldHead = head; - head = newHead; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.METRIC_DEFINITION__HEAD, oldHead, newHead); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setHead(Expression newHead) { - if (newHead != head) { - NotificationChain msgs = null; - if (head != null) - msgs = ((InternalEObject)head).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.METRIC_DEFINITION__HEAD, null, msgs); - if (newHead != null) - msgs = ((InternalEObject)newHead).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.METRIC_DEFINITION__HEAD, null, msgs); - msgs = basicSetHead(newHead, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.METRIC_DEFINITION__HEAD, newHead, newHead)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.METRIC_DEFINITION__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.METRIC_DEFINITION__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.METRIC_DEFINITION__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.METRIC_DEFINITION__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.METRIC_DEFINITION__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.METRIC_DEFINITION__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.METRIC_DEFINITION__HEAD: - return basicSetHead(null, msgs); - case SolverLanguagePackage.METRIC_DEFINITION__BODY: - return basicSetBody(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.METRIC_DEFINITION__HEAD: - return getHead(); - case SolverLanguagePackage.METRIC_DEFINITION__BODY: - return getBody(); - case SolverLanguagePackage.METRIC_DEFINITION__TYPE: - if (resolve) return getType(); - return basicGetType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.METRIC_DEFINITION__HEAD: - setHead((Expression)newValue); - return; - case SolverLanguagePackage.METRIC_DEFINITION__BODY: - setBody((Expression)newValue); - return; - case SolverLanguagePackage.METRIC_DEFINITION__TYPE: - setType((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.METRIC_DEFINITION__HEAD: - setHead((Expression)null); - return; - case SolverLanguagePackage.METRIC_DEFINITION__BODY: - setBody((Expression)null); - return; - case SolverLanguagePackage.METRIC_DEFINITION__TYPE: - setType((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.METRIC_DEFINITION__HEAD: - return head != null; - case SolverLanguagePackage.METRIC_DEFINITION__BODY: - return body != null; - case SolverLanguagePackage.METRIC_DEFINITION__TYPE: - return type != null; - } - return super.eIsSet(featureID); - } - -} //MetricDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java deleted file mode 100644 index 41fbe6de..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MetricImpl.java +++ /dev/null @@ -1,159 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Metric; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Metric'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.MetricImpl#getReturnType Return Type}
  • - *
- * - * @generated - */ -public class MetricImpl extends FunctorImpl implements Metric { - /** - * The cached value of the '{@link #getReturnType() Return Type}' reference. - * - * - * @see #getReturnType() - * @generated - * @ordered - */ - protected NamedElement returnType; - - /** - * - * - * @generated - */ - protected MetricImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.METRIC; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getReturnType() { - if (returnType != null && returnType.eIsProxy()) { - InternalEObject oldReturnType = (InternalEObject)returnType; - returnType = (NamedElement)eResolveProxy(oldReturnType); - if (returnType != oldReturnType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.METRIC__RETURN_TYPE, oldReturnType, returnType)); - } - } - return returnType; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetReturnType() { - return returnType; - } - - /** - * - * - * @generated - */ - @Override - public void setReturnType(NamedElement newReturnType) { - NamedElement oldReturnType = returnType; - returnType = newReturnType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.METRIC__RETURN_TYPE, oldReturnType, returnType)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.METRIC__RETURN_TYPE: - if (resolve) return getReturnType(); - return basicGetReturnType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.METRIC__RETURN_TYPE: - setReturnType((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.METRIC__RETURN_TYPE: - setReturnType((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.METRIC__RETURN_TYPE: - return returnType != null; - } - return super.eIsSet(featureID); - } - -} //MetricImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java deleted file mode 100644 index e29fe9f6..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/MultiplicityImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Multiplicity'. - * - * - * @generated - */ -public class MultiplicityImpl extends MinimalEObjectImpl.Container implements Multiplicity { - /** - * - * - * @generated - */ - protected MultiplicityImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.MULTIPLICITY; - } - -} //MultiplicityImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamedElementImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamedElementImpl.java deleted file mode 100644 index a6b102ac..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NamedElementImpl.java +++ /dev/null @@ -1,166 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Named Element'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.NamedElementImpl#getName Name}
  • - *
- * - * @generated - */ -public class NamedElementImpl extends MinimalEObjectImpl.Container implements NamedElement { - /** - * The default value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected static final String NAME_EDEFAULT = null; - - /** - * The cached value of the '{@link #getName() Name}' attribute. - * - * - * @see #getName() - * @generated - * @ordered - */ - protected String name = NAME_EDEFAULT; - - /** - * - * - * @generated - */ - protected NamedElementImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.NAMED_ELEMENT; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public void setName(String newName) { - String oldName = name; - name = newName; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.NAMED_ELEMENT__NAME, oldName, name)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.NAMED_ELEMENT__NAME: - return getName(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.NAMED_ELEMENT__NAME: - setName((String)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.NAMED_ELEMENT__NAME: - setName(NAME_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.NAMED_ELEMENT__NAME: - return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name); - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (name: "); - result.append(name); - result.append(')'); - return result.toString(); - } - -} //NamedElementImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java deleted file mode 100644 index a4fcf51f..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NodeImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Node; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Node'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.NodeImpl#isWithId With Id}
  • - *
- * - * @generated - */ -public class NodeImpl extends NamedElementImpl implements Node { - /** - * The default value of the '{@link #isWithId() With Id}' attribute. - * - * - * @see #isWithId() - * @generated - * @ordered - */ - protected static final boolean WITH_ID_EDEFAULT = false; - - /** - * The cached value of the '{@link #isWithId() With Id}' attribute. - * - * - * @see #isWithId() - * @generated - * @ordered - */ - protected boolean withId = WITH_ID_EDEFAULT; - - /** - * - * - * @generated - */ - protected NodeImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.NODE; - } - - /** - * - * - * @generated - */ - @Override - public boolean isWithId() { - return withId; - } - - /** - * - * - * @generated - */ - @Override - public void setWithId(boolean newWithId) { - boolean oldWithId = withId; - withId = newWithId; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.NODE__WITH_ID, oldWithId, withId)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.NODE__WITH_ID: - return isWithId(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.NODE__WITH_ID: - setWithId((Boolean)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.NODE__WITH_ID: - setWithId(WITH_ID_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.NODE__WITH_ID: - return withId != WITH_ID_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (withId: "); - result.append(withId); - result.append(')'); - return result.toString(); - } - -} //NodeImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NumericLiteralImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NumericLiteralImpl.java deleted file mode 100644 index ffd4294d..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/NumericLiteralImpl.java +++ /dev/null @@ -1,167 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.math.BigDecimal; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Numeric Literal'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.NumericLiteralImpl#getValue Value}
  • - *
- * - * @generated - */ -public class NumericLiteralImpl extends LiteralImpl implements NumericLiteral { - /** - * The default value of the '{@link #getValue() Value}' attribute. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected static final BigDecimal VALUE_EDEFAULT = null; - - /** - * The cached value of the '{@link #getValue() Value}' attribute. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected BigDecimal value = VALUE_EDEFAULT; - - /** - * - * - * @generated - */ - protected NumericLiteralImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.NUMERIC_LITERAL; - } - - /** - * - * - * @generated - */ - @Override - public BigDecimal getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public void setValue(BigDecimal newValue) { - BigDecimal oldValue = value; - value = newValue; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.NUMERIC_LITERAL__VALUE, oldValue, value)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.NUMERIC_LITERAL__VALUE: - return getValue(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.NUMERIC_LITERAL__VALUE: - setValue((BigDecimal)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.NUMERIC_LITERAL__VALUE: - setValue(VALUE_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.NUMERIC_LITERAL__VALUE: - return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value); - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (value: "); - result.append(value); - result.append(')'); - return result.toString(); - } - -} //NumericLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDefinitionImpl.java deleted file mode 100644 index 7d0e4c50..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ObjectiveDefinitionImpl.java +++ /dev/null @@ -1,249 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Objective Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDefinitionImpl#getKind Kind}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ObjectiveDefinitionImpl#getObjective Objective}
  • - *
- * - * @generated - */ -public class ObjectiveDefinitionImpl extends StatementImpl implements ObjectiveDefinition { - /** - * The default value of the '{@link #getKind() Kind}' attribute. - * - * - * @see #getKind() - * @generated - * @ordered - */ - protected static final ObjectiveKind KIND_EDEFAULT = ObjectiveKind.MINIMIZE; - - /** - * The cached value of the '{@link #getKind() Kind}' attribute. - * - * - * @see #getKind() - * @generated - * @ordered - */ - protected ObjectiveKind kind = KIND_EDEFAULT; - - /** - * The cached value of the '{@link #getObjective() Objective}' containment reference. - * - * - * @see #getObjective() - * @generated - * @ordered - */ - protected Expression objective; - - /** - * - * - * @generated - */ - protected ObjectiveDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.OBJECTIVE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public ObjectiveKind getKind() { - return kind; - } - - /** - * - * - * @generated - */ - @Override - public void setKind(ObjectiveKind newKind) { - ObjectiveKind oldKind = kind; - kind = newKind == null ? KIND_EDEFAULT : newKind; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.OBJECTIVE_DEFINITION__KIND, oldKind, kind)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getObjective() { - return objective; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetObjective(Expression newObjective, NotificationChain msgs) { - Expression oldObjective = objective; - objective = newObjective; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE, oldObjective, newObjective); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setObjective(Expression newObjective) { - if (newObjective != objective) { - NotificationChain msgs = null; - if (objective != null) - msgs = ((InternalEObject)objective).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE, null, msgs); - if (newObjective != null) - msgs = ((InternalEObject)newObjective).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE, null, msgs); - msgs = basicSetObjective(newObjective, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE, newObjective, newObjective)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE: - return basicSetObjective(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.OBJECTIVE_DEFINITION__KIND: - return getKind(); - case SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE: - return getObjective(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.OBJECTIVE_DEFINITION__KIND: - setKind((ObjectiveKind)newValue); - return; - case SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE: - setObjective((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.OBJECTIVE_DEFINITION__KIND: - setKind(KIND_EDEFAULT); - return; - case SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE: - setObjective((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.OBJECTIVE_DEFINITION__KIND: - return kind != KIND_EDEFAULT; - case SolverLanguagePackage.OBJECTIVE_DEFINITION__OBJECTIVE: - return objective != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (kind: "); - result.append(kind); - result.append(')'); - return result.toString(); - } - -} //ObjectiveDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java deleted file mode 100644 index 251a27d9..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateDefinitionImpl.java +++ /dev/null @@ -1,372 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Predicate Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl#getHead Head}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl#isFunctional Functional}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.PredicateDefinitionImpl#isError Error}
  • - *
- * - * @generated - */ -public class PredicateDefinitionImpl extends StatementImpl implements PredicateDefinition { - /** - * The cached value of the '{@link #getHead() Head}' containment reference. - * - * - * @see #getHead() - * @generated - * @ordered - */ - protected Expression head; - - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * The default value of the '{@link #isFunctional() Functional}' attribute. - * - * - * @see #isFunctional() - * @generated - * @ordered - */ - protected static final boolean FUNCTIONAL_EDEFAULT = false; - - /** - * The cached value of the '{@link #isFunctional() Functional}' attribute. - * - * - * @see #isFunctional() - * @generated - * @ordered - */ - protected boolean functional = FUNCTIONAL_EDEFAULT; - - /** - * The default value of the '{@link #isError() Error}' attribute. - * - * - * @see #isError() - * @generated - * @ordered - */ - protected static final boolean ERROR_EDEFAULT = false; - - /** - * The cached value of the '{@link #isError() Error}' attribute. - * - * - * @see #isError() - * @generated - * @ordered - */ - protected boolean error = ERROR_EDEFAULT; - - /** - * - * - * @generated - */ - protected PredicateDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.PREDICATE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public Expression getHead() { - return head; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetHead(Expression newHead, NotificationChain msgs) { - Expression oldHead = head; - head = newHead; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_DEFINITION__HEAD, oldHead, newHead); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setHead(Expression newHead) { - if (newHead != head) { - NotificationChain msgs = null; - if (head != null) - msgs = ((InternalEObject)head).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PREDICATE_DEFINITION__HEAD, null, msgs); - if (newHead != null) - msgs = ((InternalEObject)newHead).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PREDICATE_DEFINITION__HEAD, null, msgs); - msgs = basicSetHead(newHead, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_DEFINITION__HEAD, newHead, newHead)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_DEFINITION__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PREDICATE_DEFINITION__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.PREDICATE_DEFINITION__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_DEFINITION__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public boolean isFunctional() { - return functional; - } - - /** - * - * - * @generated - */ - @Override - public void setFunctional(boolean newFunctional) { - boolean oldFunctional = functional; - functional = newFunctional; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL, oldFunctional, functional)); - } - - /** - * - * - * @generated - */ - @Override - public boolean isError() { - return error; - } - - /** - * - * - * @generated - */ - @Override - public void setError(boolean newError) { - boolean oldError = error; - error = newError; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.PREDICATE_DEFINITION__ERROR, oldError, error)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.PREDICATE_DEFINITION__HEAD: - return basicSetHead(null, msgs); - case SolverLanguagePackage.PREDICATE_DEFINITION__BODY: - return basicSetBody(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.PREDICATE_DEFINITION__HEAD: - return getHead(); - case SolverLanguagePackage.PREDICATE_DEFINITION__BODY: - return getBody(); - case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: - return isFunctional(); - case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: - return isError(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.PREDICATE_DEFINITION__HEAD: - setHead((Expression)newValue); - return; - case SolverLanguagePackage.PREDICATE_DEFINITION__BODY: - setBody((Expression)newValue); - return; - case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: - setFunctional((Boolean)newValue); - return; - case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: - setError((Boolean)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.PREDICATE_DEFINITION__HEAD: - setHead((Expression)null); - return; - case SolverLanguagePackage.PREDICATE_DEFINITION__BODY: - setBody((Expression)null); - return; - case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: - setFunctional(FUNCTIONAL_EDEFAULT); - return; - case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: - setError(ERROR_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.PREDICATE_DEFINITION__HEAD: - return head != null; - case SolverLanguagePackage.PREDICATE_DEFINITION__BODY: - return body != null; - case SolverLanguagePackage.PREDICATE_DEFINITION__FUNCTIONAL: - return functional != FUNCTIONAL_EDEFAULT; - case SolverLanguagePackage.PREDICATE_DEFINITION__ERROR: - return error != ERROR_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (functional: "); - result.append(functional); - result.append(", error: "); - result.append(error); - result.append(')'); - return result.toString(); - } - -} //PredicateDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java deleted file mode 100644 index 626b6419..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/PredicateImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.viatra.solver.language.solverLanguage.Predicate; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Predicate'. - * - * - * @generated - */ -public class PredicateImpl extends FunctorImpl implements Predicate { - /** - * - * - * @generated - */ - protected PredicateImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.PREDICATE; - } - -} //PredicateImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java deleted file mode 100644 index 0a4ad5ce..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ProblemImpl.java +++ /dev/null @@ -1,154 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.viatra.solver.language.solverLanguage.Problem; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.Statement; - -/** - * - * An implementation of the model object 'Problem'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ProblemImpl#getStatements Statements}
  • - *
- * - * @generated - */ -public class ProblemImpl extends MinimalEObjectImpl.Container implements Problem { - /** - * The cached value of the '{@link #getStatements() Statements}' containment reference list. - * - * - * @see #getStatements() - * @generated - * @ordered - */ - protected EList statements; - - /** - * - * - * @generated - */ - protected ProblemImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.PROBLEM; - } - - /** - * - * - * @generated - */ - @Override - public EList getStatements() { - if (statements == null) { - statements = new EObjectContainmentEList(Statement.class, this, SolverLanguagePackage.PROBLEM__STATEMENTS); - } - return statements; - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.PROBLEM__STATEMENTS: - return ((InternalEList)getStatements()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.PROBLEM__STATEMENTS: - return getStatements(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.PROBLEM__STATEMENTS: - getStatements().clear(); - getStatements().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.PROBLEM__STATEMENTS: - getStatements().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.PROBLEM__STATEMENTS: - return statements != null && !statements.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //ProblemImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/QuantifiedExpressionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/QuantifiedExpressionImpl.java deleted file mode 100644 index a1eecebd..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/QuantifiedExpressionImpl.java +++ /dev/null @@ -1,318 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.LocalVariables; -import org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression; -import org.eclipse.viatra.solver.language.solverLanguage.Quantifier; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Quantified Expression'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.QuantifiedExpressionImpl#getLocalVariables Local Variables}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.QuantifiedExpressionImpl#getBody Body}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.QuantifiedExpressionImpl#getQuantifier Quantifier}
  • - *
- * - * @generated - */ -public class QuantifiedExpressionImpl extends ExpressionImpl implements QuantifiedExpression { - /** - * The cached value of the '{@link #getLocalVariables() Local Variables}' containment reference. - * - * - * @see #getLocalVariables() - * @generated - * @ordered - */ - protected LocalVariables localVariables; - - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * The default value of the '{@link #getQuantifier() Quantifier}' attribute. - * - * - * @see #getQuantifier() - * @generated - * @ordered - */ - protected static final Quantifier QUANTIFIER_EDEFAULT = Quantifier.EXISTS; - - /** - * The cached value of the '{@link #getQuantifier() Quantifier}' attribute. - * - * - * @see #getQuantifier() - * @generated - * @ordered - */ - protected Quantifier quantifier = QUANTIFIER_EDEFAULT; - - /** - * - * - * @generated - */ - protected QuantifiedExpressionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.QUANTIFIED_EXPRESSION; - } - - /** - * - * - * @generated - */ - @Override - public LocalVariables getLocalVariables() { - return localVariables; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetLocalVariables(LocalVariables newLocalVariables, NotificationChain msgs) { - LocalVariables oldLocalVariables = localVariables; - localVariables = newLocalVariables; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES, oldLocalVariables, newLocalVariables); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setLocalVariables(LocalVariables newLocalVariables) { - if (newLocalVariables != localVariables) { - NotificationChain msgs = null; - if (localVariables != null) - msgs = ((InternalEObject)localVariables).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES, null, msgs); - if (newLocalVariables != null) - msgs = ((InternalEObject)newLocalVariables).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES, null, msgs); - msgs = basicSetLocalVariables(newLocalVariables, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES, newLocalVariables, newLocalVariables)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public Quantifier getQuantifier() { - return quantifier; - } - - /** - * - * - * @generated - */ - @Override - public void setQuantifier(Quantifier newQuantifier) { - Quantifier oldQuantifier = quantifier; - quantifier = newQuantifier == null ? QUANTIFIER_EDEFAULT : newQuantifier; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.QUANTIFIED_EXPRESSION__QUANTIFIER, oldQuantifier, quantifier)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES: - return basicSetLocalVariables(null, msgs); - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY: - return basicSetBody(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES: - return getLocalVariables(); - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY: - return getBody(); - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__QUANTIFIER: - return getQuantifier(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES: - setLocalVariables((LocalVariables)newValue); - return; - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY: - setBody((Expression)newValue); - return; - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__QUANTIFIER: - setQuantifier((Quantifier)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES: - setLocalVariables((LocalVariables)null); - return; - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY: - setBody((Expression)null); - return; - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__QUANTIFIER: - setQuantifier(QUANTIFIER_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__LOCAL_VARIABLES: - return localVariables != null; - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__BODY: - return body != null; - case SolverLanguagePackage.QUANTIFIED_EXPRESSION__QUANTIFIER: - return quantifier != QUANTIFIER_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (quantifier: "); - result.append(quantifier); - result.append(')'); - return result.toString(); - } - -} //QuantifiedExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java deleted file mode 100644 index 0be1aac7..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ReferenceImpl.java +++ /dev/null @@ -1,159 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.Reference; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Reference'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ReferenceImpl#getReferred Referred}
  • - *
- * - * @generated - */ -public class ReferenceImpl extends ExpressionImpl implements Reference { - /** - * The cached value of the '{@link #getReferred() Referred}' reference. - * - * - * @see #getReferred() - * @generated - * @ordered - */ - protected NamedElement referred; - - /** - * - * - * @generated - */ - protected ReferenceImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.REFERENCE; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getReferred() { - if (referred != null && referred.eIsProxy()) { - InternalEObject oldReferred = (InternalEObject)referred; - referred = (NamedElement)eResolveProxy(oldReferred); - if (referred != oldReferred) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.REFERENCE__REFERRED, oldReferred, referred)); - } - } - return referred; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetReferred() { - return referred; - } - - /** - * - * - * @generated - */ - @Override - public void setReferred(NamedElement newReferred) { - NamedElement oldReferred = referred; - referred = newReferred; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.REFERENCE__REFERRED, oldReferred, referred)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.REFERENCE__REFERRED: - if (resolve) return getReferred(); - return basicGetReferred(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.REFERENCE__REFERRED: - setReferred((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.REFERENCE__REFERRED: - setReferred((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.REFERENCE__REFERRED: - return referred != null; - } - return super.eIsSet(featureID); - } - -} //ReferenceImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDefinitionImpl.java deleted file mode 100644 index a4cf94a7..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/ScopeDefinitionImpl.java +++ /dev/null @@ -1,159 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; - -/** - * - * An implementation of the model object 'Scope Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.ScopeDefinitionImpl#getType Type}
  • - *
- * - * @generated - */ -public class ScopeDefinitionImpl extends StatementImpl implements ScopeDefinition { - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * - * - * @generated - */ - protected ScopeDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.SCOPE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.SCOPE_DEFINITION__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.SCOPE_DEFINITION__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.SCOPE_DEFINITION__TYPE: - if (resolve) return getType(); - return basicGetType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.SCOPE_DEFINITION__TYPE: - setType((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.SCOPE_DEFINITION__TYPE: - setType((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.SCOPE_DEFINITION__TYPE: - return type != null; - } - return super.eIsSet(featureID); - } - -} //ScopeDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java deleted file mode 100644 index 5787175b..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguageFactoryImpl.java +++ /dev/null @@ -1,905 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.emf.ecore.EObject; -import org.eclipse.emf.ecore.EPackage; - -import org.eclipse.emf.ecore.impl.EFactoryImpl; - -import org.eclipse.emf.ecore.plugin.EcorePlugin; - -import org.eclipse.viatra.solver.language.solverLanguage.*; - -/** - * - * An implementation of the model Factory. - * - * @generated - */ -public class SolverLanguageFactoryImpl extends EFactoryImpl implements SolverLanguageFactory { - /** - * Creates the default factory implementation. - * - * - * @generated - */ - public static SolverLanguageFactory init() { - try { - SolverLanguageFactory theSolverLanguageFactory = (SolverLanguageFactory)EPackage.Registry.INSTANCE.getEFactory(SolverLanguagePackage.eNS_URI); - if (theSolverLanguageFactory != null) { - return theSolverLanguageFactory; - } - } - catch (Exception exception) { - EcorePlugin.INSTANCE.log(exception); - } - return new SolverLanguageFactoryImpl(); - } - - /** - * Creates an instance of the factory. - * - * - * @generated - */ - public SolverLanguageFactoryImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - public EObject create(EClass eClass) { - switch (eClass.getClassifierID()) { - case SolverLanguagePackage.PROBLEM: return createProblem(); - case SolverLanguagePackage.STATEMENT: return createStatement(); - case SolverLanguagePackage.PREDICATE_DEFINITION: return createPredicateDefinition(); - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION: return createUnnamedErrorPrediateDefinition(); - case SolverLanguagePackage.DEFAULT_DEFINITION: return createDefaultDefinition(); - case SolverLanguagePackage.METRIC_DEFINITION: return createMetricDefinition(); - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION: return createExternPredicateDefinition(); - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION: return createExternMetricDefinition(); - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION: return createExternAggregatorDefinition(); - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION: return createExternDatatypeDefinition(); - case SolverLanguagePackage.NAMED_ELEMENT: return createNamedElement(); - case SolverLanguagePackage.IF_ELSE: return createIfElse(); - case SolverLanguagePackage.LET: return createLet(); - case SolverLanguagePackage.LET_BINDING: return createLetBinding(); - case SolverLanguagePackage.CASE: return createCase(); - case SolverLanguagePackage.LOCAL_VARIABLES: return createLocalVariables(); - case SolverLanguagePackage.QUANTIFIED_EXPRESSION: return createQuantifiedExpression(); - case SolverLanguagePackage.AGGREGATION: return createAggregation(); - case SolverLanguagePackage.CALL: return createCall(); - case SolverLanguagePackage.ARGUMENT_LIST: return createArgumentList(); - case SolverLanguagePackage.ARGUMENT: return createArgument(); - case SolverLanguagePackage.EXPRESSION_ARGUMENT: return createExpressionArgument(); - case SolverLanguagePackage.STAR_ARGUMENT: return createStarArgument(); - case SolverLanguagePackage.TYPED_ARGUMENT: return createTypedArgument(); - case SolverLanguagePackage.TYPED_STAR_ARGUMENT: return createTypedStarArgument(); - case SolverLanguagePackage.REFERENCE: return createReference(); - case SolverLanguagePackage.INTERVAL: return createInterval(); - case SolverLanguagePackage.LITERAL: return createLiteral(); - case SolverLanguagePackage.LOGIC_LITERAL: return createLogicLiteral(); - case SolverLanguagePackage.NUMERIC_LITERAL: return createNumericLiteral(); - case SolverLanguagePackage.INFINITY_LITERAL: return createInfinityLiteral(); - case SolverLanguagePackage.EMPTY_INTERVAL_LITERAL: return createEmptyIntervalLiteral(); - case SolverLanguagePackage.STRING_LITERAL: return createStringLiteral(); - case SolverLanguagePackage.CLASS_DEFINITION: return createClassDefinition(); - case SolverLanguagePackage.MEMBER_DEFINITION: return createMemberDefinition(); - case SolverLanguagePackage.MULTIPLICITY: return createMultiplicity(); - case SolverLanguagePackage.MANY_MULTIPLICITY: return createManyMultiplicity(); - case SolverLanguagePackage.EXACT_MULTIPLICITY: return createExactMultiplicity(); - case SolverLanguagePackage.BOUNDED_MULTIPLICITY: return createBoundedMultiplicity(); - case SolverLanguagePackage.SCOPE_DEFINITION: return createScopeDefinition(); - case SolverLanguagePackage.EXACT_SCOPE_DEFINITION: return createExactScopeDefinition(); - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION: return createBoundedScopeDefinition(); - case SolverLanguagePackage.LOWER_BOUNDED_SCOPE_DEFINITION: return createLowerBoundedScopeDefinition(); - case SolverLanguagePackage.OBJECTIVE_DEFINITION: return createObjectiveDefinition(); - case SolverLanguagePackage.INTERPRETATION: return createInterpretation(); - case SolverLanguagePackage.VARIABLE: return createVariable(); - case SolverLanguagePackage.DISJUNCTION: return createDisjunction(); - case SolverLanguagePackage.SWITCH: return createSwitch(); - case SolverLanguagePackage.CONJUNCTION: return createConjunction(); - case SolverLanguagePackage.COMPARISON: return createComparison(); - case SolverLanguagePackage.BINARY_EXPRESSION: return createBinaryExpression(); - case SolverLanguagePackage.CAST_EXPRESSION: return createCastExpression(); - case SolverLanguagePackage.UNARY_EXPRESSION: return createUnaryExpression(); - case SolverLanguagePackage.NODE: return createNode(); - case SolverLanguagePackage.PREDICATE: return createPredicate(); - case SolverLanguagePackage.METRIC: return createMetric(); - default: - throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); - } - } - - /** - * - * - * @generated - */ - @Override - public Object createFromString(EDataType eDataType, String initialValue) { - switch (eDataType.getClassifierID()) { - case SolverLanguagePackage.BINARY_OPERATOR: - return createBinaryOperatorFromString(eDataType, initialValue); - case SolverLanguagePackage.UNARY_OP: - return createUnaryOpFromString(eDataType, initialValue); - case SolverLanguagePackage.LOGIC_VALUE: - return createLogicValueFromString(eDataType, initialValue); - case SolverLanguagePackage.OBJECTIVE_KIND: - return createObjectiveKindFromString(eDataType, initialValue); - case SolverLanguagePackage.QUANTIFIER: - return createQuantifierFromString(eDataType, initialValue); - default: - throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); - } - } - - /** - * - * - * @generated - */ - @Override - public String convertToString(EDataType eDataType, Object instanceValue) { - switch (eDataType.getClassifierID()) { - case SolverLanguagePackage.BINARY_OPERATOR: - return convertBinaryOperatorToString(eDataType, instanceValue); - case SolverLanguagePackage.UNARY_OP: - return convertUnaryOpToString(eDataType, instanceValue); - case SolverLanguagePackage.LOGIC_VALUE: - return convertLogicValueToString(eDataType, instanceValue); - case SolverLanguagePackage.OBJECTIVE_KIND: - return convertObjectiveKindToString(eDataType, instanceValue); - case SolverLanguagePackage.QUANTIFIER: - return convertQuantifierToString(eDataType, instanceValue); - default: - throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); - } - } - - /** - * - * - * @generated - */ - @Override - public Problem createProblem() { - ProblemImpl problem = new ProblemImpl(); - return problem; - } - - /** - * - * - * @generated - */ - @Override - public Statement createStatement() { - StatementImpl statement = new StatementImpl(); - return statement; - } - - /** - * - * - * @generated - */ - @Override - public PredicateDefinition createPredicateDefinition() { - PredicateDefinitionImpl predicateDefinition = new PredicateDefinitionImpl(); - return predicateDefinition; - } - - /** - * - * - * @generated - */ - @Override - public UnnamedErrorPrediateDefinition createUnnamedErrorPrediateDefinition() { - UnnamedErrorPrediateDefinitionImpl unnamedErrorPrediateDefinition = new UnnamedErrorPrediateDefinitionImpl(); - return unnamedErrorPrediateDefinition; - } - - /** - * - * - * @generated - */ - @Override - public DefaultDefinition createDefaultDefinition() { - DefaultDefinitionImpl defaultDefinition = new DefaultDefinitionImpl(); - return defaultDefinition; - } - - /** - * - * - * @generated - */ - @Override - public MetricDefinition createMetricDefinition() { - MetricDefinitionImpl metricDefinition = new MetricDefinitionImpl(); - return metricDefinition; - } - - /** - * - * - * @generated - */ - @Override - public ExternPredicateDefinition createExternPredicateDefinition() { - ExternPredicateDefinitionImpl externPredicateDefinition = new ExternPredicateDefinitionImpl(); - return externPredicateDefinition; - } - - /** - * - * - * @generated - */ - @Override - public ExternMetricDefinition createExternMetricDefinition() { - ExternMetricDefinitionImpl externMetricDefinition = new ExternMetricDefinitionImpl(); - return externMetricDefinition; - } - - /** - * - * - * @generated - */ - @Override - public ExternAggregatorDefinition createExternAggregatorDefinition() { - ExternAggregatorDefinitionImpl externAggregatorDefinition = new ExternAggregatorDefinitionImpl(); - return externAggregatorDefinition; - } - - /** - * - * - * @generated - */ - @Override - public ExternDatatypeDefinition createExternDatatypeDefinition() { - ExternDatatypeDefinitionImpl externDatatypeDefinition = new ExternDatatypeDefinitionImpl(); - return externDatatypeDefinition; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement createNamedElement() { - NamedElementImpl namedElement = new NamedElementImpl(); - return namedElement; - } - - /** - * - * - * @generated - */ - @Override - public IfElse createIfElse() { - IfElseImpl ifElse = new IfElseImpl(); - return ifElse; - } - - /** - * - * - * @generated - */ - @Override - public Let createLet() { - LetImpl let = new LetImpl(); - return let; - } - - /** - * - * - * @generated - */ - @Override - public LetBinding createLetBinding() { - LetBindingImpl letBinding = new LetBindingImpl(); - return letBinding; - } - - /** - * - * - * @generated - */ - @Override - public Case createCase() { - CaseImpl case_ = new CaseImpl(); - return case_; - } - - /** - * - * - * @generated - */ - @Override - public LocalVariables createLocalVariables() { - LocalVariablesImpl localVariables = new LocalVariablesImpl(); - return localVariables; - } - - /** - * - * - * @generated - */ - @Override - public QuantifiedExpression createQuantifiedExpression() { - QuantifiedExpressionImpl quantifiedExpression = new QuantifiedExpressionImpl(); - return quantifiedExpression; - } - - /** - * - * - * @generated - */ - @Override - public Aggregation createAggregation() { - AggregationImpl aggregation = new AggregationImpl(); - return aggregation; - } - - /** - * - * - * @generated - */ - @Override - public Call createCall() { - CallImpl call = new CallImpl(); - return call; - } - - /** - * - * - * @generated - */ - @Override - public ArgumentList createArgumentList() { - ArgumentListImpl argumentList = new ArgumentListImpl(); - return argumentList; - } - - /** - * - * - * @generated - */ - @Override - public Argument createArgument() { - ArgumentImpl argument = new ArgumentImpl(); - return argument; - } - - /** - * - * - * @generated - */ - @Override - public ExpressionArgument createExpressionArgument() { - ExpressionArgumentImpl expressionArgument = new ExpressionArgumentImpl(); - return expressionArgument; - } - - /** - * - * - * @generated - */ - @Override - public StarArgument createStarArgument() { - StarArgumentImpl starArgument = new StarArgumentImpl(); - return starArgument; - } - - /** - * - * - * @generated - */ - @Override - public TypedArgument createTypedArgument() { - TypedArgumentImpl typedArgument = new TypedArgumentImpl(); - return typedArgument; - } - - /** - * - * - * @generated - */ - @Override - public TypedStarArgument createTypedStarArgument() { - TypedStarArgumentImpl typedStarArgument = new TypedStarArgumentImpl(); - return typedStarArgument; - } - - /** - * - * - * @generated - */ - @Override - public Reference createReference() { - ReferenceImpl reference = new ReferenceImpl(); - return reference; - } - - /** - * - * - * @generated - */ - @Override - public Interval createInterval() { - IntervalImpl interval = new IntervalImpl(); - return interval; - } - - /** - * - * - * @generated - */ - @Override - public Literal createLiteral() { - LiteralImpl literal = new LiteralImpl(); - return literal; - } - - /** - * - * - * @generated - */ - @Override - public LogicLiteral createLogicLiteral() { - LogicLiteralImpl logicLiteral = new LogicLiteralImpl(); - return logicLiteral; - } - - /** - * - * - * @generated - */ - @Override - public NumericLiteral createNumericLiteral() { - NumericLiteralImpl numericLiteral = new NumericLiteralImpl(); - return numericLiteral; - } - - /** - * - * - * @generated - */ - @Override - public InfinityLiteral createInfinityLiteral() { - InfinityLiteralImpl infinityLiteral = new InfinityLiteralImpl(); - return infinityLiteral; - } - - /** - * - * - * @generated - */ - @Override - public EmptyIntervalLiteral createEmptyIntervalLiteral() { - EmptyIntervalLiteralImpl emptyIntervalLiteral = new EmptyIntervalLiteralImpl(); - return emptyIntervalLiteral; - } - - /** - * - * - * @generated - */ - @Override - public StringLiteral createStringLiteral() { - StringLiteralImpl stringLiteral = new StringLiteralImpl(); - return stringLiteral; - } - - /** - * - * - * @generated - */ - @Override - public ClassDefinition createClassDefinition() { - ClassDefinitionImpl classDefinition = new ClassDefinitionImpl(); - return classDefinition; - } - - /** - * - * - * @generated - */ - @Override - public MemberDefinition createMemberDefinition() { - MemberDefinitionImpl memberDefinition = new MemberDefinitionImpl(); - return memberDefinition; - } - - /** - * - * - * @generated - */ - @Override - public Multiplicity createMultiplicity() { - MultiplicityImpl multiplicity = new MultiplicityImpl(); - return multiplicity; - } - - /** - * - * - * @generated - */ - @Override - public ManyMultiplicity createManyMultiplicity() { - ManyMultiplicityImpl manyMultiplicity = new ManyMultiplicityImpl(); - return manyMultiplicity; - } - - /** - * - * - * @generated - */ - @Override - public ExactMultiplicity createExactMultiplicity() { - ExactMultiplicityImpl exactMultiplicity = new ExactMultiplicityImpl(); - return exactMultiplicity; - } - - /** - * - * - * @generated - */ - @Override - public BoundedMultiplicity createBoundedMultiplicity() { - BoundedMultiplicityImpl boundedMultiplicity = new BoundedMultiplicityImpl(); - return boundedMultiplicity; - } - - /** - * - * - * @generated - */ - @Override - public ScopeDefinition createScopeDefinition() { - ScopeDefinitionImpl scopeDefinition = new ScopeDefinitionImpl(); - return scopeDefinition; - } - - /** - * - * - * @generated - */ - @Override - public ExactScopeDefinition createExactScopeDefinition() { - ExactScopeDefinitionImpl exactScopeDefinition = new ExactScopeDefinitionImpl(); - return exactScopeDefinition; - } - - /** - * - * - * @generated - */ - @Override - public BoundedScopeDefinition createBoundedScopeDefinition() { - BoundedScopeDefinitionImpl boundedScopeDefinition = new BoundedScopeDefinitionImpl(); - return boundedScopeDefinition; - } - - /** - * - * - * @generated - */ - @Override - public LowerBoundedScopeDefinition createLowerBoundedScopeDefinition() { - LowerBoundedScopeDefinitionImpl lowerBoundedScopeDefinition = new LowerBoundedScopeDefinitionImpl(); - return lowerBoundedScopeDefinition; - } - - /** - * - * - * @generated - */ - @Override - public ObjectiveDefinition createObjectiveDefinition() { - ObjectiveDefinitionImpl objectiveDefinition = new ObjectiveDefinitionImpl(); - return objectiveDefinition; - } - - /** - * - * - * @generated - */ - @Override - public Interpretation createInterpretation() { - InterpretationImpl interpretation = new InterpretationImpl(); - return interpretation; - } - - /** - * - * - * @generated - */ - @Override - public Variable createVariable() { - VariableImpl variable = new VariableImpl(); - return variable; - } - - /** - * - * - * @generated - */ - @Override - public Disjunction createDisjunction() { - DisjunctionImpl disjunction = new DisjunctionImpl(); - return disjunction; - } - - /** - * - * - * @generated - */ - @Override - public Switch createSwitch() { - SwitchImpl switch_ = new SwitchImpl(); - return switch_; - } - - /** - * - * - * @generated - */ - @Override - public Conjunction createConjunction() { - ConjunctionImpl conjunction = new ConjunctionImpl(); - return conjunction; - } - - /** - * - * - * @generated - */ - @Override - public Comparison createComparison() { - ComparisonImpl comparison = new ComparisonImpl(); - return comparison; - } - - /** - * - * - * @generated - */ - @Override - public BinaryExpression createBinaryExpression() { - BinaryExpressionImpl binaryExpression = new BinaryExpressionImpl(); - return binaryExpression; - } - - /** - * - * - * @generated - */ - @Override - public CastExpression createCastExpression() { - CastExpressionImpl castExpression = new CastExpressionImpl(); - return castExpression; - } - - /** - * - * - * @generated - */ - @Override - public UnaryExpression createUnaryExpression() { - UnaryExpressionImpl unaryExpression = new UnaryExpressionImpl(); - return unaryExpression; - } - - /** - * - * - * @generated - */ - @Override - public Node createNode() { - NodeImpl node = new NodeImpl(); - return node; - } - - /** - * - * - * @generated - */ - @Override - public Predicate createPredicate() { - PredicateImpl predicate = new PredicateImpl(); - return predicate; - } - - /** - * - * - * @generated - */ - @Override - public Metric createMetric() { - MetricImpl metric = new MetricImpl(); - return metric; - } - - /** - * - * - * @generated - */ - public BinaryOperator createBinaryOperatorFromString(EDataType eDataType, String initialValue) { - BinaryOperator result = BinaryOperator.get(initialValue); - if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); - return result; - } - - /** - * - * - * @generated - */ - public String convertBinaryOperatorToString(EDataType eDataType, Object instanceValue) { - return instanceValue == null ? null : instanceValue.toString(); - } - - /** - * - * - * @generated - */ - public UnaryOp createUnaryOpFromString(EDataType eDataType, String initialValue) { - UnaryOp result = UnaryOp.get(initialValue); - if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); - return result; - } - - /** - * - * - * @generated - */ - public String convertUnaryOpToString(EDataType eDataType, Object instanceValue) { - return instanceValue == null ? null : instanceValue.toString(); - } - - /** - * - * - * @generated - */ - public LogicValue createLogicValueFromString(EDataType eDataType, String initialValue) { - LogicValue result = LogicValue.get(initialValue); - if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); - return result; - } - - /** - * - * - * @generated - */ - public String convertLogicValueToString(EDataType eDataType, Object instanceValue) { - return instanceValue == null ? null : instanceValue.toString(); - } - - /** - * - * - * @generated - */ - public ObjectiveKind createObjectiveKindFromString(EDataType eDataType, String initialValue) { - ObjectiveKind result = ObjectiveKind.get(initialValue); - if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); - return result; - } - - /** - * - * - * @generated - */ - public String convertObjectiveKindToString(EDataType eDataType, Object instanceValue) { - return instanceValue == null ? null : instanceValue.toString(); - } - - /** - * - * - * @generated - */ - public Quantifier createQuantifierFromString(EDataType eDataType, String initialValue) { - Quantifier result = Quantifier.get(initialValue); - if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); - return result; - } - - /** - * - * - * @generated - */ - public String convertQuantifierToString(EDataType eDataType, Object instanceValue) { - return instanceValue == null ? null : instanceValue.toString(); - } - - /** - * - * - * @generated - */ - @Override - public SolverLanguagePackage getSolverLanguagePackage() { - return (SolverLanguagePackage)getEPackage(); - } - - /** - * - * - * @deprecated - * @generated - */ - @Deprecated - public static SolverLanguagePackage getPackage() { - return SolverLanguagePackage.eINSTANCE; - } - -} //SolverLanguageFactoryImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java deleted file mode 100644 index e8834386..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java +++ /dev/null @@ -1,2726 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EAttribute; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EEnum; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.EReference; - -import org.eclipse.emf.ecore.impl.EPackageImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Aggregation; -import org.eclipse.viatra.solver.language.solverLanguage.Argument; -import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; -import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression; -import org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator; -import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Call; -import org.eclipse.viatra.solver.language.solverLanguage.Case; -import org.eclipse.viatra.solver.language.solverLanguage.CastExpression; -import org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Comparison; -import org.eclipse.viatra.solver.language.solverLanguage.Conjunction; -import org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Disjunction; -import org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument; -import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Functor; -import org.eclipse.viatra.solver.language.solverLanguage.IfElse; -import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.Interpretation; -import org.eclipse.viatra.solver.language.solverLanguage.Interval; -import org.eclipse.viatra.solver.language.solverLanguage.Let; -import org.eclipse.viatra.solver.language.solverLanguage.LetBinding; -import org.eclipse.viatra.solver.language.solverLanguage.Literal; -import org.eclipse.viatra.solver.language.solverLanguage.LocalVariables; -import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.LogicValue; -import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Metric; -import org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.Node; -import org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind; -import org.eclipse.viatra.solver.language.solverLanguage.Predicate; -import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Problem; -import org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression; -import org.eclipse.viatra.solver.language.solverLanguage.Quantifier; -import org.eclipse.viatra.solver.language.solverLanguage.Reference; -import org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.StarArgument; -import org.eclipse.viatra.solver.language.solverLanguage.Statement; -import org.eclipse.viatra.solver.language.solverLanguage.StringLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.Switch; -import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument; -import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument; -import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression; -import org.eclipse.viatra.solver.language.solverLanguage.UnaryOp; -import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Variable; - -/** - * - * An implementation of the model Package. - * - * @generated - */ -public class SolverLanguagePackageImpl extends EPackageImpl implements SolverLanguagePackage { - /** - * - * - * @generated - */ - private EClass problemEClass = null; - - /** - * - * - * @generated - */ - private EClass statementEClass = null; - - /** - * - * - * @generated - */ - private EClass predicateDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass unnamedErrorPrediateDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass defaultDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass metricDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass externPredicateDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass externMetricDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass externAggregatorDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass externDatatypeDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass namedElementEClass = null; - - /** - * - * - * @generated - */ - private EClass expressionEClass = null; - - /** - * - * - * @generated - */ - private EClass ifElseEClass = null; - - /** - * - * - * @generated - */ - private EClass letEClass = null; - - /** - * - * - * @generated - */ - private EClass letBindingEClass = null; - - /** - * - * - * @generated - */ - private EClass caseEClass = null; - - /** - * - * - * @generated - */ - private EClass localVariablesEClass = null; - - /** - * - * - * @generated - */ - private EClass quantifiedExpressionEClass = null; - - /** - * - * - * @generated - */ - private EClass aggregationEClass = null; - - /** - * - * - * @generated - */ - private EClass callEClass = null; - - /** - * - * - * @generated - */ - private EClass argumentListEClass = null; - - /** - * - * - * @generated - */ - private EClass argumentEClass = null; - - /** - * - * - * @generated - */ - private EClass expressionArgumentEClass = null; - - /** - * - * - * @generated - */ - private EClass starArgumentEClass = null; - - /** - * - * - * @generated - */ - private EClass typedArgumentEClass = null; - - /** - * - * - * @generated - */ - private EClass typedStarArgumentEClass = null; - - /** - * - * - * @generated - */ - private EClass referenceEClass = null; - - /** - * - * - * @generated - */ - private EClass intervalEClass = null; - - /** - * - * - * @generated - */ - private EClass literalEClass = null; - - /** - * - * - * @generated - */ - private EClass logicLiteralEClass = null; - - /** - * - * - * @generated - */ - private EClass numericLiteralEClass = null; - - /** - * - * - * @generated - */ - private EClass infinityLiteralEClass = null; - - /** - * - * - * @generated - */ - private EClass emptyIntervalLiteralEClass = null; - - /** - * - * - * @generated - */ - private EClass stringLiteralEClass = null; - - /** - * - * - * @generated - */ - private EClass classDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass memberDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass multiplicityEClass = null; - - /** - * - * - * @generated - */ - private EClass manyMultiplicityEClass = null; - - /** - * - * - * @generated - */ - private EClass exactMultiplicityEClass = null; - - /** - * - * - * @generated - */ - private EClass boundedMultiplicityEClass = null; - - /** - * - * - * @generated - */ - private EClass scopeDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass exactScopeDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass boundedScopeDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass lowerBoundedScopeDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass objectiveDefinitionEClass = null; - - /** - * - * - * @generated - */ - private EClass interpretationEClass = null; - - /** - * - * - * @generated - */ - private EClass variableEClass = null; - - /** - * - * - * @generated - */ - private EClass disjunctionEClass = null; - - /** - * - * - * @generated - */ - private EClass switchEClass = null; - - /** - * - * - * @generated - */ - private EClass conjunctionEClass = null; - - /** - * - * - * @generated - */ - private EClass comparisonEClass = null; - - /** - * - * - * @generated - */ - private EClass binaryExpressionEClass = null; - - /** - * - * - * @generated - */ - private EClass castExpressionEClass = null; - - /** - * - * - * @generated - */ - private EClass unaryExpressionEClass = null; - - /** - * - * - * @generated - */ - private EClass nodeEClass = null; - - /** - * - * - * @generated - */ - private EClass functorEClass = null; - - /** - * - * - * @generated - */ - private EClass predicateEClass = null; - - /** - * - * - * @generated - */ - private EClass metricEClass = null; - - /** - * - * - * @generated - */ - private EEnum binaryOperatorEEnum = null; - - /** - * - * - * @generated - */ - private EEnum unaryOpEEnum = null; - - /** - * - * - * @generated - */ - private EEnum logicValueEEnum = null; - - /** - * - * - * @generated - */ - private EEnum objectiveKindEEnum = null; - - /** - * - * - * @generated - */ - private EEnum quantifierEEnum = null; - - /** - * Creates an instance of the model Package, registered with - * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package - * package URI value. - *

Note: the correct way to create the package is via the static - * factory method {@link #init init()}, which also performs - * initialization of the package, or returns the registered package, - * if one already exists. - * - * - * @see org.eclipse.emf.ecore.EPackage.Registry - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#eNS_URI - * @see #init() - * @generated - */ - private SolverLanguagePackageImpl() { - super(eNS_URI, SolverLanguageFactory.eINSTANCE); - } - - /** - * - * - * @generated - */ - private static boolean isInited = false; - - /** - * Creates, registers, and initializes the Package for this model, and for any others upon which it depends. - * - *

This method is used to initialize {@link SolverLanguagePackage#eINSTANCE} when that field is accessed. - * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. - * - * - * @see #eNS_URI - * @see #createPackageContents() - * @see #initializePackageContents() - * @generated - */ - public static SolverLanguagePackage init() { - if (isInited) return (SolverLanguagePackage)EPackage.Registry.INSTANCE.getEPackage(SolverLanguagePackage.eNS_URI); - - // Obtain or create and register package - Object registeredSolverLanguagePackage = EPackage.Registry.INSTANCE.get(eNS_URI); - SolverLanguagePackageImpl theSolverLanguagePackage = registeredSolverLanguagePackage instanceof SolverLanguagePackageImpl ? (SolverLanguagePackageImpl)registeredSolverLanguagePackage : new SolverLanguagePackageImpl(); - - isInited = true; - - // Create package meta-data objects - theSolverLanguagePackage.createPackageContents(); - - // Initialize created meta-data - theSolverLanguagePackage.initializePackageContents(); - - // Mark meta-data to indicate it can't be changed - theSolverLanguagePackage.freeze(); - - // Update the registry and return the package - EPackage.Registry.INSTANCE.put(SolverLanguagePackage.eNS_URI, theSolverLanguagePackage); - return theSolverLanguagePackage; - } - - /** - * - * - * @generated - */ - @Override - public EClass getProblem() { - return problemEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getProblem_Statements() { - return (EReference)problemEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getStatement() { - return statementEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getPredicateDefinition() { - return predicateDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getPredicateDefinition_Head() { - return (EReference)predicateDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getPredicateDefinition_Body() { - return (EReference)predicateDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getPredicateDefinition_Functional() { - return (EAttribute)predicateDefinitionEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getPredicateDefinition_Error() { - return (EAttribute)predicateDefinitionEClass.getEStructuralFeatures().get(3); - } - - /** - * - * - * @generated - */ - @Override - public EClass getUnnamedErrorPrediateDefinition() { - return unnamedErrorPrediateDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getUnnamedErrorPrediateDefinition_ArgumentList() { - return (EReference)unnamedErrorPrediateDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getUnnamedErrorPrediateDefinition_Body() { - return (EReference)unnamedErrorPrediateDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getDefaultDefinition() { - return defaultDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getDefaultDefinition_Head() { - return (EReference)defaultDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getDefaultDefinition_Range() { - return (EReference)defaultDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getMetricDefinition() { - return metricDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getMetricDefinition_Head() { - return (EReference)metricDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getMetricDefinition_Body() { - return (EReference)metricDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getMetricDefinition_Type() { - return (EReference)metricDefinitionEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EClass getExternPredicateDefinition() { - return externPredicateDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getExternPredicateDefinition_Name() { - return (EAttribute)externPredicateDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getExternPredicateDefinition_ArgumentList() { - return (EReference)externPredicateDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getExternMetricDefinition() { - return externMetricDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getExternMetricDefinition_Type() { - return (EReference)externMetricDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getExternMetricDefinition_Name() { - return (EAttribute)externMetricDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getExternMetricDefinition_ArgumentList() { - return (EReference)externMetricDefinitionEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EClass getExternAggregatorDefinition() { - return externAggregatorDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getExternAggregatorDefinition_Type() { - return (EReference)externAggregatorDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getExternAggregatorDefinition_Name() { - return (EAttribute)externAggregatorDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getExternAggregatorDefinition_InputType() { - return (EReference)externAggregatorDefinitionEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EClass getExternDatatypeDefinition() { - return externDatatypeDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getExternDatatypeDefinition_Name() { - return (EAttribute)externDatatypeDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getExternDatatypeDefinition_Supertypes() { - return (EReference)externDatatypeDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getNamedElement() { - return namedElementEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getNamedElement_Name() { - return (EAttribute)namedElementEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getExpression() { - return expressionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getIfElse() { - return ifElseEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getIfElse_Then() { - return (EReference)ifElseEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getIfElse_Else() { - return (EReference)ifElseEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getIfElse_Condition() { - return (EReference)ifElseEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EClass getLet() { - return letEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getLet_Bindings() { - return (EReference)letEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getLet_Body() { - return (EReference)letEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getLetBinding() { - return letBindingEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getLetBinding_Variable() { - return (EReference)letBindingEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getLetBinding_Value() { - return (EReference)letBindingEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getCase() { - return caseEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getCase_Body() { - return (EReference)caseEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getCase_Condition() { - return (EReference)caseEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getLocalVariables() { - return localVariablesEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getLocalVariables_Variables() { - return (EReference)localVariablesEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getQuantifiedExpression() { - return quantifiedExpressionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getQuantifiedExpression_LocalVariables() { - return (EReference)quantifiedExpressionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getQuantifiedExpression_Body() { - return (EReference)quantifiedExpressionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getQuantifiedExpression_Quantifier() { - return (EAttribute)quantifiedExpressionEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EClass getAggregation() { - return aggregationEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getAggregation_Op() { - return (EReference)aggregationEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getAggregation_LocalVariables() { - return (EReference)aggregationEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getAggregation_Body() { - return (EReference)aggregationEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EReference getAggregation_Condition() { - return (EReference)aggregationEClass.getEStructuralFeatures().get(3); - } - - /** - * - * - * @generated - */ - @Override - public EClass getCall() { - return callEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getCall_Functor() { - return (EReference)callEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getCall_TransitiveClosure() { - return (EAttribute)callEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getCall_ReflexiveTransitiveClosure() { - return (EAttribute)callEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EReference getCall_ArgumentList() { - return (EReference)callEClass.getEStructuralFeatures().get(3); - } - - /** - * - * - * @generated - */ - @Override - public EClass getArgumentList() { - return argumentListEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getArgumentList_Arguments() { - return (EReference)argumentListEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getArgument() { - return argumentEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getExpressionArgument() { - return expressionArgumentEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getExpressionArgument_Body() { - return (EReference)expressionArgumentEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getStarArgument() { - return starArgumentEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getTypedArgument() { - return typedArgumentEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getTypedArgument_Type() { - return (EReference)typedArgumentEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getTypedArgument_Variable() { - return (EReference)typedArgumentEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getTypedStarArgument() { - return typedStarArgumentEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getTypedStarArgument_Type() { - return (EReference)typedStarArgumentEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getReference() { - return referenceEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getReference_Referred() { - return (EReference)referenceEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getInterval() { - return intervalEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getInterval_LowerBound() { - return (EReference)intervalEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getInterval_UpperBound() { - return (EReference)intervalEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getLiteral() { - return literalEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getLogicLiteral() { - return logicLiteralEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getLogicLiteral_Value() { - return (EAttribute)logicLiteralEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getNumericLiteral() { - return numericLiteralEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getNumericLiteral_Value() { - return (EAttribute)numericLiteralEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getInfinityLiteral() { - return infinityLiteralEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getEmptyIntervalLiteral() { - return emptyIntervalLiteralEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getStringLiteral() { - return stringLiteralEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getStringLiteral_Value() { - return (EAttribute)stringLiteralEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getClassDefinition() { - return classDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getClassDefinition_Abstract() { - return (EAttribute)classDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getClassDefinition_Name() { - return (EAttribute)classDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getClassDefinition_Superclasses() { - return (EReference)classDefinitionEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EReference getClassDefinition_Members() { - return (EReference)classDefinitionEClass.getEStructuralFeatures().get(3); - } - - /** - * - * - * @generated - */ - @Override - public EClass getMemberDefinition() { - return memberDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getMemberDefinition_Containment() { - return (EAttribute)memberDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getMemberDefinition_Type() { - return (EReference)memberDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getMemberDefinition_Multiplicity() { - return (EReference)memberDefinitionEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getMemberDefinition_Name() { - return (EAttribute)memberDefinitionEClass.getEStructuralFeatures().get(3); - } - - /** - * - * - * @generated - */ - @Override - public EReference getMemberDefinition_Opposite() { - return (EReference)memberDefinitionEClass.getEStructuralFeatures().get(4); - } - - /** - * - * - * @generated - */ - @Override - public EClass getMultiplicity() { - return multiplicityEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getManyMultiplicity() { - return manyMultiplicityEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getExactMultiplicity() { - return exactMultiplicityEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getExactMultiplicity_Multiplicity() { - return (EAttribute)exactMultiplicityEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getBoundedMultiplicity() { - return boundedMultiplicityEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getBoundedMultiplicity_LowerBound() { - return (EAttribute)boundedMultiplicityEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getBoundedMultiplicity_UpperBound() { - return (EAttribute)boundedMultiplicityEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getScopeDefinition() { - return scopeDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getScopeDefinition_Type() { - return (EReference)scopeDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getExactScopeDefinition() { - return exactScopeDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getExactScopeDefinition_ExactScope() { - return (EAttribute)exactScopeDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getBoundedScopeDefinition() { - return boundedScopeDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getBoundedScopeDefinition_LowerBound() { - return (EAttribute)boundedScopeDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getBoundedScopeDefinition_UpperBound() { - return (EAttribute)boundedScopeDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getLowerBoundedScopeDefinition() { - return lowerBoundedScopeDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getLowerBoundedScopeDefinition_LowerBound() { - return (EAttribute)lowerBoundedScopeDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getObjectiveDefinition() { - return objectiveDefinitionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getObjectiveDefinition_Kind() { - return (EAttribute)objectiveDefinitionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getObjectiveDefinition_Objective() { - return (EReference)objectiveDefinitionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getInterpretation() { - return interpretationEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getInterpretation_Body() { - return (EReference)interpretationEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getInterpretation_Range() { - return (EReference)interpretationEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getVariable() { - return variableEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getVariable_Type() { - return (EReference)variableEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getDisjunction() { - return disjunctionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getDisjunction_Children() { - return (EReference)disjunctionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getSwitch() { - return switchEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getSwitch_Cases() { - return (EReference)switchEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getConjunction() { - return conjunctionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getConjunction_Children() { - return (EReference)conjunctionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getComparison() { - return comparisonEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getComparison_Left() { - return (EReference)comparisonEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getComparison_Op() { - return (EAttribute)comparisonEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getComparison_Right() { - return (EReference)comparisonEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EClass getBinaryExpression() { - return binaryExpressionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getBinaryExpression_Left() { - return (EReference)binaryExpressionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getBinaryExpression_Op() { - return (EAttribute)binaryExpressionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EReference getBinaryExpression_Right() { - return (EReference)binaryExpressionEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EClass getCastExpression() { - return castExpressionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getCastExpression_Body() { - return (EReference)castExpressionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getCastExpression_Type() { - return (EReference)castExpressionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getUnaryExpression() { - return unaryExpressionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getUnaryExpression_Op() { - return (EAttribute)unaryExpressionEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EReference getUnaryExpression_Body() { - return (EReference)unaryExpressionEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getNode() { - return nodeEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getNode_WithId() { - return (EAttribute)nodeEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getFunctor() { - return functorEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getFunctor_Parameters() { - return (EReference)functorEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getPredicate() { - return predicateEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getMetric() { - return metricEClass; - } - - /** - * - * - * @generated - */ - @Override - public EReference getMetric_ReturnType() { - return (EReference)metricEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EEnum getBinaryOperator() { - return binaryOperatorEEnum; - } - - /** - * - * - * @generated - */ - @Override - public EEnum getUnaryOp() { - return unaryOpEEnum; - } - - /** - * - * - * @generated - */ - @Override - public EEnum getLogicValue() { - return logicValueEEnum; - } - - /** - * - * - * @generated - */ - @Override - public EEnum getObjectiveKind() { - return objectiveKindEEnum; - } - - /** - * - * - * @generated - */ - @Override - public EEnum getQuantifier() { - return quantifierEEnum; - } - - /** - * - * - * @generated - */ - @Override - public SolverLanguageFactory getSolverLanguageFactory() { - return (SolverLanguageFactory)getEFactoryInstance(); - } - - /** - * - * - * @generated - */ - private boolean isCreated = false; - - /** - * Creates the meta-model objects for the package. This method is - * guarded to have no affect on any invocation but its first. - * - * - * @generated - */ - public void createPackageContents() { - if (isCreated) return; - isCreated = true; - - // Create classes and their features - problemEClass = createEClass(PROBLEM); - createEReference(problemEClass, PROBLEM__STATEMENTS); - - statementEClass = createEClass(STATEMENT); - - predicateDefinitionEClass = createEClass(PREDICATE_DEFINITION); - createEReference(predicateDefinitionEClass, PREDICATE_DEFINITION__HEAD); - createEReference(predicateDefinitionEClass, PREDICATE_DEFINITION__BODY); - createEAttribute(predicateDefinitionEClass, PREDICATE_DEFINITION__FUNCTIONAL); - createEAttribute(predicateDefinitionEClass, PREDICATE_DEFINITION__ERROR); - - unnamedErrorPrediateDefinitionEClass = createEClass(UNNAMED_ERROR_PREDIATE_DEFINITION); - createEReference(unnamedErrorPrediateDefinitionEClass, UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST); - createEReference(unnamedErrorPrediateDefinitionEClass, UNNAMED_ERROR_PREDIATE_DEFINITION__BODY); - - defaultDefinitionEClass = createEClass(DEFAULT_DEFINITION); - createEReference(defaultDefinitionEClass, DEFAULT_DEFINITION__HEAD); - createEReference(defaultDefinitionEClass, DEFAULT_DEFINITION__RANGE); - - metricDefinitionEClass = createEClass(METRIC_DEFINITION); - createEReference(metricDefinitionEClass, METRIC_DEFINITION__HEAD); - createEReference(metricDefinitionEClass, METRIC_DEFINITION__BODY); - createEReference(metricDefinitionEClass, METRIC_DEFINITION__TYPE); - - externPredicateDefinitionEClass = createEClass(EXTERN_PREDICATE_DEFINITION); - createEAttribute(externPredicateDefinitionEClass, EXTERN_PREDICATE_DEFINITION__NAME); - createEReference(externPredicateDefinitionEClass, EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST); - - externMetricDefinitionEClass = createEClass(EXTERN_METRIC_DEFINITION); - createEReference(externMetricDefinitionEClass, EXTERN_METRIC_DEFINITION__TYPE); - createEAttribute(externMetricDefinitionEClass, EXTERN_METRIC_DEFINITION__NAME); - createEReference(externMetricDefinitionEClass, EXTERN_METRIC_DEFINITION__ARGUMENT_LIST); - - externAggregatorDefinitionEClass = createEClass(EXTERN_AGGREGATOR_DEFINITION); - createEReference(externAggregatorDefinitionEClass, EXTERN_AGGREGATOR_DEFINITION__TYPE); - createEAttribute(externAggregatorDefinitionEClass, EXTERN_AGGREGATOR_DEFINITION__NAME); - createEReference(externAggregatorDefinitionEClass, EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE); - - externDatatypeDefinitionEClass = createEClass(EXTERN_DATATYPE_DEFINITION); - createEAttribute(externDatatypeDefinitionEClass, EXTERN_DATATYPE_DEFINITION__NAME); - createEReference(externDatatypeDefinitionEClass, EXTERN_DATATYPE_DEFINITION__SUPERTYPES); - - namedElementEClass = createEClass(NAMED_ELEMENT); - createEAttribute(namedElementEClass, NAMED_ELEMENT__NAME); - - expressionEClass = createEClass(EXPRESSION); - - ifElseEClass = createEClass(IF_ELSE); - createEReference(ifElseEClass, IF_ELSE__THEN); - createEReference(ifElseEClass, IF_ELSE__ELSE); - createEReference(ifElseEClass, IF_ELSE__CONDITION); - - letEClass = createEClass(LET); - createEReference(letEClass, LET__BINDINGS); - createEReference(letEClass, LET__BODY); - - letBindingEClass = createEClass(LET_BINDING); - createEReference(letBindingEClass, LET_BINDING__VARIABLE); - createEReference(letBindingEClass, LET_BINDING__VALUE); - - caseEClass = createEClass(CASE); - createEReference(caseEClass, CASE__BODY); - createEReference(caseEClass, CASE__CONDITION); - - localVariablesEClass = createEClass(LOCAL_VARIABLES); - createEReference(localVariablesEClass, LOCAL_VARIABLES__VARIABLES); - - quantifiedExpressionEClass = createEClass(QUANTIFIED_EXPRESSION); - createEReference(quantifiedExpressionEClass, QUANTIFIED_EXPRESSION__LOCAL_VARIABLES); - createEReference(quantifiedExpressionEClass, QUANTIFIED_EXPRESSION__BODY); - createEAttribute(quantifiedExpressionEClass, QUANTIFIED_EXPRESSION__QUANTIFIER); - - aggregationEClass = createEClass(AGGREGATION); - createEReference(aggregationEClass, AGGREGATION__OP); - createEReference(aggregationEClass, AGGREGATION__LOCAL_VARIABLES); - createEReference(aggregationEClass, AGGREGATION__BODY); - createEReference(aggregationEClass, AGGREGATION__CONDITION); - - callEClass = createEClass(CALL); - createEReference(callEClass, CALL__FUNCTOR); - createEAttribute(callEClass, CALL__TRANSITIVE_CLOSURE); - createEAttribute(callEClass, CALL__REFLEXIVE_TRANSITIVE_CLOSURE); - createEReference(callEClass, CALL__ARGUMENT_LIST); - - argumentListEClass = createEClass(ARGUMENT_LIST); - createEReference(argumentListEClass, ARGUMENT_LIST__ARGUMENTS); - - argumentEClass = createEClass(ARGUMENT); - - expressionArgumentEClass = createEClass(EXPRESSION_ARGUMENT); - createEReference(expressionArgumentEClass, EXPRESSION_ARGUMENT__BODY); - - starArgumentEClass = createEClass(STAR_ARGUMENT); - - typedArgumentEClass = createEClass(TYPED_ARGUMENT); - createEReference(typedArgumentEClass, TYPED_ARGUMENT__TYPE); - createEReference(typedArgumentEClass, TYPED_ARGUMENT__VARIABLE); - - typedStarArgumentEClass = createEClass(TYPED_STAR_ARGUMENT); - createEReference(typedStarArgumentEClass, TYPED_STAR_ARGUMENT__TYPE); - - referenceEClass = createEClass(REFERENCE); - createEReference(referenceEClass, REFERENCE__REFERRED); - - intervalEClass = createEClass(INTERVAL); - createEReference(intervalEClass, INTERVAL__LOWER_BOUND); - createEReference(intervalEClass, INTERVAL__UPPER_BOUND); - - literalEClass = createEClass(LITERAL); - - logicLiteralEClass = createEClass(LOGIC_LITERAL); - createEAttribute(logicLiteralEClass, LOGIC_LITERAL__VALUE); - - numericLiteralEClass = createEClass(NUMERIC_LITERAL); - createEAttribute(numericLiteralEClass, NUMERIC_LITERAL__VALUE); - - infinityLiteralEClass = createEClass(INFINITY_LITERAL); - - emptyIntervalLiteralEClass = createEClass(EMPTY_INTERVAL_LITERAL); - - stringLiteralEClass = createEClass(STRING_LITERAL); - createEAttribute(stringLiteralEClass, STRING_LITERAL__VALUE); - - classDefinitionEClass = createEClass(CLASS_DEFINITION); - createEAttribute(classDefinitionEClass, CLASS_DEFINITION__ABSTRACT); - createEAttribute(classDefinitionEClass, CLASS_DEFINITION__NAME); - createEReference(classDefinitionEClass, CLASS_DEFINITION__SUPERCLASSES); - createEReference(classDefinitionEClass, CLASS_DEFINITION__MEMBERS); - - memberDefinitionEClass = createEClass(MEMBER_DEFINITION); - createEAttribute(memberDefinitionEClass, MEMBER_DEFINITION__CONTAINMENT); - createEReference(memberDefinitionEClass, MEMBER_DEFINITION__TYPE); - createEReference(memberDefinitionEClass, MEMBER_DEFINITION__MULTIPLICITY); - createEAttribute(memberDefinitionEClass, MEMBER_DEFINITION__NAME); - createEReference(memberDefinitionEClass, MEMBER_DEFINITION__OPPOSITE); - - multiplicityEClass = createEClass(MULTIPLICITY); - - manyMultiplicityEClass = createEClass(MANY_MULTIPLICITY); - - exactMultiplicityEClass = createEClass(EXACT_MULTIPLICITY); - createEAttribute(exactMultiplicityEClass, EXACT_MULTIPLICITY__MULTIPLICITY); - - boundedMultiplicityEClass = createEClass(BOUNDED_MULTIPLICITY); - createEAttribute(boundedMultiplicityEClass, BOUNDED_MULTIPLICITY__LOWER_BOUND); - createEAttribute(boundedMultiplicityEClass, BOUNDED_MULTIPLICITY__UPPER_BOUND); - - scopeDefinitionEClass = createEClass(SCOPE_DEFINITION); - createEReference(scopeDefinitionEClass, SCOPE_DEFINITION__TYPE); - - exactScopeDefinitionEClass = createEClass(EXACT_SCOPE_DEFINITION); - createEAttribute(exactScopeDefinitionEClass, EXACT_SCOPE_DEFINITION__EXACT_SCOPE); - - boundedScopeDefinitionEClass = createEClass(BOUNDED_SCOPE_DEFINITION); - createEAttribute(boundedScopeDefinitionEClass, BOUNDED_SCOPE_DEFINITION__LOWER_BOUND); - createEAttribute(boundedScopeDefinitionEClass, BOUNDED_SCOPE_DEFINITION__UPPER_BOUND); - - lowerBoundedScopeDefinitionEClass = createEClass(LOWER_BOUNDED_SCOPE_DEFINITION); - createEAttribute(lowerBoundedScopeDefinitionEClass, LOWER_BOUNDED_SCOPE_DEFINITION__LOWER_BOUND); - - objectiveDefinitionEClass = createEClass(OBJECTIVE_DEFINITION); - createEAttribute(objectiveDefinitionEClass, OBJECTIVE_DEFINITION__KIND); - createEReference(objectiveDefinitionEClass, OBJECTIVE_DEFINITION__OBJECTIVE); - - interpretationEClass = createEClass(INTERPRETATION); - createEReference(interpretationEClass, INTERPRETATION__BODY); - createEReference(interpretationEClass, INTERPRETATION__RANGE); - - variableEClass = createEClass(VARIABLE); - createEReference(variableEClass, VARIABLE__TYPE); - - disjunctionEClass = createEClass(DISJUNCTION); - createEReference(disjunctionEClass, DISJUNCTION__CHILDREN); - - switchEClass = createEClass(SWITCH); - createEReference(switchEClass, SWITCH__CASES); - - conjunctionEClass = createEClass(CONJUNCTION); - createEReference(conjunctionEClass, CONJUNCTION__CHILDREN); - - comparisonEClass = createEClass(COMPARISON); - createEReference(comparisonEClass, COMPARISON__LEFT); - createEAttribute(comparisonEClass, COMPARISON__OP); - createEReference(comparisonEClass, COMPARISON__RIGHT); - - binaryExpressionEClass = createEClass(BINARY_EXPRESSION); - createEReference(binaryExpressionEClass, BINARY_EXPRESSION__LEFT); - createEAttribute(binaryExpressionEClass, BINARY_EXPRESSION__OP); - createEReference(binaryExpressionEClass, BINARY_EXPRESSION__RIGHT); - - castExpressionEClass = createEClass(CAST_EXPRESSION); - createEReference(castExpressionEClass, CAST_EXPRESSION__BODY); - createEReference(castExpressionEClass, CAST_EXPRESSION__TYPE); - - unaryExpressionEClass = createEClass(UNARY_EXPRESSION); - createEAttribute(unaryExpressionEClass, UNARY_EXPRESSION__OP); - createEReference(unaryExpressionEClass, UNARY_EXPRESSION__BODY); - - nodeEClass = createEClass(NODE); - createEAttribute(nodeEClass, NODE__WITH_ID); - - functorEClass = createEClass(FUNCTOR); - createEReference(functorEClass, FUNCTOR__PARAMETERS); - - predicateEClass = createEClass(PREDICATE); - - metricEClass = createEClass(METRIC); - createEReference(metricEClass, METRIC__RETURN_TYPE); - - // Create enums - binaryOperatorEEnum = createEEnum(BINARY_OPERATOR); - unaryOpEEnum = createEEnum(UNARY_OP); - logicValueEEnum = createEEnum(LOGIC_VALUE); - objectiveKindEEnum = createEEnum(OBJECTIVE_KIND); - quantifierEEnum = createEEnum(QUANTIFIER); - } - - /** - * - * - * @generated - */ - private boolean isInitialized = false; - - /** - * Complete the initialization of the package and its meta-model. This - * method is guarded to have no affect on any invocation but its first. - * - * - * @generated - */ - public void initializePackageContents() { - if (isInitialized) return; - isInitialized = true; - - // Initialize package - setName(eNAME); - setNsPrefix(eNS_PREFIX); - setNsURI(eNS_URI); - - // Create type parameters - - // Set bounds for type parameters - - // Add supertypes to classes - predicateDefinitionEClass.getESuperTypes().add(this.getStatement()); - unnamedErrorPrediateDefinitionEClass.getESuperTypes().add(this.getStatement()); - defaultDefinitionEClass.getESuperTypes().add(this.getStatement()); - metricDefinitionEClass.getESuperTypes().add(this.getStatement()); - externPredicateDefinitionEClass.getESuperTypes().add(this.getStatement()); - externMetricDefinitionEClass.getESuperTypes().add(this.getStatement()); - externAggregatorDefinitionEClass.getESuperTypes().add(this.getStatement()); - externDatatypeDefinitionEClass.getESuperTypes().add(this.getStatement()); - expressionEClass.getESuperTypes().add(this.getStatement()); - ifElseEClass.getESuperTypes().add(this.getExpression()); - letEClass.getESuperTypes().add(this.getExpression()); - caseEClass.getESuperTypes().add(this.getExpression()); - quantifiedExpressionEClass.getESuperTypes().add(this.getExpression()); - aggregationEClass.getESuperTypes().add(this.getExpression()); - callEClass.getESuperTypes().add(this.getExpression()); - expressionArgumentEClass.getESuperTypes().add(this.getArgument()); - starArgumentEClass.getESuperTypes().add(this.getArgument()); - typedArgumentEClass.getESuperTypes().add(this.getArgument()); - typedStarArgumentEClass.getESuperTypes().add(this.getArgument()); - referenceEClass.getESuperTypes().add(this.getExpression()); - intervalEClass.getESuperTypes().add(this.getExpression()); - literalEClass.getESuperTypes().add(this.getExpression()); - logicLiteralEClass.getESuperTypes().add(this.getLiteral()); - numericLiteralEClass.getESuperTypes().add(this.getLiteral()); - infinityLiteralEClass.getESuperTypes().add(this.getLiteral()); - emptyIntervalLiteralEClass.getESuperTypes().add(this.getLiteral()); - stringLiteralEClass.getESuperTypes().add(this.getLiteral()); - classDefinitionEClass.getESuperTypes().add(this.getStatement()); - manyMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); - exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); - boundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity()); - scopeDefinitionEClass.getESuperTypes().add(this.getStatement()); - exactScopeDefinitionEClass.getESuperTypes().add(this.getScopeDefinition()); - boundedScopeDefinitionEClass.getESuperTypes().add(this.getScopeDefinition()); - lowerBoundedScopeDefinitionEClass.getESuperTypes().add(this.getScopeDefinition()); - objectiveDefinitionEClass.getESuperTypes().add(this.getStatement()); - interpretationEClass.getESuperTypes().add(this.getStatement()); - variableEClass.getESuperTypes().add(this.getNamedElement()); - disjunctionEClass.getESuperTypes().add(this.getExpression()); - switchEClass.getESuperTypes().add(this.getExpression()); - conjunctionEClass.getESuperTypes().add(this.getExpression()); - comparisonEClass.getESuperTypes().add(this.getExpression()); - binaryExpressionEClass.getESuperTypes().add(this.getExpression()); - castExpressionEClass.getESuperTypes().add(this.getExpression()); - unaryExpressionEClass.getESuperTypes().add(this.getExpression()); - nodeEClass.getESuperTypes().add(this.getNamedElement()); - functorEClass.getESuperTypes().add(this.getNamedElement()); - predicateEClass.getESuperTypes().add(this.getFunctor()); - metricEClass.getESuperTypes().add(this.getFunctor()); - - // Initialize classes and features; add operations and parameters - initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getProblem_Statements(), this.getStatement(), null, "statements", null, 0, -1, Problem.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(statementEClass, Statement.class, "Statement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(predicateDefinitionEClass, PredicateDefinition.class, "PredicateDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getPredicateDefinition_Head(), this.getExpression(), null, "head", null, 0, 1, PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getPredicateDefinition_Body(), this.getExpression(), null, "body", null, 0, 1, PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getPredicateDefinition_Functional(), ecorePackage.getEBoolean(), "functional", null, 0, 1, PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getPredicateDefinition_Error(), ecorePackage.getEBoolean(), "error", null, 0, 1, PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(unnamedErrorPrediateDefinitionEClass, UnnamedErrorPrediateDefinition.class, "UnnamedErrorPrediateDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getUnnamedErrorPrediateDefinition_ArgumentList(), this.getArgumentList(), null, "argumentList", null, 0, 1, UnnamedErrorPrediateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getUnnamedErrorPrediateDefinition_Body(), this.getExpression(), null, "body", null, 0, 1, UnnamedErrorPrediateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(defaultDefinitionEClass, DefaultDefinition.class, "DefaultDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getDefaultDefinition_Head(), this.getCall(), null, "head", null, 0, 1, DefaultDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getDefaultDefinition_Range(), this.getExpression(), null, "range", null, 0, 1, DefaultDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(metricDefinitionEClass, MetricDefinition.class, "MetricDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getMetricDefinition_Head(), this.getExpression(), null, "head", null, 0, 1, MetricDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getMetricDefinition_Body(), this.getExpression(), null, "body", null, 0, 1, MetricDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getMetricDefinition_Type(), this.getNamedElement(), null, "type", null, 0, 1, MetricDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(externPredicateDefinitionEClass, ExternPredicateDefinition.class, "ExternPredicateDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getExternPredicateDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, ExternPredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getExternPredicateDefinition_ArgumentList(), this.getArgumentList(), null, "argumentList", null, 0, 1, ExternPredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(externMetricDefinitionEClass, ExternMetricDefinition.class, "ExternMetricDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getExternMetricDefinition_Type(), this.getNamedElement(), null, "type", null, 0, 1, ExternMetricDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getExternMetricDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, ExternMetricDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getExternMetricDefinition_ArgumentList(), this.getArgumentList(), null, "argumentList", null, 0, 1, ExternMetricDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(externAggregatorDefinitionEClass, ExternAggregatorDefinition.class, "ExternAggregatorDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getExternAggregatorDefinition_Type(), this.getNamedElement(), null, "type", null, 0, 1, ExternAggregatorDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getExternAggregatorDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, ExternAggregatorDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getExternAggregatorDefinition_InputType(), this.getNamedElement(), null, "inputType", null, 0, 1, ExternAggregatorDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(externDatatypeDefinitionEClass, ExternDatatypeDefinition.class, "ExternDatatypeDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getExternDatatypeDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, ExternDatatypeDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getExternDatatypeDefinition_Supertypes(), this.getNamedElement(), null, "supertypes", null, 0, -1, ExternDatatypeDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(namedElementEClass, NamedElement.class, "NamedElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getNamedElement_Name(), ecorePackage.getEString(), "name", null, 0, 1, NamedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(expressionEClass, Expression.class, "Expression", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(ifElseEClass, IfElse.class, "IfElse", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getIfElse_Then(), this.getExpression(), null, "then", null, 0, 1, IfElse.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getIfElse_Else(), this.getExpression(), null, "else", null, 0, 1, IfElse.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getIfElse_Condition(), this.getExpression(), null, "condition", null, 0, 1, IfElse.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(letEClass, Let.class, "Let", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getLet_Bindings(), this.getLetBinding(), null, "bindings", null, 0, -1, Let.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getLet_Body(), this.getExpression(), null, "body", null, 0, 1, Let.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(letBindingEClass, LetBinding.class, "LetBinding", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getLetBinding_Variable(), this.getNamedElement(), null, "variable", null, 0, 1, LetBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getLetBinding_Value(), this.getExpression(), null, "value", null, 0, 1, LetBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(caseEClass, Case.class, "Case", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getCase_Body(), this.getExpression(), null, "body", null, 0, 1, Case.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getCase_Condition(), this.getExpression(), null, "condition", null, 0, 1, Case.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(localVariablesEClass, LocalVariables.class, "LocalVariables", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getLocalVariables_Variables(), this.getNamedElement(), null, "variables", null, 0, -1, LocalVariables.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(quantifiedExpressionEClass, QuantifiedExpression.class, "QuantifiedExpression", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getQuantifiedExpression_LocalVariables(), this.getLocalVariables(), null, "localVariables", null, 0, 1, QuantifiedExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getQuantifiedExpression_Body(), this.getExpression(), null, "body", null, 0, 1, QuantifiedExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getQuantifiedExpression_Quantifier(), this.getQuantifier(), "quantifier", null, 0, 1, QuantifiedExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(aggregationEClass, Aggregation.class, "Aggregation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getAggregation_Op(), this.getNamedElement(), null, "op", null, 0, 1, Aggregation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getAggregation_LocalVariables(), this.getLocalVariables(), null, "localVariables", null, 0, 1, Aggregation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getAggregation_Body(), this.getExpression(), null, "body", null, 0, 1, Aggregation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getAggregation_Condition(), this.getExpression(), null, "condition", null, 0, 1, Aggregation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(callEClass, Call.class, "Call", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getCall_Functor(), this.getReference(), null, "functor", null, 0, 1, Call.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getCall_TransitiveClosure(), ecorePackage.getEBoolean(), "transitiveClosure", null, 0, 1, Call.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getCall_ReflexiveTransitiveClosure(), ecorePackage.getEBoolean(), "reflexiveTransitiveClosure", null, 0, 1, Call.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getCall_ArgumentList(), this.getArgumentList(), null, "argumentList", null, 0, 1, Call.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(argumentListEClass, ArgumentList.class, "ArgumentList", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getArgumentList_Arguments(), this.getArgument(), null, "arguments", null, 0, -1, ArgumentList.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(argumentEClass, Argument.class, "Argument", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(expressionArgumentEClass, ExpressionArgument.class, "ExpressionArgument", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getExpressionArgument_Body(), this.getExpression(), null, "body", null, 0, 1, ExpressionArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(starArgumentEClass, StarArgument.class, "StarArgument", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(typedArgumentEClass, TypedArgument.class, "TypedArgument", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getTypedArgument_Type(), this.getNamedElement(), null, "type", null, 0, 1, TypedArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getTypedArgument_Variable(), this.getNamedElement(), null, "variable", null, 0, 1, TypedArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(typedStarArgumentEClass, TypedStarArgument.class, "TypedStarArgument", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getTypedStarArgument_Type(), this.getNamedElement(), null, "type", null, 0, 1, TypedStarArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(referenceEClass, Reference.class, "Reference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getReference_Referred(), this.getNamedElement(), null, "referred", null, 0, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(intervalEClass, Interval.class, "Interval", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getInterval_LowerBound(), this.getExpression(), null, "lowerBound", null, 0, 1, Interval.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getInterval_UpperBound(), this.getExpression(), null, "upperBound", null, 0, 1, Interval.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(literalEClass, Literal.class, "Literal", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(logicLiteralEClass, LogicLiteral.class, "LogicLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getLogicLiteral_Value(), this.getLogicValue(), "value", null, 0, 1, LogicLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(numericLiteralEClass, NumericLiteral.class, "NumericLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getNumericLiteral_Value(), ecorePackage.getEBigDecimal(), "value", null, 0, 1, NumericLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(infinityLiteralEClass, InfinityLiteral.class, "InfinityLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(emptyIntervalLiteralEClass, EmptyIntervalLiteral.class, "EmptyIntervalLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(stringLiteralEClass, StringLiteral.class, "StringLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getStringLiteral_Value(), ecorePackage.getEString(), "value", null, 0, 1, StringLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(classDefinitionEClass, ClassDefinition.class, "ClassDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getClassDefinition_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1, ClassDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getClassDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, ClassDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getClassDefinition_Superclasses(), this.getNamedElement(), null, "superclasses", null, 0, -1, ClassDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getClassDefinition_Members(), this.getMemberDefinition(), null, "members", null, 0, -1, ClassDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(memberDefinitionEClass, MemberDefinition.class, "MemberDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getMemberDefinition_Containment(), ecorePackage.getEBoolean(), "containment", null, 0, 1, MemberDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getMemberDefinition_Type(), this.getNamedElement(), null, "type", null, 0, 1, MemberDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getMemberDefinition_Multiplicity(), this.getMultiplicity(), null, "multiplicity", null, 0, 1, MemberDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getMemberDefinition_Name(), ecorePackage.getEString(), "name", null, 0, 1, MemberDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getMemberDefinition_Opposite(), this.getNamedElement(), null, "opposite", null, 0, 1, MemberDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(multiplicityEClass, Multiplicity.class, "Multiplicity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(manyMultiplicityEClass, ManyMultiplicity.class, "ManyMultiplicity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(exactMultiplicityEClass, ExactMultiplicity.class, "ExactMultiplicity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getExactMultiplicity_Multiplicity(), ecorePackage.getEInt(), "multiplicity", null, 0, 1, ExactMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(boundedMultiplicityEClass, BoundedMultiplicity.class, "BoundedMultiplicity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getBoundedMultiplicity_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1, BoundedMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getBoundedMultiplicity_UpperBound(), ecorePackage.getEInt(), "upperBound", null, 0, 1, BoundedMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(scopeDefinitionEClass, ScopeDefinition.class, "ScopeDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getScopeDefinition_Type(), this.getNamedElement(), null, "type", null, 0, 1, ScopeDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(exactScopeDefinitionEClass, ExactScopeDefinition.class, "ExactScopeDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getExactScopeDefinition_ExactScope(), ecorePackage.getEInt(), "exactScope", null, 0, 1, ExactScopeDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(boundedScopeDefinitionEClass, BoundedScopeDefinition.class, "BoundedScopeDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getBoundedScopeDefinition_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1, BoundedScopeDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getBoundedScopeDefinition_UpperBound(), ecorePackage.getEInt(), "upperBound", null, 0, 1, BoundedScopeDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(lowerBoundedScopeDefinitionEClass, LowerBoundedScopeDefinition.class, "LowerBoundedScopeDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getLowerBoundedScopeDefinition_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1, LowerBoundedScopeDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(objectiveDefinitionEClass, ObjectiveDefinition.class, "ObjectiveDefinition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getObjectiveDefinition_Kind(), this.getObjectiveKind(), "kind", null, 0, 1, ObjectiveDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getObjectiveDefinition_Objective(), this.getExpression(), null, "objective", null, 0, 1, ObjectiveDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(interpretationEClass, Interpretation.class, "Interpretation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getInterpretation_Body(), this.getExpression(), null, "body", null, 0, 1, Interpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getInterpretation_Range(), this.getExpression(), null, "range", null, 0, 1, Interpretation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(variableEClass, Variable.class, "Variable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getVariable_Type(), this.getNamedElement(), null, "type", null, 0, 1, Variable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(disjunctionEClass, Disjunction.class, "Disjunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getDisjunction_Children(), this.getExpression(), null, "children", null, 0, -1, Disjunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(switchEClass, Switch.class, "Switch", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getSwitch_Cases(), this.getCase(), null, "cases", null, 0, -1, Switch.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(conjunctionEClass, Conjunction.class, "Conjunction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getConjunction_Children(), this.getExpression(), null, "children", null, 0, -1, Conjunction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(comparisonEClass, Comparison.class, "Comparison", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getComparison_Left(), this.getExpression(), null, "left", null, 0, 1, Comparison.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getComparison_Op(), this.getBinaryOperator(), "op", null, 0, 1, Comparison.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getComparison_Right(), this.getExpression(), null, "right", null, 0, 1, Comparison.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(binaryExpressionEClass, BinaryExpression.class, "BinaryExpression", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getBinaryExpression_Left(), this.getExpression(), null, "left", null, 0, 1, BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getBinaryExpression_Op(), this.getBinaryOperator(), "op", null, 0, 1, BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getBinaryExpression_Right(), this.getExpression(), null, "right", null, 0, 1, BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(castExpressionEClass, CastExpression.class, "CastExpression", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getCastExpression_Body(), this.getExpression(), null, "body", null, 0, 1, CastExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getCastExpression_Type(), this.getNamedElement(), null, "type", null, 0, 1, CastExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(unaryExpressionEClass, UnaryExpression.class, "UnaryExpression", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getUnaryExpression_Op(), this.getUnaryOp(), "op", null, 0, 1, UnaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEReference(getUnaryExpression_Body(), this.getExpression(), null, "body", null, 0, 1, UnaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(nodeEClass, Node.class, "Node", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getNode_WithId(), ecorePackage.getEBoolean(), "withId", null, 0, 1, Node.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(functorEClass, Functor.class, "Functor", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getFunctor_Parameters(), this.getVariable(), null, "parameters", null, 0, -1, Functor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(predicateEClass, Predicate.class, "Predicate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(metricEClass, Metric.class, "Metric", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getMetric_ReturnType(), this.getNamedElement(), null, "returnType", null, 0, 1, Metric.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - // Initialize enums and add enum literals - initEEnum(binaryOperatorEEnum, BinaryOperator.class, "BinaryOperator"); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.EQ); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.NOT_EQ); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.LESS); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.LESS_EQ); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.GREATER); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.GREATER_EQ); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.IN); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.ADD); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.SUB); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.MUL); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.DIV); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.POW); - addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.IMPLIES); - - initEEnum(unaryOpEEnum, UnaryOp.class, "UnaryOp"); - addEEnumLiteral(unaryOpEEnum, UnaryOp.NEG); - addEEnumLiteral(unaryOpEEnum, UnaryOp.PLUS); - addEEnumLiteral(unaryOpEEnum, UnaryOp.MINUS); - addEEnumLiteral(unaryOpEEnum, UnaryOp.MAY); - addEEnumLiteral(unaryOpEEnum, UnaryOp.MUST); - addEEnumLiteral(unaryOpEEnum, UnaryOp.CURRENT); - - initEEnum(logicValueEEnum, LogicValue.class, "LogicValue"); - addEEnumLiteral(logicValueEEnum, LogicValue.TRUE); - addEEnumLiteral(logicValueEEnum, LogicValue.FALSE); - addEEnumLiteral(logicValueEEnum, LogicValue.UNKNOWN); - addEEnumLiteral(logicValueEEnum, LogicValue.ERROR); - - initEEnum(objectiveKindEEnum, ObjectiveKind.class, "ObjectiveKind"); - addEEnumLiteral(objectiveKindEEnum, ObjectiveKind.MINIMIZE); - addEEnumLiteral(objectiveKindEEnum, ObjectiveKind.MAXIMIZE); - - initEEnum(quantifierEEnum, Quantifier.class, "Quantifier"); - addEEnumLiteral(quantifierEEnum, Quantifier.EXISTS); - addEEnumLiteral(quantifierEEnum, Quantifier.FORALL); - addEEnumLiteral(quantifierEEnum, Quantifier.COUNT); - - // Create resource - createResource(eNS_URI); - } - -} //SolverLanguagePackageImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java deleted file mode 100644 index 93d3ce7f..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StarArgumentImpl.java +++ /dev/null @@ -1,38 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.StarArgument; - -/** - * - * An implementation of the model object 'Star Argument'. - * - * - * @generated - */ -public class StarArgumentImpl extends ArgumentImpl implements StarArgument { - /** - * - * - * @generated - */ - protected StarArgumentImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.STAR_ARGUMENT; - } - -} //StarArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java deleted file mode 100644 index bf4d9e6a..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StatementImpl.java +++ /dev/null @@ -1,40 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.Statement; - -/** - * - * An implementation of the model object 'Statement'. - * - * - * @generated - */ -public class StatementImpl extends MinimalEObjectImpl.Container implements Statement { - /** - * - * - * @generated - */ - protected StatementImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.STATEMENT; - } - -} //StatementImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java deleted file mode 100644 index 30bef702..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/StringLiteralImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.StringLiteral; - -/** - * - * An implementation of the model object 'String Literal'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.StringLiteralImpl#getValue Value}
  • - *
- * - * @generated - */ -public class StringLiteralImpl extends LiteralImpl implements StringLiteral { - /** - * The default value of the '{@link #getValue() Value}' attribute. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected static final String VALUE_EDEFAULT = null; - - /** - * The cached value of the '{@link #getValue() Value}' attribute. - * - * - * @see #getValue() - * @generated - * @ordered - */ - protected String value = VALUE_EDEFAULT; - - /** - * - * - * @generated - */ - protected StringLiteralImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.STRING_LITERAL; - } - - /** - * - * - * @generated - */ - @Override - public String getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public void setValue(String newValue) { - String oldValue = value; - value = newValue; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.STRING_LITERAL__VALUE, oldValue, value)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.STRING_LITERAL__VALUE: - return getValue(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.STRING_LITERAL__VALUE: - setValue((String)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.STRING_LITERAL__VALUE: - setValue(VALUE_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.STRING_LITERAL__VALUE: - return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value); - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (value: "); - result.append(value); - result.append(')'); - return result.toString(); - } - -} //StringLiteralImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java deleted file mode 100644 index 23215a72..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SwitchImpl.java +++ /dev/null @@ -1,152 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import java.util.Collection; - -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.common.util.EList; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.util.EObjectContainmentEList; -import org.eclipse.emf.ecore.util.InternalEList; - -import org.eclipse.viatra.solver.language.solverLanguage.Case; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.Switch; - -/** - * - * An implementation of the model object 'Switch'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.SwitchImpl#getCases Cases}
  • - *
- * - * @generated - */ -public class SwitchImpl extends ExpressionImpl implements Switch { - /** - * The cached value of the '{@link #getCases() Cases}' containment reference list. - * - * - * @see #getCases() - * @generated - * @ordered - */ - protected EList cases; - - /** - * - * - * @generated - */ - protected SwitchImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.SWITCH; - } - - /** - * - * - * @generated - */ - @Override - public EList getCases() { - if (cases == null) { - cases = new EObjectContainmentEList(Case.class, this, SolverLanguagePackage.SWITCH__CASES); - } - return cases; - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.SWITCH__CASES: - return ((InternalEList)getCases()).basicRemove(otherEnd, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.SWITCH__CASES: - return getCases(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @SuppressWarnings("unchecked") - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.SWITCH__CASES: - getCases().clear(); - getCases().addAll((Collection)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.SWITCH__CASES: - getCases().clear(); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.SWITCH__CASES: - return cases != null && !cases.isEmpty(); - } - return super.eIsSet(featureID); - } - -} //SwitchImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java deleted file mode 100644 index 03032f1c..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedArgumentImpl.java +++ /dev/null @@ -1,221 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument; - -/** - * - * An implementation of the model object 'Typed Argument'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl#getType Type}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedArgumentImpl#getVariable Variable}
  • - *
- * - * @generated - */ -public class TypedArgumentImpl extends ArgumentImpl implements TypedArgument { - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * The cached value of the '{@link #getVariable() Variable}' reference. - * - * - * @see #getVariable() - * @generated - * @ordered - */ - protected NamedElement variable; - - /** - * - * - * @generated - */ - protected TypedArgumentImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.TYPED_ARGUMENT; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.TYPED_ARGUMENT__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPED_ARGUMENT__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getVariable() { - if (variable != null && variable.eIsProxy()) { - InternalEObject oldVariable = (InternalEObject)variable; - variable = (NamedElement)eResolveProxy(oldVariable); - if (variable != oldVariable) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.TYPED_ARGUMENT__VARIABLE, oldVariable, variable)); - } - } - return variable; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetVariable() { - return variable; - } - - /** - * - * - * @generated - */ - @Override - public void setVariable(NamedElement newVariable) { - NamedElement oldVariable = variable; - variable = newVariable; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPED_ARGUMENT__VARIABLE, oldVariable, variable)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.TYPED_ARGUMENT__TYPE: - if (resolve) return getType(); - return basicGetType(); - case SolverLanguagePackage.TYPED_ARGUMENT__VARIABLE: - if (resolve) return getVariable(); - return basicGetVariable(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.TYPED_ARGUMENT__TYPE: - setType((NamedElement)newValue); - return; - case SolverLanguagePackage.TYPED_ARGUMENT__VARIABLE: - setVariable((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.TYPED_ARGUMENT__TYPE: - setType((NamedElement)null); - return; - case SolverLanguagePackage.TYPED_ARGUMENT__VARIABLE: - setVariable((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.TYPED_ARGUMENT__TYPE: - return type != null; - case SolverLanguagePackage.TYPED_ARGUMENT__VARIABLE: - return variable != null; - } - return super.eIsSet(featureID); - } - -} //TypedArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java deleted file mode 100644 index c806b3c2..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/TypedStarArgumentImpl.java +++ /dev/null @@ -1,159 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument; - -/** - * - * An implementation of the model object 'Typed Star Argument'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.TypedStarArgumentImpl#getType Type}
  • - *
- * - * @generated - */ -public class TypedStarArgumentImpl extends ArgumentImpl implements TypedStarArgument { - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * - * - * @generated - */ - protected TypedStarArgumentImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.TYPED_STAR_ARGUMENT; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.TYPED_STAR_ARGUMENT__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.TYPED_STAR_ARGUMENT__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.TYPED_STAR_ARGUMENT__TYPE: - if (resolve) return getType(); - return basicGetType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.TYPED_STAR_ARGUMENT__TYPE: - setType((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.TYPED_STAR_ARGUMENT__TYPE: - setType((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.TYPED_STAR_ARGUMENT__TYPE: - return type != null; - } - return super.eIsSet(featureID); - } - -} //TypedStarArgumentImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java deleted file mode 100644 index a3a7b1dc..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnaryExpressionImpl.java +++ /dev/null @@ -1,249 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression; -import org.eclipse.viatra.solver.language.solverLanguage.UnaryOp; - -/** - * - * An implementation of the model object 'Unary Expression'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl#getOp Op}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnaryExpressionImpl#getBody Body}
  • - *
- * - * @generated - */ -public class UnaryExpressionImpl extends ExpressionImpl implements UnaryExpression { - /** - * The default value of the '{@link #getOp() Op}' attribute. - * - * - * @see #getOp() - * @generated - * @ordered - */ - protected static final UnaryOp OP_EDEFAULT = UnaryOp.NEG; - - /** - * The cached value of the '{@link #getOp() Op}' attribute. - * - * - * @see #getOp() - * @generated - * @ordered - */ - protected UnaryOp op = OP_EDEFAULT; - - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * - * - * @generated - */ - protected UnaryExpressionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.UNARY_EXPRESSION; - } - - /** - * - * - * @generated - */ - @Override - public UnaryOp getOp() { - return op; - } - - /** - * - * - * @generated - */ - @Override - public void setOp(UnaryOp newOp) { - UnaryOp oldOp = op; - op = newOp == null ? OP_EDEFAULT : newOp; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNARY_EXPRESSION__OP, oldOp, op)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNARY_EXPRESSION__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNARY_EXPRESSION__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNARY_EXPRESSION__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNARY_EXPRESSION__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.UNARY_EXPRESSION__BODY: - return basicSetBody(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.UNARY_EXPRESSION__OP: - return getOp(); - case SolverLanguagePackage.UNARY_EXPRESSION__BODY: - return getBody(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.UNARY_EXPRESSION__OP: - setOp((UnaryOp)newValue); - return; - case SolverLanguagePackage.UNARY_EXPRESSION__BODY: - setBody((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.UNARY_EXPRESSION__OP: - setOp(OP_EDEFAULT); - return; - case SolverLanguagePackage.UNARY_EXPRESSION__BODY: - setBody((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.UNARY_EXPRESSION__OP: - return op != OP_EDEFAULT; - case SolverLanguagePackage.UNARY_EXPRESSION__BODY: - return body != null; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (op: "); - result.append(op); - result.append(')'); - return result.toString(); - } - -} //UnaryExpressionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPrediateDefinitionImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPrediateDefinitionImpl.java deleted file mode 100644 index 35450b74..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/UnnamedErrorPrediateDefinitionImpl.java +++ /dev/null @@ -1,247 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; -import org.eclipse.emf.common.notify.NotificationChain; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; -import org.eclipse.viatra.solver.language.solverLanguage.Expression; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition; - -/** - * - * An implementation of the model object 'Unnamed Error Prediate Definition'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPrediateDefinitionImpl#getArgumentList Argument List}
  • - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.UnnamedErrorPrediateDefinitionImpl#getBody Body}
  • - *
- * - * @generated - */ -public class UnnamedErrorPrediateDefinitionImpl extends StatementImpl implements UnnamedErrorPrediateDefinition { - /** - * The cached value of the '{@link #getArgumentList() Argument List}' containment reference. - * - * - * @see #getArgumentList() - * @generated - * @ordered - */ - protected ArgumentList argumentList; - - /** - * The cached value of the '{@link #getBody() Body}' containment reference. - * - * - * @see #getBody() - * @generated - * @ordered - */ - protected Expression body; - - /** - * - * - * @generated - */ - protected UnnamedErrorPrediateDefinitionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDIATE_DEFINITION; - } - - /** - * - * - * @generated - */ - @Override - public ArgumentList getArgumentList() { - return argumentList; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetArgumentList(ArgumentList newArgumentList, NotificationChain msgs) { - ArgumentList oldArgumentList = argumentList; - argumentList = newArgumentList; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST, oldArgumentList, newArgumentList); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setArgumentList(ArgumentList newArgumentList) { - if (newArgumentList != argumentList) { - NotificationChain msgs = null; - if (argumentList != null) - msgs = ((InternalEObject)argumentList).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST, null, msgs); - if (newArgumentList != null) - msgs = ((InternalEObject)newArgumentList).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST, null, msgs); - msgs = basicSetArgumentList(newArgumentList, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST, newArgumentList, newArgumentList)); - } - - /** - * - * - * @generated - */ - @Override - public Expression getBody() { - return body; - } - - /** - * - * - * @generated - */ - public NotificationChain basicSetBody(Expression newBody, NotificationChain msgs) { - Expression oldBody = body; - body = newBody; - if (eNotificationRequired()) { - ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY, oldBody, newBody); - if (msgs == null) msgs = notification; else msgs.add(notification); - } - return msgs; - } - - /** - * - * - * @generated - */ - @Override - public void setBody(Expression newBody) { - if (newBody != body) { - NotificationChain msgs = null; - if (body != null) - msgs = ((InternalEObject)body).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY, null, msgs); - if (newBody != null) - msgs = ((InternalEObject)newBody).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY, null, msgs); - msgs = basicSetBody(newBody, msgs); - if (msgs != null) msgs.dispatch(); - } - else if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY, newBody, newBody)); - } - - /** - * - * - * @generated - */ - @Override - public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { - switch (featureID) { - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST: - return basicSetArgumentList(null, msgs); - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY: - return basicSetBody(null, msgs); - } - return super.eInverseRemove(otherEnd, featureID, msgs); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST: - return getArgumentList(); - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY: - return getBody(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST: - setArgumentList((ArgumentList)newValue); - return; - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY: - setBody((Expression)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST: - setArgumentList((ArgumentList)null); - return; - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY: - setBody((Expression)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST: - return argumentList != null; - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY: - return body != null; - } - return super.eIsSet(featureID); - } - -} //UnnamedErrorPrediateDefinitionImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java deleted file mode 100644 index 1762d35c..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/VariableImpl.java +++ /dev/null @@ -1,159 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.impl; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.InternalEObject; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -import org.eclipse.viatra.solver.language.solverLanguage.NamedElement; -import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; -import org.eclipse.viatra.solver.language.solverLanguage.Variable; - -/** - * - * An implementation of the model object 'Variable'. - * - *

- * The following features are implemented: - *

- *
    - *
  • {@link org.eclipse.viatra.solver.language.solverLanguage.impl.VariableImpl#getType Type}
  • - *
- * - * @generated - */ -public class VariableImpl extends NamedElementImpl implements Variable { - /** - * The cached value of the '{@link #getType() Type}' reference. - * - * - * @see #getType() - * @generated - * @ordered - */ - protected NamedElement type; - - /** - * - * - * @generated - */ - protected VariableImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return SolverLanguagePackage.Literals.VARIABLE; - } - - /** - * - * - * @generated - */ - @Override - public NamedElement getType() { - if (type != null && type.eIsProxy()) { - InternalEObject oldType = (InternalEObject)type; - type = (NamedElement)eResolveProxy(oldType); - if (type != oldType) { - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.RESOLVE, SolverLanguagePackage.VARIABLE__TYPE, oldType, type)); - } - } - return type; - } - - /** - * - * - * @generated - */ - public NamedElement basicGetType() { - return type; - } - - /** - * - * - * @generated - */ - @Override - public void setType(NamedElement newType) { - NamedElement oldType = type; - type = newType; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, SolverLanguagePackage.VARIABLE__TYPE, oldType, type)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case SolverLanguagePackage.VARIABLE__TYPE: - if (resolve) return getType(); - return basicGetType(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case SolverLanguagePackage.VARIABLE__TYPE: - setType((NamedElement)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case SolverLanguagePackage.VARIABLE__TYPE: - setType((NamedElement)null); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case SolverLanguagePackage.VARIABLE__TYPE: - return type != null; - } - return super.eIsSet(featureID); - } - -} //VariableImpl diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java deleted file mode 100644 index 23971e9d..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageAdapterFactory.java +++ /dev/null @@ -1,1147 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.util; - -import org.eclipse.emf.common.notify.Adapter; -import org.eclipse.emf.common.notify.Notifier; - -import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; - -import org.eclipse.emf.ecore.EObject; - -import org.eclipse.viatra.solver.language.solverLanguage.*; - -/** - * - * The Adapter Factory for the model. - * It provides an adapter createXXX method for each class of the model. - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage - * @generated - */ -public class SolverLanguageAdapterFactory extends AdapterFactoryImpl { - /** - * The cached model package. - * - * - * @generated - */ - protected static SolverLanguagePackage modelPackage; - - /** - * Creates an instance of the adapter factory. - * - * - * @generated - */ - public SolverLanguageAdapterFactory() { - if (modelPackage == null) { - modelPackage = SolverLanguagePackage.eINSTANCE; - } - } - - /** - * Returns whether this factory is applicable for the type of the object. - * - * This implementation returns true if the object is either the model's package or is an instance object of the model. - * - * @return whether this factory is applicable for the type of the object. - * @generated - */ - @Override - public boolean isFactoryForType(Object object) { - if (object == modelPackage) { - return true; - } - if (object instanceof EObject) { - return ((EObject)object).eClass().getEPackage() == modelPackage; - } - return false; - } - - /** - * The switch that delegates to the createXXX methods. - * - * - * @generated - */ - protected SolverLanguageSwitch modelSwitch = - new SolverLanguageSwitch() { - @Override - public Adapter caseProblem(Problem object) { - return createProblemAdapter(); - } - @Override - public Adapter caseStatement(Statement object) { - return createStatementAdapter(); - } - @Override - public Adapter casePredicateDefinition(PredicateDefinition object) { - return createPredicateDefinitionAdapter(); - } - @Override - public Adapter caseUnnamedErrorPrediateDefinition(UnnamedErrorPrediateDefinition object) { - return createUnnamedErrorPrediateDefinitionAdapter(); - } - @Override - public Adapter caseDefaultDefinition(DefaultDefinition object) { - return createDefaultDefinitionAdapter(); - } - @Override - public Adapter caseMetricDefinition(MetricDefinition object) { - return createMetricDefinitionAdapter(); - } - @Override - public Adapter caseExternPredicateDefinition(ExternPredicateDefinition object) { - return createExternPredicateDefinitionAdapter(); - } - @Override - public Adapter caseExternMetricDefinition(ExternMetricDefinition object) { - return createExternMetricDefinitionAdapter(); - } - @Override - public Adapter caseExternAggregatorDefinition(ExternAggregatorDefinition object) { - return createExternAggregatorDefinitionAdapter(); - } - @Override - public Adapter caseExternDatatypeDefinition(ExternDatatypeDefinition object) { - return createExternDatatypeDefinitionAdapter(); - } - @Override - public Adapter caseNamedElement(NamedElement object) { - return createNamedElementAdapter(); - } - @Override - public Adapter caseExpression(Expression object) { - return createExpressionAdapter(); - } - @Override - public Adapter caseIfElse(IfElse object) { - return createIfElseAdapter(); - } - @Override - public Adapter caseLet(Let object) { - return createLetAdapter(); - } - @Override - public Adapter caseLetBinding(LetBinding object) { - return createLetBindingAdapter(); - } - @Override - public Adapter caseCase(Case object) { - return createCaseAdapter(); - } - @Override - public Adapter caseLocalVariables(LocalVariables object) { - return createLocalVariablesAdapter(); - } - @Override - public Adapter caseQuantifiedExpression(QuantifiedExpression object) { - return createQuantifiedExpressionAdapter(); - } - @Override - public Adapter caseAggregation(Aggregation object) { - return createAggregationAdapter(); - } - @Override - public Adapter caseCall(Call object) { - return createCallAdapter(); - } - @Override - public Adapter caseArgumentList(ArgumentList object) { - return createArgumentListAdapter(); - } - @Override - public Adapter caseArgument(Argument object) { - return createArgumentAdapter(); - } - @Override - public Adapter caseExpressionArgument(ExpressionArgument object) { - return createExpressionArgumentAdapter(); - } - @Override - public Adapter caseStarArgument(StarArgument object) { - return createStarArgumentAdapter(); - } - @Override - public Adapter caseTypedArgument(TypedArgument object) { - return createTypedArgumentAdapter(); - } - @Override - public Adapter caseTypedStarArgument(TypedStarArgument object) { - return createTypedStarArgumentAdapter(); - } - @Override - public Adapter caseReference(Reference object) { - return createReferenceAdapter(); - } - @Override - public Adapter caseInterval(Interval object) { - return createIntervalAdapter(); - } - @Override - public Adapter caseLiteral(Literal object) { - return createLiteralAdapter(); - } - @Override - public Adapter caseLogicLiteral(LogicLiteral object) { - return createLogicLiteralAdapter(); - } - @Override - public Adapter caseNumericLiteral(NumericLiteral object) { - return createNumericLiteralAdapter(); - } - @Override - public Adapter caseInfinityLiteral(InfinityLiteral object) { - return createInfinityLiteralAdapter(); - } - @Override - public Adapter caseEmptyIntervalLiteral(EmptyIntervalLiteral object) { - return createEmptyIntervalLiteralAdapter(); - } - @Override - public Adapter caseStringLiteral(StringLiteral object) { - return createStringLiteralAdapter(); - } - @Override - public Adapter caseClassDefinition(ClassDefinition object) { - return createClassDefinitionAdapter(); - } - @Override - public Adapter caseMemberDefinition(MemberDefinition object) { - return createMemberDefinitionAdapter(); - } - @Override - public Adapter caseMultiplicity(Multiplicity object) { - return createMultiplicityAdapter(); - } - @Override - public Adapter caseManyMultiplicity(ManyMultiplicity object) { - return createManyMultiplicityAdapter(); - } - @Override - public Adapter caseExactMultiplicity(ExactMultiplicity object) { - return createExactMultiplicityAdapter(); - } - @Override - public Adapter caseBoundedMultiplicity(BoundedMultiplicity object) { - return createBoundedMultiplicityAdapter(); - } - @Override - public Adapter caseScopeDefinition(ScopeDefinition object) { - return createScopeDefinitionAdapter(); - } - @Override - public Adapter caseExactScopeDefinition(ExactScopeDefinition object) { - return createExactScopeDefinitionAdapter(); - } - @Override - public Adapter caseBoundedScopeDefinition(BoundedScopeDefinition object) { - return createBoundedScopeDefinitionAdapter(); - } - @Override - public Adapter caseLowerBoundedScopeDefinition(LowerBoundedScopeDefinition object) { - return createLowerBoundedScopeDefinitionAdapter(); - } - @Override - public Adapter caseObjectiveDefinition(ObjectiveDefinition object) { - return createObjectiveDefinitionAdapter(); - } - @Override - public Adapter caseInterpretation(Interpretation object) { - return createInterpretationAdapter(); - } - @Override - public Adapter caseVariable(Variable object) { - return createVariableAdapter(); - } - @Override - public Adapter caseDisjunction(Disjunction object) { - return createDisjunctionAdapter(); - } - @Override - public Adapter caseSwitch(Switch object) { - return createSwitchAdapter(); - } - @Override - public Adapter caseConjunction(Conjunction object) { - return createConjunctionAdapter(); - } - @Override - public Adapter caseComparison(Comparison object) { - return createComparisonAdapter(); - } - @Override - public Adapter caseBinaryExpression(BinaryExpression object) { - return createBinaryExpressionAdapter(); - } - @Override - public Adapter caseCastExpression(CastExpression object) { - return createCastExpressionAdapter(); - } - @Override - public Adapter caseUnaryExpression(UnaryExpression object) { - return createUnaryExpressionAdapter(); - } - @Override - public Adapter caseNode(Node object) { - return createNodeAdapter(); - } - @Override - public Adapter caseFunctor(Functor object) { - return createFunctorAdapter(); - } - @Override - public Adapter casePredicate(Predicate object) { - return createPredicateAdapter(); - } - @Override - public Adapter caseMetric(Metric object) { - return createMetricAdapter(); - } - @Override - public Adapter defaultCase(EObject object) { - return createEObjectAdapter(); - } - }; - - /** - * Creates an adapter for the target. - * - * - * @param target the object to adapt. - * @return the adapter for the target. - * @generated - */ - @Override - public Adapter createAdapter(Notifier target) { - return modelSwitch.doSwitch((EObject)target); - } - - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Problem Problem}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Problem - * @generated - */ - public Adapter createProblemAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Statement Statement}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Statement - * @generated - */ - public Adapter createStatementAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition Predicate Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition - * @generated - */ - public Adapter createPredicateDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition Unnamed Error Prediate Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition - * @generated - */ - public Adapter createUnnamedErrorPrediateDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition Default Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition - * @generated - */ - public Adapter createDefaultDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition Metric Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition - * @generated - */ - public Adapter createMetricDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition Extern Predicate Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition - * @generated - */ - public Adapter createExternPredicateDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition Extern Metric Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition - * @generated - */ - public Adapter createExternMetricDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition Extern Aggregator Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition - * @generated - */ - public Adapter createExternAggregatorDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition Extern Datatype Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition - * @generated - */ - public Adapter createExternDatatypeDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.NamedElement Named Element}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.NamedElement - * @generated - */ - public Adapter createNamedElementAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Expression Expression}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Expression - * @generated - */ - public Adapter createExpressionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.IfElse If Else}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.IfElse - * @generated - */ - public Adapter createIfElseAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Let Let}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Let - * @generated - */ - public Adapter createLetAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LetBinding Let Binding}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.LetBinding - * @generated - */ - public Adapter createLetBindingAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Case Case}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Case - * @generated - */ - public Adapter createCaseAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LocalVariables Local Variables}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.LocalVariables - * @generated - */ - public Adapter createLocalVariablesAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression Quantified Expression}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression - * @generated - */ - public Adapter createQuantifiedExpressionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Aggregation Aggregation}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Aggregation - * @generated - */ - public Adapter createAggregationAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Call Call}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Call - * @generated - */ - public Adapter createCallAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ArgumentList Argument List}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ArgumentList - * @generated - */ - public Adapter createArgumentListAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Argument Argument}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Argument - * @generated - */ - public Adapter createArgumentAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument Expression Argument}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument - * @generated - */ - public Adapter createExpressionArgumentAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.StarArgument Star Argument}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.StarArgument - * @generated - */ - public Adapter createStarArgumentAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedArgument Typed Argument}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.TypedArgument - * @generated - */ - public Adapter createTypedArgumentAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument Typed Star Argument}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument - * @generated - */ - public Adapter createTypedStarArgumentAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Reference Reference}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Reference - * @generated - */ - public Adapter createReferenceAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interval Interval}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Interval - * @generated - */ - public Adapter createIntervalAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Literal Literal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Literal - * @generated - */ - public Adapter createLiteralAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral Logic Literal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral - * @generated - */ - public Adapter createLogicLiteralAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral Numeric Literal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral - * @generated - */ - public Adapter createNumericLiteralAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral Infinity Literal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral - * @generated - */ - public Adapter createInfinityLiteralAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral Empty Interval Literal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral - * @generated - */ - public Adapter createEmptyIntervalLiteralAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.StringLiteral String Literal}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.StringLiteral - * @generated - */ - public Adapter createStringLiteralAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition Class Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition - * @generated - */ - public Adapter createClassDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition Member Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition - * @generated - */ - public Adapter createMemberDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Multiplicity Multiplicity}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Multiplicity - * @generated - */ - public Adapter createMultiplicityAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity Many Multiplicity}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity - * @generated - */ - public Adapter createManyMultiplicityAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity Exact Multiplicity}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity - * @generated - */ - public Adapter createExactMultiplicityAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity Bounded Multiplicity}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity - * @generated - */ - public Adapter createBoundedMultiplicityAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition Scope Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ScopeDefinition - * @generated - */ - public Adapter createScopeDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition Exact Scope Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition - * @generated - */ - public Adapter createExactScopeDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition Bounded Scope Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition - * @generated - */ - public Adapter createBoundedScopeDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition Lower Bounded Scope Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition - * @generated - */ - public Adapter createLowerBoundedScopeDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition Objective Definition}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition - * @generated - */ - public Adapter createObjectiveDefinitionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Interpretation Interpretation}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Interpretation - * @generated - */ - public Adapter createInterpretationAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Variable Variable}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Variable - * @generated - */ - public Adapter createVariableAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Disjunction Disjunction}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Disjunction - * @generated - */ - public Adapter createDisjunctionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Switch Switch}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Switch - * @generated - */ - public Adapter createSwitchAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Conjunction Conjunction}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Conjunction - * @generated - */ - public Adapter createConjunctionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Comparison Comparison}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Comparison - * @generated - */ - public Adapter createComparisonAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression Binary Expression}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression - * @generated - */ - public Adapter createBinaryExpressionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.CastExpression Cast Expression}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.CastExpression - * @generated - */ - public Adapter createCastExpressionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression Unary Expression}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression - * @generated - */ - public Adapter createUnaryExpressionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Node Node}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Node - * @generated - */ - public Adapter createNodeAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Functor Functor}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Functor - * @generated - */ - public Adapter createFunctorAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Predicate Predicate}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Predicate - * @generated - */ - public Adapter createPredicateAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link org.eclipse.viatra.solver.language.solverLanguage.Metric Metric}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see org.eclipse.viatra.solver.language.solverLanguage.Metric - * @generated - */ - public Adapter createMetricAdapter() { - return null; - } - - /** - * Creates a new adapter for the default case. - * - * This default implementation returns null. - * - * @return the new adapter. - * @generated - */ - public Adapter createEObjectAdapter() { - return null; - } - -} //SolverLanguageAdapterFactory diff --git a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java b/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java deleted file mode 100644 index 4e5929e6..00000000 --- a/Application/org.eclipse.viatra.solver.language/ecore-gen/org/eclipse/viatra/solver/language/solverLanguage/util/SolverLanguageSwitch.java +++ /dev/null @@ -1,1388 +0,0 @@ -/** - * generated by Xtext 2.21.0 - */ -package org.eclipse.viatra.solver.language.solverLanguage.util; - -import org.eclipse.emf.ecore.EObject; -import org.eclipse.emf.ecore.EPackage; - -import org.eclipse.emf.ecore.util.Switch; - -import org.eclipse.viatra.solver.language.solverLanguage.*; - -/** - * - * The Switch for the model's inheritance hierarchy. - * It supports the call {@link #doSwitch(EObject) doSwitch(object)} - * to invoke the caseXXX method for each class of the model, - * starting with the actual class of the object - * and proceeding up the inheritance hierarchy - * until a non-null result is returned, - * which is the result of the switch. - * - * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage - * @generated - */ -public class SolverLanguageSwitch extends Switch { - /** - * The cached model package - * - * - * @generated - */ - protected static SolverLanguagePackage modelPackage; - - /** - * Creates an instance of the switch. - * - * - * @generated - */ - public SolverLanguageSwitch() { - if (modelPackage == null) { - modelPackage = SolverLanguagePackage.eINSTANCE; - } - } - - /** - * Checks whether this is a switch for the given package. - * - * - * @param ePackage the package in question. - * @return whether this is a switch for the given package. - * @generated - */ - @Override - protected boolean isSwitchFor(EPackage ePackage) { - return ePackage == modelPackage; - } - - /** - * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. - * - * - * @return the first non-null result returned by a caseXXX call. - * @generated - */ - @Override - protected T doSwitch(int classifierID, EObject theEObject) { - switch (classifierID) { - case SolverLanguagePackage.PROBLEM: { - Problem problem = (Problem)theEObject; - T result = caseProblem(problem); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.STATEMENT: { - Statement statement = (Statement)theEObject; - T result = caseStatement(statement); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.PREDICATE_DEFINITION: { - PredicateDefinition predicateDefinition = (PredicateDefinition)theEObject; - T result = casePredicateDefinition(predicateDefinition); - if (result == null) result = caseStatement(predicateDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION: { - UnnamedErrorPrediateDefinition unnamedErrorPrediateDefinition = (UnnamedErrorPrediateDefinition)theEObject; - T result = caseUnnamedErrorPrediateDefinition(unnamedErrorPrediateDefinition); - if (result == null) result = caseStatement(unnamedErrorPrediateDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.DEFAULT_DEFINITION: { - DefaultDefinition defaultDefinition = (DefaultDefinition)theEObject; - T result = caseDefaultDefinition(defaultDefinition); - if (result == null) result = caseStatement(defaultDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.METRIC_DEFINITION: { - MetricDefinition metricDefinition = (MetricDefinition)theEObject; - T result = caseMetricDefinition(metricDefinition); - if (result == null) result = caseStatement(metricDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION: { - ExternPredicateDefinition externPredicateDefinition = (ExternPredicateDefinition)theEObject; - T result = caseExternPredicateDefinition(externPredicateDefinition); - if (result == null) result = caseStatement(externPredicateDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION: { - ExternMetricDefinition externMetricDefinition = (ExternMetricDefinition)theEObject; - T result = caseExternMetricDefinition(externMetricDefinition); - if (result == null) result = caseStatement(externMetricDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION: { - ExternAggregatorDefinition externAggregatorDefinition = (ExternAggregatorDefinition)theEObject; - T result = caseExternAggregatorDefinition(externAggregatorDefinition); - if (result == null) result = caseStatement(externAggregatorDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION: { - ExternDatatypeDefinition externDatatypeDefinition = (ExternDatatypeDefinition)theEObject; - T result = caseExternDatatypeDefinition(externDatatypeDefinition); - if (result == null) result = caseStatement(externDatatypeDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.NAMED_ELEMENT: { - NamedElement namedElement = (NamedElement)theEObject; - T result = caseNamedElement(namedElement); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EXPRESSION: { - Expression expression = (Expression)theEObject; - T result = caseExpression(expression); - if (result == null) result = caseStatement(expression); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.IF_ELSE: { - IfElse ifElse = (IfElse)theEObject; - T result = caseIfElse(ifElse); - if (result == null) result = caseExpression(ifElse); - if (result == null) result = caseStatement(ifElse); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.LET: { - Let let = (Let)theEObject; - T result = caseLet(let); - if (result == null) result = caseExpression(let); - if (result == null) result = caseStatement(let); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.LET_BINDING: { - LetBinding letBinding = (LetBinding)theEObject; - T result = caseLetBinding(letBinding); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.CASE: { - Case case_ = (Case)theEObject; - T result = caseCase(case_); - if (result == null) result = caseExpression(case_); - if (result == null) result = caseStatement(case_); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.LOCAL_VARIABLES: { - LocalVariables localVariables = (LocalVariables)theEObject; - T result = caseLocalVariables(localVariables); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.QUANTIFIED_EXPRESSION: { - QuantifiedExpression quantifiedExpression = (QuantifiedExpression)theEObject; - T result = caseQuantifiedExpression(quantifiedExpression); - if (result == null) result = caseExpression(quantifiedExpression); - if (result == null) result = caseStatement(quantifiedExpression); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.AGGREGATION: { - Aggregation aggregation = (Aggregation)theEObject; - T result = caseAggregation(aggregation); - if (result == null) result = caseExpression(aggregation); - if (result == null) result = caseStatement(aggregation); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.CALL: { - Call call = (Call)theEObject; - T result = caseCall(call); - if (result == null) result = caseExpression(call); - if (result == null) result = caseStatement(call); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.ARGUMENT_LIST: { - ArgumentList argumentList = (ArgumentList)theEObject; - T result = caseArgumentList(argumentList); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.ARGUMENT: { - Argument argument = (Argument)theEObject; - T result = caseArgument(argument); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EXPRESSION_ARGUMENT: { - ExpressionArgument expressionArgument = (ExpressionArgument)theEObject; - T result = caseExpressionArgument(expressionArgument); - if (result == null) result = caseArgument(expressionArgument); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.STAR_ARGUMENT: { - StarArgument starArgument = (StarArgument)theEObject; - T result = caseStarArgument(starArgument); - if (result == null) result = caseArgument(starArgument); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.TYPED_ARGUMENT: { - TypedArgument typedArgument = (TypedArgument)theEObject; - T result = caseTypedArgument(typedArgument); - if (result == null) result = caseArgument(typedArgument); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.TYPED_STAR_ARGUMENT: { - TypedStarArgument typedStarArgument = (TypedStarArgument)theEObject; - T result = caseTypedStarArgument(typedStarArgument); - if (result == null) result = caseArgument(typedStarArgument); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.REFERENCE: { - Reference reference = (Reference)theEObject; - T result = caseReference(reference); - if (result == null) result = caseExpression(reference); - if (result == null) result = caseStatement(reference); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.INTERVAL: { - Interval interval = (Interval)theEObject; - T result = caseInterval(interval); - if (result == null) result = caseExpression(interval); - if (result == null) result = caseStatement(interval); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.LITERAL: { - Literal literal = (Literal)theEObject; - T result = caseLiteral(literal); - if (result == null) result = caseExpression(literal); - if (result == null) result = caseStatement(literal); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.LOGIC_LITERAL: { - LogicLiteral logicLiteral = (LogicLiteral)theEObject; - T result = caseLogicLiteral(logicLiteral); - if (result == null) result = caseLiteral(logicLiteral); - if (result == null) result = caseExpression(logicLiteral); - if (result == null) result = caseStatement(logicLiteral); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.NUMERIC_LITERAL: { - NumericLiteral numericLiteral = (NumericLiteral)theEObject; - T result = caseNumericLiteral(numericLiteral); - if (result == null) result = caseLiteral(numericLiteral); - if (result == null) result = caseExpression(numericLiteral); - if (result == null) result = caseStatement(numericLiteral); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.INFINITY_LITERAL: { - InfinityLiteral infinityLiteral = (InfinityLiteral)theEObject; - T result = caseInfinityLiteral(infinityLiteral); - if (result == null) result = caseLiteral(infinityLiteral); - if (result == null) result = caseExpression(infinityLiteral); - if (result == null) result = caseStatement(infinityLiteral); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EMPTY_INTERVAL_LITERAL: { - EmptyIntervalLiteral emptyIntervalLiteral = (EmptyIntervalLiteral)theEObject; - T result = caseEmptyIntervalLiteral(emptyIntervalLiteral); - if (result == null) result = caseLiteral(emptyIntervalLiteral); - if (result == null) result = caseExpression(emptyIntervalLiteral); - if (result == null) result = caseStatement(emptyIntervalLiteral); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.STRING_LITERAL: { - StringLiteral stringLiteral = (StringLiteral)theEObject; - T result = caseStringLiteral(stringLiteral); - if (result == null) result = caseLiteral(stringLiteral); - if (result == null) result = caseExpression(stringLiteral); - if (result == null) result = caseStatement(stringLiteral); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.CLASS_DEFINITION: { - ClassDefinition classDefinition = (ClassDefinition)theEObject; - T result = caseClassDefinition(classDefinition); - if (result == null) result = caseStatement(classDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.MEMBER_DEFINITION: { - MemberDefinition memberDefinition = (MemberDefinition)theEObject; - T result = caseMemberDefinition(memberDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.MULTIPLICITY: { - Multiplicity multiplicity = (Multiplicity)theEObject; - T result = caseMultiplicity(multiplicity); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.MANY_MULTIPLICITY: { - ManyMultiplicity manyMultiplicity = (ManyMultiplicity)theEObject; - T result = caseManyMultiplicity(manyMultiplicity); - if (result == null) result = caseMultiplicity(manyMultiplicity); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EXACT_MULTIPLICITY: { - ExactMultiplicity exactMultiplicity = (ExactMultiplicity)theEObject; - T result = caseExactMultiplicity(exactMultiplicity); - if (result == null) result = caseMultiplicity(exactMultiplicity); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.BOUNDED_MULTIPLICITY: { - BoundedMultiplicity boundedMultiplicity = (BoundedMultiplicity)theEObject; - T result = caseBoundedMultiplicity(boundedMultiplicity); - if (result == null) result = caseMultiplicity(boundedMultiplicity); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.SCOPE_DEFINITION: { - ScopeDefinition scopeDefinition = (ScopeDefinition)theEObject; - T result = caseScopeDefinition(scopeDefinition); - if (result == null) result = caseStatement(scopeDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.EXACT_SCOPE_DEFINITION: { - ExactScopeDefinition exactScopeDefinition = (ExactScopeDefinition)theEObject; - T result = caseExactScopeDefinition(exactScopeDefinition); - if (result == null) result = caseScopeDefinition(exactScopeDefinition); - if (result == null) result = caseStatement(exactScopeDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION: { - BoundedScopeDefinition boundedScopeDefinition = (BoundedScopeDefinition)theEObject; - T result = caseBoundedScopeDefinition(boundedScopeDefinition); - if (result == null) result = caseScopeDefinition(boundedScopeDefinition); - if (result == null) result = caseStatement(boundedScopeDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.LOWER_BOUNDED_SCOPE_DEFINITION: { - LowerBoundedScopeDefinition lowerBoundedScopeDefinition = (LowerBoundedScopeDefinition)theEObject; - T result = caseLowerBoundedScopeDefinition(lowerBoundedScopeDefinition); - if (result == null) result = caseScopeDefinition(lowerBoundedScopeDefinition); - if (result == null) result = caseStatement(lowerBoundedScopeDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.OBJECTIVE_DEFINITION: { - ObjectiveDefinition objectiveDefinition = (ObjectiveDefinition)theEObject; - T result = caseObjectiveDefinition(objectiveDefinition); - if (result == null) result = caseStatement(objectiveDefinition); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.INTERPRETATION: { - Interpretation interpretation = (Interpretation)theEObject; - T result = caseInterpretation(interpretation); - if (result == null) result = caseStatement(interpretation); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.VARIABLE: { - Variable variable = (Variable)theEObject; - T result = caseVariable(variable); - if (result == null) result = caseNamedElement(variable); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.DISJUNCTION: { - Disjunction disjunction = (Disjunction)theEObject; - T result = caseDisjunction(disjunction); - if (result == null) result = caseExpression(disjunction); - if (result == null) result = caseStatement(disjunction); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.SWITCH: { - org.eclipse.viatra.solver.language.solverLanguage.Switch switch_ = (org.eclipse.viatra.solver.language.solverLanguage.Switch)theEObject; - T result = caseSwitch(switch_); - if (result == null) result = caseExpression(switch_); - if (result == null) result = caseStatement(switch_); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.CONJUNCTION: { - Conjunction conjunction = (Conjunction)theEObject; - T result = caseConjunction(conjunction); - if (result == null) result = caseExpression(conjunction); - if (result == null) result = caseStatement(conjunction); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.COMPARISON: { - Comparison comparison = (Comparison)theEObject; - T result = caseComparison(comparison); - if (result == null) result = caseExpression(comparison); - if (result == null) result = caseStatement(comparison); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.BINARY_EXPRESSION: { - BinaryExpression binaryExpression = (BinaryExpression)theEObject; - T result = caseBinaryExpression(binaryExpression); - if (result == null) result = caseExpression(binaryExpression); - if (result == null) result = caseStatement(binaryExpression); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.CAST_EXPRESSION: { - CastExpression castExpression = (CastExpression)theEObject; - T result = caseCastExpression(castExpression); - if (result == null) result = caseExpression(castExpression); - if (result == null) result = caseStatement(castExpression); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.UNARY_EXPRESSION: { - UnaryExpression unaryExpression = (UnaryExpression)theEObject; - T result = caseUnaryExpression(unaryExpression); - if (result == null) result = caseExpression(unaryExpression); - if (result == null) result = caseStatement(unaryExpression); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.NODE: { - Node node = (Node)theEObject; - T result = caseNode(node); - if (result == null) result = caseNamedElement(node); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.FUNCTOR: { - Functor functor = (Functor)theEObject; - T result = caseFunctor(functor); - if (result == null) result = caseNamedElement(functor); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.PREDICATE: { - Predicate predicate = (Predicate)theEObject; - T result = casePredicate(predicate); - if (result == null) result = caseFunctor(predicate); - if (result == null) result = caseNamedElement(predicate); - if (result == null) result = defaultCase(theEObject); - return result; - } - case SolverLanguagePackage.METRIC: { - Metric metric = (Metric)theEObject; - T result = caseMetric(metric); - if (result == null) result = caseFunctor(metric); - if (result == null) result = caseNamedElement(metric); - if (result == null) result = defaultCase(theEObject); - return result; - } - default: return defaultCase(theEObject); - } - } - - /** - * Returns the result of interpreting the object as an instance of 'Problem'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Problem'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseProblem(Problem object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Statement'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Statement'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseStatement(Statement object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Predicate Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Predicate Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T casePredicateDefinition(PredicateDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Unnamed Error Prediate Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Unnamed Error Prediate Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseUnnamedErrorPrediateDefinition(UnnamedErrorPrediateDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Default Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Default Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDefaultDefinition(DefaultDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Metric Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Metric Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseMetricDefinition(MetricDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Extern Predicate Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Extern Predicate Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseExternPredicateDefinition(ExternPredicateDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Extern Metric Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Extern Metric Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseExternMetricDefinition(ExternMetricDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Extern Aggregator Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Extern Aggregator Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseExternAggregatorDefinition(ExternAggregatorDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Extern Datatype Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Extern Datatype Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseExternDatatypeDefinition(ExternDatatypeDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Named Element'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Named Element'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseNamedElement(NamedElement object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Expression'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Expression'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseExpression(Expression object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'If Else'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'If Else'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseIfElse(IfElse object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Let'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Let'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseLet(Let object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Let Binding'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Let Binding'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseLetBinding(LetBinding object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Case'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Case'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseCase(Case object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Local Variables'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Local Variables'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseLocalVariables(LocalVariables object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Quantified Expression'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Quantified Expression'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseQuantifiedExpression(QuantifiedExpression object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Aggregation'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Aggregation'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseAggregation(Aggregation object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Call'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Call'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseCall(Call object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Argument List'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Argument List'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseArgumentList(ArgumentList object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Argument'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Argument'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseArgument(Argument object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Expression Argument'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Expression Argument'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseExpressionArgument(ExpressionArgument object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Star Argument'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Star Argument'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseStarArgument(StarArgument object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Typed Argument'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Typed Argument'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseTypedArgument(TypedArgument object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Typed Star Argument'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Typed Star Argument'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseTypedStarArgument(TypedStarArgument object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Reference'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Reference'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseReference(Reference object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Interval'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Interval'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseInterval(Interval object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Literal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Literal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseLiteral(Literal object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Logic Literal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Logic Literal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseLogicLiteral(LogicLiteral object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Numeric Literal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Numeric Literal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseNumericLiteral(NumericLiteral object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Infinity Literal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Infinity Literal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseInfinityLiteral(InfinityLiteral object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Empty Interval Literal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Empty Interval Literal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseEmptyIntervalLiteral(EmptyIntervalLiteral object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'String Literal'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'String Literal'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseStringLiteral(StringLiteral object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Class Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Class Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseClassDefinition(ClassDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Member Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Member Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseMemberDefinition(MemberDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Multiplicity'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Multiplicity'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseMultiplicity(Multiplicity object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Many Multiplicity'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Many Multiplicity'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseManyMultiplicity(ManyMultiplicity object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Exact Multiplicity'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Exact Multiplicity'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseExactMultiplicity(ExactMultiplicity object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Bounded Multiplicity'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Bounded Multiplicity'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseBoundedMultiplicity(BoundedMultiplicity object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Scope Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Scope Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseScopeDefinition(ScopeDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Exact Scope Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Exact Scope Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseExactScopeDefinition(ExactScopeDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Bounded Scope Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Bounded Scope Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseBoundedScopeDefinition(BoundedScopeDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Lower Bounded Scope Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Lower Bounded Scope Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseLowerBoundedScopeDefinition(LowerBoundedScopeDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Objective Definition'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Objective Definition'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseObjectiveDefinition(ObjectiveDefinition object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Interpretation'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Interpretation'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseInterpretation(Interpretation object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Variable'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Variable'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseVariable(Variable object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Disjunction'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Disjunction'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDisjunction(Disjunction object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Switch'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Switch'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseSwitch(org.eclipse.viatra.solver.language.solverLanguage.Switch object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Conjunction'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Conjunction'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseConjunction(Conjunction object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Comparison'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Comparison'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseComparison(Comparison object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Binary Expression'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Binary Expression'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseBinaryExpression(BinaryExpression object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Cast Expression'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Cast Expression'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseCastExpression(CastExpression object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Unary Expression'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Unary Expression'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseUnaryExpression(UnaryExpression object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Node'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Node'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseNode(Node object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Functor'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Functor'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseFunctor(Functor object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Predicate'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Predicate'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T casePredicate(Predicate object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Metric'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Metric'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseMetric(Metric object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'EObject'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch, but this is the last case anyway. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'EObject'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) - * @generated - */ - @Override - public T defaultCase(EObject object) { - return null; - } - -} //SolverLanguageSwitch diff --git a/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.ecore b/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.ecore deleted file mode 100644 index 905e5a90..00000000 --- a/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.ecore +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel b/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel deleted file mode 100644 index 2325d668..00000000 --- a/Application/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel +++ /dev/null @@ -1,249 +0,0 @@ - - - SolverLanguage.ecore - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Application/org.eclipse.viatra.solver.language/plugin.xml b/Application/org.eclipse.viatra.solver.language/plugin.xml index 79c1ea47..c5be3e9b 100644 --- a/Application/org.eclipse.viatra.solver.language/plugin.xml +++ b/Application/org.eclipse.viatra.solver.language/plugin.xml @@ -1,10 +1,4 @@ - - - - + diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/AbstractSolverLanguageRuntimeModule.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/AbstractSolverLanguageRuntimeModule.java index 4bf254b2..a02b3ab2 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/AbstractSolverLanguageRuntimeModule.java +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/AbstractSolverLanguageRuntimeModule.java @@ -28,9 +28,11 @@ import org.eclipse.xtext.parser.antlr.AntlrTokenDefProvider; import org.eclipse.xtext.parser.antlr.AntlrTokenToStringConverter; import org.eclipse.xtext.parser.antlr.IAntlrTokenFileProvider; import org.eclipse.xtext.parser.antlr.ITokenDefProvider; +import org.eclipse.xtext.parser.antlr.IUnorderedGroupHelper; import org.eclipse.xtext.parser.antlr.Lexer; import org.eclipse.xtext.parser.antlr.LexerBindings; import org.eclipse.xtext.parser.antlr.LexerProvider; +import org.eclipse.xtext.parser.antlr.UnorderedGroupHelper; import org.eclipse.xtext.resource.IContainer; import org.eclipse.xtext.resource.IResourceDescriptions; import org.eclipse.xtext.resource.containers.IAllContainersState; @@ -137,6 +139,11 @@ public abstract class AbstractSolverLanguageRuntimeModule extends DefaultRuntime .to(InternalSolverLanguageLexer.class); } + // contributed by org.eclipse.xtext.xtext.generator.parser.antlr.XtextAntlrGeneratorFragment2 + public Class bindIUnorderedGroupHelper() { + return UnorderedGroupHelper.class; + } + // contributed by org.eclipse.xtext.xtext.generator.validation.ValidatorFragment2 @SingletonBinding(eager=true) public Class bindSolverLanguageValidator() { diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguage.xtextbin b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguage.xtextbin index da513ba9..0fa5d0d7 100644 Binary files a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguage.xtextbin and b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/SolverLanguage.xtextbin differ diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.g b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.g index 8ec69aaa..eb6f05c7 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.g +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.g @@ -71,23 +71,73 @@ ruleProblem returns [EObject current=null] }: ( ( + otherlv_0=Problem { - newCompositeNode(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0()); + newLeafNode(otherlv_0, grammarAccess.getProblemAccess().getProblemKeyword_0_0()); } - lv_statements_0_0=ruleStatement + ( + ( + { + newCompositeNode(grammarAccess.getProblemAccess().getNameQualifiedNameParserRuleCall_0_1_0()); + } + lv_name_1_0=ruleQualifiedName + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getProblemRule()); + } + set( + $current, + "name", + lv_name_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + } + ) + ) + this_FULL_STOP_2=RULE_FULL_STOP { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getProblemRule()); - } - add( - $current, - "statements", - lv_statements_0_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Statement"); - afterParserOrEnumRuleCall(); + newLeafNode(this_FULL_STOP_2, grammarAccess.getProblemAccess().getFULL_STOPTerminalRuleCall_0_2()); } - ) - )* + )? + ( + ( + { + newCompositeNode(grammarAccess.getProblemAccess().getImportsImportParserRuleCall_1_0()); + } + lv_imports_3_0=ruleImport + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getProblemRule()); + } + add( + $current, + "imports", + lv_imports_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Import"); + afterParserOrEnumRuleCall(); + } + ) + )* + ( + ( + { + newCompositeNode(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_2_0()); + } + lv_statements_4_0=ruleStatement + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getProblemRule()); + } + add( + $current, + "statements", + lv_statements_4_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Statement"); + afterParserOrEnumRuleCall(); + } + ) + )* + ) ; // Entry rule entryRuleStatement @@ -106,118 +156,280 @@ ruleStatement returns [EObject current=null] leaveRule(); }: ( + { + newCompositeNode(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0()); + } + this_AssertionOrDefinition_0=ruleAssertionOrDefinition + { + $current = $this_AssertionOrDefinition_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_1()); + } + this_PredicateDefinition_1=rulePredicateDefinition + { + $current = $this_PredicateDefinition_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getUnnamedErrorPredicateDefintionParserRuleCall_2()); + } + this_UnnamedErrorPredicateDefintion_2=ruleUnnamedErrorPredicateDefintion + { + $current = $this_UnnamedErrorPredicateDefintion_2.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getDefaultAssertionParserRuleCall_3()); + } + this_DefaultAssertion_3=ruleDefaultAssertion + { + $current = $this_DefaultAssertion_3.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getFunctionDefinitionParserRuleCall_4()); + } + this_FunctionDefinition_4=ruleFunctionDefinition + { + $current = $this_FunctionDefinition_4.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getAttributeParserRuleCall_5()); + } + this_Attribute_5=ruleAttribute + { + $current = $this_Attribute_5.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getExternDeclarationParserRuleCall_6()); + } + this_ExternDeclaration_6=ruleExternDeclaration + { + $current = $this_ExternDeclaration_6.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_7()); + } + this_ScopeDeclaration_7=ruleScopeDeclaration + { + $current = $this_ScopeDeclaration_7.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getObjectiveDeclarationParserRuleCall_8()); + } + this_ObjectiveDeclaration_8=ruleObjectiveDeclaration + { + $current = $this_ObjectiveDeclaration_8.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_9()); + } + this_ClassDeclaration_9=ruleClassDeclaration + { + $current = $this_ClassDeclaration_9.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_10()); + } + this_EnumDeclaration_10=ruleEnumDeclaration + { + $current = $this_EnumDeclaration_10.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleImport +entryRuleImport returns [EObject current=null]: + { newCompositeNode(grammarAccess.getImportRule()); } + iv_ruleImport=ruleImport + { $current=$iv_ruleImport.current; } + EOF; + +// Rule Import +ruleImport returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getImportAccess().getUriImportParserRuleCall_0()); + } + this_UriImport_0=ruleUriImport + { + $current = $this_UriImport_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getImportAccess().getNamespaceImportParserRuleCall_1()); + } + this_NamespaceImport_1=ruleNamespaceImport + { + $current = $this_NamespaceImport_1.current; + afterParserOrEnumRuleCall(); + } + ) +; + +// Entry rule entryRuleUriImport +entryRuleUriImport returns [EObject current=null]: + { newCompositeNode(grammarAccess.getUriImportRule()); } + iv_ruleUriImport=ruleUriImport + { $current=$iv_ruleUriImport.current; } + EOF; + +// Rule UriImport +ruleUriImport returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0=Import + { + newLeafNode(otherlv_0, grammarAccess.getUriImportAccess().getImportKeyword_0()); + } ( + ( + lv_uri_1_0=RULE_STRING + { + newLeafNode(lv_uri_1_0, grammarAccess.getUriImportAccess().getUriSTRINGTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getUriImportRule()); + } + setWithLastConsumed( + $current, + "uri", + lv_uri_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.STRING"); + } + ) + ) + ( + otherlv_2=As { - newCompositeNode(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0_0()); - } - this_AssertionOrDefinition_0=ruleAssertionOrDefinition - { - $current = $this_AssertionOrDefinition_0.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_0_1()); - } - this_PredicateDefinition_1=rulePredicateDefinition - { - $current = $this_PredicateDefinition_1.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getUnnamedErrorPrediateDefinitionParserRuleCall_0_2()); - } - this_UnnamedErrorPrediateDefinition_2=ruleUnnamedErrorPrediateDefinition - { - $current = $this_UnnamedErrorPrediateDefinition_2.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getDefaultDefinitionParserRuleCall_0_3()); - } - this_DefaultDefinition_3=ruleDefaultDefinition - { - $current = $this_DefaultDefinition_3.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4()); - } - this_MetricDefinition_4=ruleMetricDefinition - { - $current = $this_MetricDefinition_4.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5()); - } - this_ExternPredicateDefinition_5=ruleExternPredicateDefinition - { - $current = $this_ExternPredicateDefinition_5.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getExternMetricDefinitionParserRuleCall_0_6()); - } - this_ExternMetricDefinition_6=ruleExternMetricDefinition - { - $current = $this_ExternMetricDefinition_6.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7()); - } - this_ExternAggregatorDefinition_7=ruleExternAggregatorDefinition - { - $current = $this_ExternAggregatorDefinition_7.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8()); - } - this_ExternDatatypeDefinition_8=ruleExternDatatypeDefinition - { - $current = $this_ExternDatatypeDefinition_8.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9()); - } - this_ClassDefinition_9=ruleClassDefinition - { - $current = $this_ClassDefinition_9.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10()); - } - this_ScopeDefinition_10=ruleScopeDefinition - { - $current = $this_ScopeDefinition_10.current; - afterParserOrEnumRuleCall(); - } - | - { - newCompositeNode(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11()); + newLeafNode(otherlv_2, grammarAccess.getUriImportAccess().getAsKeyword_2_0()); } - this_ObjectiveDefinition_11=ruleObjectiveDefinition + ( + ( + { + newCompositeNode(grammarAccess.getUriImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); + } + lv_alias_3_0=ruleQualifiedName + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getUriImportRule()); + } + set( + $current, + "alias", + lv_alias_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + } + ) + ) + ) + this_FULL_STOP_4=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_4, grammarAccess.getUriImportAccess().getFULL_STOPTerminalRuleCall_3()); + } + ) +; + +// Entry rule entryRuleNamespaceImport +entryRuleNamespaceImport returns [EObject current=null]: + { newCompositeNode(grammarAccess.getNamespaceImportRule()); } + iv_ruleNamespaceImport=ruleNamespaceImport + { $current=$iv_ruleNamespaceImport.current; } + EOF; + +// Rule NamespaceImport +ruleNamespaceImport returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0=Import + { + newLeafNode(otherlv_0, grammarAccess.getNamespaceImportAccess().getImportKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getNamespaceImportAccess().getImportedNamespaceQualifiedNameParserRuleCall_1_0()); + } + lv_importedNamespace_1_0=ruleQualifiedName + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getNamespaceImportRule()); + } + set( + $current, + "importedNamespace", + lv_importedNamespace_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_2=As { - $current = $this_ObjectiveDefinition_11.current; - afterParserOrEnumRuleCall(); + newLeafNode(otherlv_2, grammarAccess.getNamespaceImportAccess().getAsKeyword_2_0()); } + ( + ( + { + newCompositeNode(grammarAccess.getNamespaceImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); + } + lv_alias_3_0=ruleQualifiedName + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getNamespaceImportRule()); + } + set( + $current, + "alias", + lv_alias_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + } + ) + ) ) - this_FULL_STOP_12=RULE_FULL_STOP + this_FULL_STOP_4=RULE_FULL_STOP { - newLeafNode(this_FULL_STOP_12, grammarAccess.getStatementAccess().getFULL_STOPTerminalRuleCall_1()); + newLeafNode(this_FULL_STOP_4, grammarAccess.getNamespaceImportAccess().getFULL_STOPTerminalRuleCall_3()); } ) ; @@ -251,33 +463,35 @@ ruleAssertionOrDefinition returns [EObject current=null] ( { $current = forceCreateModelElementAndSet( - grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0(), + grammarAccess.getAssertionOrDefinitionAccess().getAssertionExpressionAction_1_0_0(), $current); } ) - otherlv_2=Colon - { - newLeafNode(otherlv_2, grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1()); - } ( + otherlv_2=Colon + { + newLeafNode(otherlv_2, grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0()); + } ( - { - newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0()); - } - lv_range_3_0=ruleExpression - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getAssertionOrDefinitionRule()); + ( + { + newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0()); } - set( - $current, - "range", - lv_range_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); - afterParserOrEnumRuleCall(); - } + lv_range_3_0=ruleExpression + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getAssertionOrDefinitionRule()); + } + set( + $current, + "range", + lv_range_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + afterParserOrEnumRuleCall(); + } + ) ) - ) + )? ) | ( @@ -317,13 +531,13 @@ ruleAssertionOrDefinition returns [EObject current=null] ( { $current = forceCreateModelElementAndSet( - grammarAccess.getAssertionOrDefinitionAccess().getMetricDefinitionHeadAction_1_2_0(), + grammarAccess.getAssertionOrDefinitionAccess().getFunctionDefinitionHeadAction_1_2_0(), $current); } ) - otherlv_8=EqualsSign + otherlv_8=ColonEqualsSign { - newLeafNode(otherlv_8, grammarAccess.getAssertionOrDefinitionAccess().getEqualsSignKeyword_1_2_1()); + newLeafNode(otherlv_8, grammarAccess.getAssertionOrDefinitionAccess().getColonEqualsSignKeyword_1_2_1()); } ( ( @@ -345,7 +559,11 @@ ruleAssertionOrDefinition returns [EObject current=null] ) ) ) - )? + ) + this_FULL_STOP_10=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_10, grammarAccess.getAssertionOrDefinitionAccess().getFULL_STOPTerminalRuleCall_2()); + } ) ; @@ -470,18 +688,22 @@ rulePredicateDefinition returns [EObject current=null] } ) ) + this_FULL_STOP_7=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_7, grammarAccess.getPredicateDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); + } ) ; -// Entry rule entryRuleUnnamedErrorPrediateDefinition -entryRuleUnnamedErrorPrediateDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); } - iv_ruleUnnamedErrorPrediateDefinition=ruleUnnamedErrorPrediateDefinition - { $current=$iv_ruleUnnamedErrorPrediateDefinition.current; } +// Entry rule entryRuleUnnamedErrorPredicateDefintion +entryRuleUnnamedErrorPredicateDefintion returns [EObject current=null]: + { newCompositeNode(grammarAccess.getUnnamedErrorPredicateDefintionRule()); } + iv_ruleUnnamedErrorPredicateDefintion=ruleUnnamedErrorPredicateDefintion + { $current=$iv_ruleUnnamedErrorPredicateDefintion.current; } EOF; -// Rule UnnamedErrorPrediateDefinition -ruleUnnamedErrorPrediateDefinition returns [EObject current=null] +// Rule UnnamedErrorPredicateDefintion +ruleUnnamedErrorPredicateDefintion returns [EObject current=null] @init { enterRule(); } @@ -491,62 +713,137 @@ ruleUnnamedErrorPrediateDefinition returns [EObject current=null] ( otherlv_0=Error { - newLeafNode(otherlv_0, grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getErrorKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getUnnamedErrorPredicateDefintionAccess().getErrorKeyword_0()); + } + ( + ( + { + newCompositeNode(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListArgumentListParserRuleCall_1_0()); + } + lv_argumentList_1_0=ruleArgumentList + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getUnnamedErrorPredicateDefintionRule()); + } + set( + $current, + "argumentList", + lv_argumentList_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); + afterParserOrEnumRuleCall(); + } + ) + ) + otherlv_2=ColonHyphenMinus + { + newLeafNode(otherlv_2, grammarAccess.getUnnamedErrorPredicateDefintionAccess().getColonHyphenMinusKeyword_2()); + } + ( + ( + { + newCompositeNode(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyExpressionParserRuleCall_3_0()); + } + lv_body_3_0=ruleExpression + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getUnnamedErrorPredicateDefintionRule()); + } + set( + $current, + "body", + lv_body_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + afterParserOrEnumRuleCall(); + } + ) + ) + this_FULL_STOP_4=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_4, grammarAccess.getUnnamedErrorPredicateDefintionAccess().getFULL_STOPTerminalRuleCall_4()); + } + ) +; + +// Entry rule entryRuleDefaultAssertion +entryRuleDefaultAssertion returns [EObject current=null]: + { newCompositeNode(grammarAccess.getDefaultAssertionRule()); } + iv_ruleDefaultAssertion=ruleDefaultAssertion + { $current=$iv_ruleDefaultAssertion.current; } + EOF; + +// Rule DefaultAssertion +ruleDefaultAssertion returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0=Default + { + newLeafNode(otherlv_0, grammarAccess.getDefaultAssertionAccess().getDefaultKeyword_0()); } ( ( { - newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getDefaultAssertionAccess().getExpressionCallParserRuleCall_1_0()); } - lv_argumentList_1_0=ruleArgumentList + lv_expression_1_0=ruleCall { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getDefaultAssertionRule()); } set( $current, - "argumentList", - lv_argumentList_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); + "expression", + lv_expression_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Call"); afterParserOrEnumRuleCall(); } ) ) - otherlv_2=ColonHyphenMinus - { - newLeafNode(otherlv_2, grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getColonHyphenMinusKeyword_2()); - } ( + otherlv_2=Colon + { + newLeafNode(otherlv_2, grammarAccess.getDefaultAssertionAccess().getColonKeyword_2_0()); + } ( - { - newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); - } - lv_body_3_0=ruleExpression - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); + ( + { + newCompositeNode(grammarAccess.getDefaultAssertionAccess().getRangeExpressionParserRuleCall_2_1_0()); } - set( - $current, - "body", - lv_body_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); - afterParserOrEnumRuleCall(); - } + lv_range_3_0=ruleExpression + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getDefaultAssertionRule()); + } + set( + $current, + "range", + lv_range_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + afterParserOrEnumRuleCall(); + } + ) ) - ) + )? + this_FULL_STOP_4=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_4, grammarAccess.getDefaultAssertionAccess().getFULL_STOPTerminalRuleCall_3()); + } ) ; -// Entry rule entryRuleDefaultDefinition -entryRuleDefaultDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getDefaultDefinitionRule()); } - iv_ruleDefaultDefinition=ruleDefaultDefinition - { $current=$iv_ruleDefaultDefinition.current; } +// Entry rule entryRuleFunctionDefinition +entryRuleFunctionDefinition returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFunctionDefinitionRule()); } + iv_ruleFunctionDefinition=ruleFunctionDefinition + { $current=$iv_ruleFunctionDefinition.current; } EOF; -// Rule DefaultDefinition -ruleDefaultDefinition returns [EObject current=null] +// Rule FunctionDefinition +ruleFunctionDefinition returns [EObject current=null] @init { enterRule(); } @@ -554,19 +851,31 @@ ruleDefaultDefinition returns [EObject current=null] leaveRule(); }: ( - otherlv_0=Default - { - newLeafNode(otherlv_0, grammarAccess.getDefaultDefinitionAccess().getDefaultKeyword_0()); - } ( ( { - newCompositeNode(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0()); + if ($current==null) { + $current = createModelElement(grammarAccess.getFunctionDefinitionRule()); + } + } + { + newCompositeNode(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolCrossReference_0_0()); + } + ruleQualifiedName + { + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + { + newCompositeNode(grammarAccess.getFunctionDefinitionAccess().getHeadCallParserRuleCall_1_0()); } lv_head_1_0=ruleCall { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getDefaultDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getFunctionDefinitionRule()); } set( $current, @@ -577,41 +886,45 @@ ruleDefaultDefinition returns [EObject current=null] } ) ) - otherlv_2=Colon + otherlv_2=ColonEqualsSign { - newLeafNode(otherlv_2, grammarAccess.getDefaultDefinitionAccess().getColonKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getFunctionDefinitionAccess().getColonEqualsSignKeyword_2()); } ( ( { - newCompositeNode(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getFunctionDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); } - lv_range_3_0=ruleExpression + lv_body_3_0=ruleExpression { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getDefaultDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getFunctionDefinitionRule()); } set( $current, - "range", - lv_range_3_0, + "body", + lv_body_3_0, "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); afterParserOrEnumRuleCall(); } ) ) + this_FULL_STOP_4=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_4, grammarAccess.getFunctionDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); + } ) ; -// Entry rule entryRuleMetricDefinition -entryRuleMetricDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getMetricDefinitionRule()); } - iv_ruleMetricDefinition=ruleMetricDefinition - { $current=$iv_ruleMetricDefinition.current; } +// Entry rule entryRuleTypeReference +entryRuleTypeReference returns [EObject current=null]: + { newCompositeNode(grammarAccess.getTypeReferenceRule()); } + iv_ruleTypeReference=ruleTypeReference + { $current=$iv_ruleTypeReference.current; } EOF; -// Rule MetricDefinition -ruleMetricDefinition returns [EObject current=null] +// Rule TypeReference +ruleTypeReference returns [EObject current=null] @init { enterRule(); } @@ -623,11 +936,11 @@ ruleMetricDefinition returns [EObject current=null] ( { if ($current==null) { - $current = createModelElement(grammarAccess.getMetricDefinitionRule()); + $current = createModelElement(grammarAccess.getTypeReferenceRule()); } } { - newCompositeNode(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0()); + newCompositeNode(grammarAccess.getTypeReferenceAccess().getTypeSymbolCrossReference_0_0()); } ruleQualifiedName { @@ -637,58 +950,142 @@ ruleMetricDefinition returns [EObject current=null] ) ( ( + lv_forceObjectType_1_0=Object { - newCompositeNode(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0()); + newLeafNode(lv_forceObjectType_1_0, grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); } - lv_head_1_0=ruleCall { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getMetricDefinitionRule()); + $current = createModelElement(grammarAccess.getTypeReferenceRule()); } - set( - $current, - "head", - lv_head_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Call"); - afterParserOrEnumRuleCall(); + setWithLastConsumed($current, "forceObjectType", true, "object"); } ) - ) - otherlv_2=EqualsSign - { - newLeafNode(otherlv_2, grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); - } + )? + ) +; + +// Entry rule entryRuleAttribute +entryRuleAttribute returns [EObject current=null]: + { newCompositeNode(grammarAccess.getAttributeRule()); } + iv_ruleAttribute=ruleAttribute + { $current=$iv_ruleAttribute.current; } + EOF; + +// Rule Attribute +ruleAttribute returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( ( ( { - newCompositeNode(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getAttributeAccess().getKindAttributeKindEnumRuleCall_0_0()); } - lv_body_3_0=ruleExpression + lv_kind_0_0=ruleAttributeKind { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getMetricDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getAttributeRule()); } set( $current, - "body", - lv_body_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + "kind", + lv_kind_0_0, + "org.eclipse.viatra.solver.language.SolverLanguage.AttributeKind"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getAttributeRule()); + } + } + { + newCompositeNode(grammarAccess.getAttributeAccess().getTargetSymbolCrossReference_1_0()); + } + ruleQualifiedName + { afterParserOrEnumRuleCall(); } ) ) + this_FULL_STOP_2=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_2, grammarAccess.getAttributeAccess().getFULL_STOPTerminalRuleCall_2()); + } + ) +; + +// Entry rule entryRuleExternDeclaration +entryRuleExternDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getExternDeclarationRule()); } + iv_ruleExternDeclaration=ruleExternDeclaration + { $current=$iv_ruleExternDeclaration.current; } + EOF; + +// Rule ExternDeclaration +ruleExternDeclaration returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + { + newCompositeNode(grammarAccess.getExternDeclarationAccess().getExternPredicateDeclarationParserRuleCall_0()); + } + this_ExternPredicateDeclaration_0=ruleExternPredicateDeclaration + { + $current = $this_ExternPredicateDeclaration_0.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getExternDeclarationAccess().getExternFunctionDeclarationParserRuleCall_1()); + } + this_ExternFunctionDeclaration_1=ruleExternFunctionDeclaration + { + $current = $this_ExternFunctionDeclaration_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getExternDeclarationAccess().getExternAggregationOperatorDeclarationParserRuleCall_2()); + } + this_ExternAggregationOperatorDeclaration_2=ruleExternAggregationOperatorDeclaration + { + $current = $this_ExternAggregationOperatorDeclaration_2.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getExternDeclarationAccess().getExternDatatypeDeclarationParserRuleCall_3()); + } + this_ExternDatatypeDeclaration_3=ruleExternDatatypeDeclaration + { + $current = $this_ExternDatatypeDeclaration_3.current; + afterParserOrEnumRuleCall(); + } ) ; -// Entry rule entryRuleExternPredicateDefinition -entryRuleExternPredicateDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getExternPredicateDefinitionRule()); } - iv_ruleExternPredicateDefinition=ruleExternPredicateDefinition - { $current=$iv_ruleExternPredicateDefinition.current; } +// Entry rule entryRuleExternPredicateDeclaration +entryRuleExternPredicateDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getExternPredicateDeclarationRule()); } + iv_ruleExternPredicateDeclaration=ruleExternPredicateDeclaration + { $current=$iv_ruleExternPredicateDeclaration.current; } EOF; -// Rule ExternPredicateDefinition -ruleExternPredicateDefinition returns [EObject current=null] +// Rule ExternPredicateDeclaration +ruleExternPredicateDeclaration returns [EObject current=null] @init { enterRule(); } @@ -698,22 +1095,82 @@ ruleExternPredicateDefinition returns [EObject current=null] ( otherlv_0=Extern { - newLeafNode(otherlv_0, grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getExternPredicateDeclarationAccess().getExternKeyword_0()); } + ( + ( + { + getUnorderedGroupHelper().enter(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + } + ( + ( + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0); + } + ({true}?=>(( + lv_functional_2_0=Functional + { + newLeafNode(lv_functional_2_0, grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getExternPredicateDeclarationRule()); + } + setWithLastConsumed($current, "functional", true, "functional"); + } + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1); + } + ({true}?=>(( + lv_error_3_0=Error + { + newLeafNode(lv_error_3_0, grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getExternPredicateDeclarationRule()); + } + setWithLastConsumed($current, "error", true, "error"); + } + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + } + ) + ) + )* + ) + ) + { + getUnorderedGroupHelper().leave(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + } + ) ( ( { - newCompositeNode(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getExternPredicateDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } - lv_name_1_0=ruleQualifiedName + lv_name_4_0=ruleQualifiedName { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getExternPredicateDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getExternPredicateDeclarationRule()); } set( $current, "name", - lv_name_1_0, + lv_name_4_0, "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); afterParserOrEnumRuleCall(); } @@ -722,34 +1179,38 @@ ruleExternPredicateDefinition returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); } - lv_argumentList_2_0=ruleArgumentList + lv_argumentList_5_0=ruleArgumentList { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getExternPredicateDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getExternPredicateDeclarationRule()); } set( $current, "argumentList", - lv_argumentList_2_0, + lv_argumentList_5_0, "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); afterParserOrEnumRuleCall(); } ) ) + this_FULL_STOP_6=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_6, grammarAccess.getExternPredicateDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); + } ) ; -// Entry rule entryRuleExternMetricDefinition -entryRuleExternMetricDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getExternMetricDefinitionRule()); } - iv_ruleExternMetricDefinition=ruleExternMetricDefinition - { $current=$iv_ruleExternMetricDefinition.current; } +// Entry rule entryRuleExternFunctionDeclaration +entryRuleExternFunctionDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getExternFunctionDeclarationRule()); } + iv_ruleExternFunctionDeclaration=ruleExternFunctionDeclaration + { $current=$iv_ruleExternFunctionDeclaration.current; } EOF; -// Rule ExternMetricDefinition -ruleExternMetricDefinition returns [EObject current=null] +// Rule ExternFunctionDeclaration +ruleExternFunctionDeclaration returns [EObject current=null] @init { enterRule(); } @@ -759,17 +1220,17 @@ ruleExternMetricDefinition returns [EObject current=null] ( otherlv_0=Extern { - newLeafNode(otherlv_0, grammarAccess.getExternMetricDefinitionAccess().getExternKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getExternFunctionDeclarationAccess().getExternKeyword_0()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getExternMetricDefinitionRule()); + $current = createModelElement(grammarAccess.getExternFunctionDeclarationRule()); } } { - newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + newCompositeNode(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); } ruleQualifiedName { @@ -780,12 +1241,12 @@ ruleExternMetricDefinition returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getExternFunctionDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } lv_name_2_0=ruleQualifiedName { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getExternMetricDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getExternFunctionDeclarationRule()); } set( $current, @@ -799,12 +1260,12 @@ ruleExternMetricDefinition returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); } lv_argumentList_3_0=ruleArgumentList { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getExternMetricDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getExternFunctionDeclarationRule()); } set( $current, @@ -815,18 +1276,22 @@ ruleExternMetricDefinition returns [EObject current=null] } ) ) + this_FULL_STOP_4=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_4, grammarAccess.getExternFunctionDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); + } ) ; -// Entry rule entryRuleExternAggregatorDefinition -entryRuleExternAggregatorDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getExternAggregatorDefinitionRule()); } - iv_ruleExternAggregatorDefinition=ruleExternAggregatorDefinition - { $current=$iv_ruleExternAggregatorDefinition.current; } +// Entry rule entryRuleExternAggregationOperatorDeclaration +entryRuleExternAggregationOperatorDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getExternAggregationOperatorDeclarationRule()); } + iv_ruleExternAggregationOperatorDeclaration=ruleExternAggregationOperatorDeclaration + { $current=$iv_ruleExternAggregationOperatorDeclaration.current; } EOF; -// Rule ExternAggregatorDefinition -ruleExternAggregatorDefinition returns [EObject current=null] +// Rule ExternAggregationOperatorDeclaration +ruleExternAggregationOperatorDeclaration returns [EObject current=null] @init { enterRule(); } @@ -836,17 +1301,17 @@ ruleExternAggregatorDefinition returns [EObject current=null] ( otherlv_0=Extern { - newLeafNode(otherlv_0, grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getExternAggregationOperatorDeclarationAccess().getExternKeyword_0()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getExternAggregatorDefinitionRule()); + $current = createModelElement(grammarAccess.getExternAggregationOperatorDeclarationRule()); } } { - newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + newCompositeNode(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); } ruleQualifiedName { @@ -857,12 +1322,12 @@ ruleExternAggregatorDefinition returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } lv_name_2_0=ruleQualifiedName { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getExternAggregatorDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getExternAggregationOperatorDeclarationRule()); } set( $current, @@ -875,17 +1340,17 @@ ruleExternAggregatorDefinition returns [EObject current=null] ) otherlv_3=LeftCurlyBracket { - newLeafNode(otherlv_3, grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3()); + newLeafNode(otherlv_3, grammarAccess.getExternAggregationOperatorDeclarationAccess().getLeftCurlyBracketKeyword_3()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getExternAggregatorDefinitionRule()); + $current = createModelElement(grammarAccess.getExternAggregationOperatorDeclarationRule()); } } { - newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0()); + newCompositeNode(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolCrossReference_4_0()); } ruleQualifiedName { @@ -895,24 +1360,28 @@ ruleExternAggregatorDefinition returns [EObject current=null] ) otherlv_5=FullStopFullStopFullStop { - newLeafNode(otherlv_5, grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5()); + newLeafNode(otherlv_5, grammarAccess.getExternAggregationOperatorDeclarationAccess().getFullStopFullStopFullStopKeyword_5()); } otherlv_6=RightCurlyBracket { - newLeafNode(otherlv_6, grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6()); + newLeafNode(otherlv_6, grammarAccess.getExternAggregationOperatorDeclarationAccess().getRightCurlyBracketKeyword_6()); + } + this_FULL_STOP_7=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_7, grammarAccess.getExternAggregationOperatorDeclarationAccess().getFULL_STOPTerminalRuleCall_7()); } ) ; -// Entry rule entryRuleExternDatatypeDefinition -entryRuleExternDatatypeDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getExternDatatypeDefinitionRule()); } - iv_ruleExternDatatypeDefinition=ruleExternDatatypeDefinition - { $current=$iv_ruleExternDatatypeDefinition.current; } +// Entry rule entryRuleExternDatatypeDeclaration +entryRuleExternDatatypeDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getExternDatatypeDeclarationRule()); } + iv_ruleExternDatatypeDeclaration=ruleExternDatatypeDeclaration + { $current=$iv_ruleExternDatatypeDeclaration.current; } EOF; -// Rule ExternDatatypeDefinition -ruleExternDatatypeDefinition returns [EObject current=null] +// Rule ExternDatatypeDeclaration +ruleExternDatatypeDeclaration returns [EObject current=null] @init { enterRule(); } @@ -922,21 +1391,21 @@ ruleExternDatatypeDefinition returns [EObject current=null] ( otherlv_0=Extern { - newLeafNode(otherlv_0, grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getExternDatatypeDeclarationAccess().getExternKeyword_0()); } otherlv_1=Datatype { - newLeafNode(otherlv_1, grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1()); + newLeafNode(otherlv_1, grammarAccess.getExternDatatypeDeclarationAccess().getDatatypeKeyword_1()); } ( ( { - newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getExternDatatypeDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); } lv_name_2_0=ruleQualifiedName { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getExternDatatypeDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getExternDatatypeDeclarationRule()); } set( $current, @@ -947,103 +1416,10 @@ ruleExternDatatypeDefinition returns [EObject current=null] } ) ) - ( - otherlv_3=Extends - { - newLeafNode(otherlv_3, grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0()); - } - ( - ( - { - if ($current==null) { - $current = createModelElement(grammarAccess.getExternDatatypeDefinitionRule()); - } - } - { - newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0()); - } - ruleQualifiedName - { - afterParserOrEnumRuleCall(); - } - ) - ) - ( - otherlv_5=Comma - { - newLeafNode(otherlv_5, grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0()); - } - ( - ( - { - if ($current==null) { - $current = createModelElement(grammarAccess.getExternDatatypeDefinitionRule()); - } - } - { - newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0()); - } - ruleQualifiedName - { - afterParserOrEnumRuleCall(); - } - ) - ) - )* - ) - ) -; - -// Entry rule entryRuleVariable -entryRuleVariable returns [EObject current=null]: - { newCompositeNode(grammarAccess.getVariableRule()); } - iv_ruleVariable=ruleVariable - { $current=$iv_ruleVariable.current; } - EOF; - -// Rule Variable -ruleVariable returns [EObject current=null] -@init { - enterRule(); -} -@after { - leaveRule(); -}: - ( - ( - ( - { - if ($current==null) { - $current = createModelElement(grammarAccess.getVariableRule()); - } - } - { - newCompositeNode(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0()); - } - ruleQualifiedName - { - afterParserOrEnumRuleCall(); - } - ) - )? - ( - ( - lv_name_1_0=RULE_ID - { - newLeafNode(lv_name_1_0, grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0()); - } - { - if ($current==null) { - $current = createModelElement(grammarAccess.getVariableRule()); - } - setWithLastConsumed( - $current, - "name", - lv_name_1_0, - "org.eclipse.xtext.common.Terminals.ID"); - } - ) - ) + this_FULL_STOP_3=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_3, grammarAccess.getExternDatatypeDeclarationAccess().getFULL_STOPTerminalRuleCall_3()); + } ) ; @@ -1064,43 +1440,77 @@ ruleExpression returns [EObject current=null] }: ( { - newCompositeNode(grammarAccess.getExpressionAccess().getIfElseParserRuleCall_0()); + newCompositeNode(grammarAccess.getExpressionAccess().getConditionalExpressionParserRuleCall_0()); } - this_IfElse_0=ruleIfElse + this_ConditionalExpression_0=ruleConditionalExpression { - $current = $this_IfElse_0.current; + $current = $this_ConditionalExpression_0.current; afterParserOrEnumRuleCall(); } | { - newCompositeNode(grammarAccess.getExpressionAccess().getLetParserRuleCall_1()); + newCompositeNode(grammarAccess.getExpressionAccess().getLetExpressionParserRuleCall_1()); } - this_Let_1=ruleLet + this_LetExpression_1=ruleLetExpression { - $current = $this_Let_1.current; + $current = $this_LetExpression_1.current; afterParserOrEnumRuleCall(); } | - { - newCompositeNode(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2()); - } - this_ImplicationExpression_2=ruleImplicationExpression - { - $current = $this_ImplicationExpression_2.current; - afterParserOrEnumRuleCall(); - } + ( + { + newCompositeNode(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_2_0()); + } + this_DisjunctiveExpression_2=ruleDisjunctiveExpression + { + $current = $this_DisjunctiveExpression_2.current; + afterParserOrEnumRuleCall(); + } + ( + ( + { + $current = forceCreateModelElementAndSet( + grammarAccess.getExpressionAccess().getForallConditionAction_2_1_0(), + $current); + } + ) + otherlv_4=EqualsSignGreaterThanSign + { + newLeafNode(otherlv_4, grammarAccess.getExpressionAccess().getEqualsSignGreaterThanSignKeyword_2_1_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getExpressionAccess().getBodyDisjunctiveExpressionParserRuleCall_2_1_2_0()); + } + lv_body_5_0=ruleDisjunctiveExpression + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getExpressionRule()); + } + set( + $current, + "body", + lv_body_5_0, + "org.eclipse.viatra.solver.language.SolverLanguage.DisjunctiveExpression"); + afterParserOrEnumRuleCall(); + } + ) + ) + )? + ) ) ; -// Entry rule entryRuleIfElse -entryRuleIfElse returns [EObject current=null]: - { newCompositeNode(grammarAccess.getIfElseRule()); } - iv_ruleIfElse=ruleIfElse - { $current=$iv_ruleIfElse.current; } +// Entry rule entryRuleConditionalExpression +entryRuleConditionalExpression returns [EObject current=null]: + { newCompositeNode(grammarAccess.getConditionalExpressionRule()); } + iv_ruleConditionalExpression=ruleConditionalExpression + { $current=$iv_ruleConditionalExpression.current; } EOF; -// Rule IfElse -ruleIfElse returns [EObject current=null] +// Rule ConditionalExpression +ruleConditionalExpression returns [EObject current=null] @init { enterRule(); } @@ -1110,40 +1520,40 @@ ruleIfElse returns [EObject current=null] ( otherlv_0=If { - newLeafNode(otherlv_0, grammarAccess.getIfElseAccess().getIfKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getConditionalExpressionAccess().getIfKeyword_0()); } ( ( { - newCompositeNode(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getConditionalExpressionAccess().getConditionDisjunctiveExpressionParserRuleCall_1_0()); } - lv_condition_1_0=ruleExpression + lv_condition_1_0=ruleDisjunctiveExpression { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getIfElseRule()); + $current = createModelElementForParent(grammarAccess.getConditionalExpressionRule()); } set( $current, "condition", lv_condition_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + "org.eclipse.viatra.solver.language.SolverLanguage.DisjunctiveExpression"); afterParserOrEnumRuleCall(); } ) ) otherlv_2=Then { - newLeafNode(otherlv_2, grammarAccess.getIfElseAccess().getThenKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getConditionalExpressionAccess().getThenKeyword_2()); } ( ( { - newCompositeNode(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getConditionalExpressionAccess().getThenExpressionParserRuleCall_3_0()); } lv_then_3_0=ruleExpression { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getIfElseRule()); + $current = createModelElementForParent(grammarAccess.getConditionalExpressionRule()); } set( $current, @@ -1156,17 +1566,17 @@ ruleIfElse returns [EObject current=null] ) otherlv_4=Else { - newLeafNode(otherlv_4, grammarAccess.getIfElseAccess().getElseKeyword_4()); + newLeafNode(otherlv_4, grammarAccess.getConditionalExpressionAccess().getElseKeyword_4()); } ( ( { - newCompositeNode(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0()); + newCompositeNode(grammarAccess.getConditionalExpressionAccess().getElseExpressionParserRuleCall_5_0()); } lv_else_5_0=ruleExpression { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getIfElseRule()); + $current = createModelElementForParent(grammarAccess.getConditionalExpressionRule()); } set( $current, @@ -1180,15 +1590,15 @@ ruleIfElse returns [EObject current=null] ) ; -// Entry rule entryRuleLet -entryRuleLet returns [EObject current=null]: - { newCompositeNode(grammarAccess.getLetRule()); } - iv_ruleLet=ruleLet - { $current=$iv_ruleLet.current; } +// Entry rule entryRuleLetExpression +entryRuleLetExpression returns [EObject current=null]: + { newCompositeNode(grammarAccess.getLetExpressionRule()); } + iv_ruleLetExpression=ruleLetExpression + { $current=$iv_ruleLetExpression.current; } EOF; -// Rule Let -ruleLet returns [EObject current=null] +// Rule LetExpression +ruleLetExpression returns [EObject current=null] @init { enterRule(); } @@ -1198,17 +1608,17 @@ ruleLet returns [EObject current=null] ( otherlv_0=Let { - newLeafNode(otherlv_0, grammarAccess.getLetAccess().getLetKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getLetExpressionAccess().getLetKeyword_0()); } ( ( { - newCompositeNode(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_1_0()); } lv_bindings_1_0=ruleLetBinding { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getLetRule()); + $current = createModelElementForParent(grammarAccess.getLetExpressionRule()); } add( $current, @@ -1222,17 +1632,17 @@ ruleLet returns [EObject current=null] ( otherlv_2=Comma { - newLeafNode(otherlv_2, grammarAccess.getLetAccess().getCommaKeyword_2_0()); + newLeafNode(otherlv_2, grammarAccess.getLetExpressionAccess().getCommaKeyword_2_0()); } ( ( { - newCompositeNode(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0()); + newCompositeNode(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_2_1_0()); } lv_bindings_3_0=ruleLetBinding { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getLetRule()); + $current = createModelElementForParent(grammarAccess.getLetExpressionRule()); } add( $current, @@ -1246,17 +1656,17 @@ ruleLet returns [EObject current=null] )* otherlv_4=In { - newLeafNode(otherlv_4, grammarAccess.getLetAccess().getInKeyword_3()); + newLeafNode(otherlv_4, grammarAccess.getLetExpressionAccess().getInKeyword_3()); } ( ( { - newCompositeNode(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0()); + newCompositeNode(grammarAccess.getLetExpressionAccess().getBodyExpressionParserRuleCall_4_0()); } lv_body_5_0=ruleExpression { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getLetRule()); + $current = createModelElementForParent(grammarAccess.getLetExpressionRule()); } set( $current, @@ -1289,32 +1699,47 @@ ruleLetBinding returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0()); + if ($current==null) { + $current = createModelElement(grammarAccess.getLetBindingRule()); + } + } + { + newCompositeNode(grammarAccess.getLetBindingAccess().getTypeSymbolCrossReference_0_0()); + } + ruleQualifiedName + { + afterParserOrEnumRuleCall(); + } + ) + )? + ( + ( + lv_name_1_0=RULE_ID + { + newLeafNode(lv_name_1_0, grammarAccess.getLetBindingAccess().getNameIDTerminalRuleCall_1_0()); } - lv_variable_0_0=ruleVariable { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getLetBindingRule()); + $current = createModelElement(grammarAccess.getLetBindingRule()); } - set( + setWithLastConsumed( $current, - "variable", - lv_variable_0_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Variable"); - afterParserOrEnumRuleCall(); + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); } ) ) - otherlv_1=EqualsSign + otherlv_2=EqualsSign { - newLeafNode(otherlv_1, grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1()); + newLeafNode(otherlv_2, grammarAccess.getLetBindingAccess().getEqualsSignKeyword_2()); } ( ( { - newCompositeNode(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_3_0()); } - lv_value_2_0=ruleAdditiveExpression + lv_value_3_0=ruleAdditiveExpression { if ($current==null) { $current = createModelElementForParent(grammarAccess.getLetBindingRule()); @@ -1322,7 +1747,7 @@ ruleLetBinding returns [EObject current=null] set( $current, "value", - lv_value_2_0, + lv_value_3_0, "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveExpression"); afterParserOrEnumRuleCall(); } @@ -1331,80 +1756,6 @@ ruleLetBinding returns [EObject current=null] ) ; -// Entry rule entryRuleImplicationExpression -entryRuleImplicationExpression returns [EObject current=null]: - { newCompositeNode(grammarAccess.getImplicationExpressionRule()); } - iv_ruleImplicationExpression=ruleImplicationExpression - { $current=$iv_ruleImplicationExpression.current; } - EOF; - -// Rule ImplicationExpression -ruleImplicationExpression returns [EObject current=null] -@init { - enterRule(); -} -@after { - leaveRule(); -}: - ( - { - newCompositeNode(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0()); - } - this_DisjunctiveExpression_0=ruleDisjunctiveExpression - { - $current = $this_DisjunctiveExpression_0.current; - afterParserOrEnumRuleCall(); - } - ( - ( - { - $current = forceCreateModelElementAndSet( - grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0(), - $current); - } - ) - ( - ( - { - newCompositeNode(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0()); - } - lv_op_2_0=ruleImplicationOperator - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getImplicationExpressionRule()); - } - set( - $current, - "op", - lv_op_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.ImplicationOperator"); - afterParserOrEnumRuleCall(); - } - ) - ) - ( - ( - { - newCompositeNode(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0()); - } - lv_right_3_0=ruleImplicationExpression - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getImplicationExpressionRule()); - } - set( - $current, - "right", - lv_right_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.ImplicationExpression"); - afterParserOrEnumRuleCall(); - } - ) - ) - )? - ) -; - // Entry rule entryRuleDisjunctiveExpression entryRuleDisjunctiveExpression returns [EObject current=null]: { newCompositeNode(grammarAccess.getDisjunctiveExpressionRule()); } @@ -1683,7 +2034,7 @@ ruleComparisonExpression returns [EObject current=null] ( { $current = forceCreateModelElementAndSet( - grammarAccess.getComparisonExpressionAccess().getComparisonLeftAction_1_0(), + grammarAccess.getComparisonExpressionAccess().getBinaryExpressionLeftAction_1_0(), $current); } ) @@ -1995,7 +2346,7 @@ ruleCastExpression returns [EObject current=null] } } { - newCompositeNode(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0()); + newCompositeNode(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolCrossReference_1_2_0()); } ruleQualifiedName { @@ -2024,11 +2375,11 @@ ruleUnaryExpression returns [EObject current=null] }: ( { - newCompositeNode(grammarAccess.getUnaryExpressionAccess().getAggregationExpressionParserRuleCall_0()); + newCompositeNode(grammarAccess.getUnaryExpressionAccess().getBracedAggregateExpressionParserRuleCall_0()); } - this_AggregationExpression_0=ruleAggregationExpression + this_BracedAggregateExpression_0=ruleBracedAggregateExpression { - $current = $this_AggregationExpression_0.current; + $current = $this_BracedAggregateExpression_0.current; afterParserOrEnumRuleCall(); } | @@ -2043,9 +2394,9 @@ ruleUnaryExpression returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0()); + newCompositeNode(grammarAccess.getUnaryExpressionAccess().getOpUnaryOperatorEnumRuleCall_1_1_0()); } - lv_op_2_0=ruleUnaryOp + lv_op_2_0=ruleUnaryOperator { if ($current==null) { $current = createModelElementForParent(grammarAccess.getUnaryExpressionRule()); @@ -2054,7 +2405,7 @@ ruleUnaryExpression returns [EObject current=null] $current, "op", lv_op_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.UnaryOp"); + "org.eclipse.viatra.solver.language.SolverLanguage.UnaryOperator"); afterParserOrEnumRuleCall(); } ) @@ -2062,9 +2413,9 @@ ruleUnaryExpression returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0()); + newCompositeNode(grammarAccess.getUnaryExpressionAccess().getBodyBracedAggregateExpressionParserRuleCall_1_2_0()); } - lv_body_3_0=ruleAggregationExpression + lv_body_3_0=ruleBracedAggregateExpression { if ($current==null) { $current = createModelElementForParent(grammarAccess.getUnaryExpressionRule()); @@ -2073,7 +2424,7 @@ ruleUnaryExpression returns [EObject current=null] $current, "body", lv_body_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.AggregationExpression"); + "org.eclipse.viatra.solver.language.SolverLanguage.BracedAggregateExpression"); afterParserOrEnumRuleCall(); } ) @@ -2082,15 +2433,15 @@ ruleUnaryExpression returns [EObject current=null] ) ; -// Entry rule entryRuleAggregationExpression -entryRuleAggregationExpression returns [EObject current=null]: - { newCompositeNode(grammarAccess.getAggregationExpressionRule()); } - iv_ruleAggregationExpression=ruleAggregationExpression - { $current=$iv_ruleAggregationExpression.current; } +// Entry rule entryRuleBracedAggregateExpression +entryRuleBracedAggregateExpression returns [EObject current=null]: + { newCompositeNode(grammarAccess.getBracedAggregateExpressionRule()); } + iv_ruleBracedAggregateExpression=ruleBracedAggregateExpression + { $current=$iv_ruleBracedAggregateExpression.current; } EOF; -// Rule AggregationExpression -ruleAggregationExpression returns [EObject current=null] +// Rule BracedAggregateExpression +ruleBracedAggregateExpression returns [EObject current=null] @init { enterRule(); } @@ -2099,7 +2450,7 @@ ruleAggregationExpression returns [EObject current=null] }: ( { - newCompositeNode(grammarAccess.getAggregationExpressionAccess().getAtomicExpressionParserRuleCall_0()); + newCompositeNode(grammarAccess.getBracedAggregateExpressionAccess().getAtomicExpressionParserRuleCall_0()); } this_AtomicExpression_0=ruleAtomicExpression { @@ -2108,34 +2459,34 @@ ruleAggregationExpression returns [EObject current=null] } | { - newCompositeNode(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1()); + newCompositeNode(grammarAccess.getBracedAggregateExpressionAccess().getAggregationParserRuleCall_1()); } - this_QuantifiedExpression_1=ruleQuantifiedExpression + this_Aggregation_1=ruleAggregation { - $current = $this_QuantifiedExpression_1.current; + $current = $this_Aggregation_1.current; afterParserOrEnumRuleCall(); } | { - newCompositeNode(grammarAccess.getAggregationExpressionAccess().getAggregationParserRuleCall_2()); + newCompositeNode(grammarAccess.getBracedAggregateExpressionAccess().getCountParserRuleCall_2()); } - this_Aggregation_2=ruleAggregation + this_Count_2=ruleCount { - $current = $this_Aggregation_2.current; + $current = $this_Count_2.current; afterParserOrEnumRuleCall(); } ) ; -// Entry rule entryRuleLocalVariables -entryRuleLocalVariables returns [EObject current=null]: - { newCompositeNode(grammarAccess.getLocalVariablesRule()); } - iv_ruleLocalVariables=ruleLocalVariables - { $current=$iv_ruleLocalVariables.current; } +// Entry rule entryRuleAggregation +entryRuleAggregation returns [EObject current=null]: + { newCompositeNode(grammarAccess.getAggregationRule()); } + iv_ruleAggregation=ruleAggregation + { $current=$iv_ruleAggregation.current; } EOF; -// Rule LocalVariables -ruleLocalVariables returns [EObject current=null] +// Rule Aggregation +ruleAggregation returns [EObject current=null] @init { enterRule(); } @@ -2144,162 +2495,83 @@ ruleLocalVariables returns [EObject current=null] }: ( ( - { - $current = forceCreateModelElement( - grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0(), - $current); - } - ) - otherlv_1=LeftSquareBracket - { - newLeafNode(otherlv_1, grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1()); - } - ( - ( - ( - { - newCompositeNode(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0()); - } - lv_variables_2_0=ruleVariable - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getLocalVariablesRule()); - } - add( - $current, - "variables", - lv_variables_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Variable"); - afterParserOrEnumRuleCall(); - } - ) - ) ( - otherlv_3=Comma { - newLeafNode(otherlv_3, grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0()); + if ($current==null) { + $current = createModelElement(grammarAccess.getAggregationRule()); + } } - ( - ( - { - newCompositeNode(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0()); - } - lv_variables_4_0=ruleVariable - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getLocalVariablesRule()); - } - add( - $current, - "variables", - lv_variables_4_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Variable"); - afterParserOrEnumRuleCall(); - } - ) - ) - )* - )? - otherlv_5=RightSquareBracket - { - newLeafNode(otherlv_5, grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3()); - } - ) -; - -// Entry rule entryRuleQuantifiedExpression -entryRuleQuantifiedExpression returns [EObject current=null]: - { newCompositeNode(grammarAccess.getQuantifiedExpressionRule()); } - iv_ruleQuantifiedExpression=ruleQuantifiedExpression - { $current=$iv_ruleQuantifiedExpression.current; } - EOF; - -// Rule QuantifiedExpression -ruleQuantifiedExpression returns [EObject current=null] -@init { - enterRule(); -} -@after { - leaveRule(); -}: - ( - ( - ( { - newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0()); + newCompositeNode(grammarAccess.getAggregationAccess().getOpSymbolCrossReference_0_0()); } - lv_quantifier_0_0=ruleQuantifier + ruleQualifiedName { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule()); - } - set( - $current, - "quantifier", - lv_quantifier_0_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Quantifier"); afterParserOrEnumRuleCall(); } ) ) + otherlv_1=LeftCurlyBracket + { + newLeafNode(otherlv_1, grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); + } ( ( { - newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getAggregationAccess().getValueExpressionParserRuleCall_2_0()); } - lv_localVariables_1_0=ruleLocalVariables + lv_value_2_0=ruleExpression { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule()); + $current = createModelElementForParent(grammarAccess.getAggregationRule()); } set( $current, - "localVariables", - lv_localVariables_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.LocalVariables"); + "value", + lv_value_2_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); afterParserOrEnumRuleCall(); } ) - )? - otherlv_2=LeftCurlyBracket + ) + otherlv_3=VerticalLine { - newLeafNode(otherlv_2, grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2()); + newLeafNode(otherlv_3, grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); } ( ( { - newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); } - lv_body_3_0=ruleExpression + lv_condition_4_0=ruleExpression { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule()); + $current = createModelElementForParent(grammarAccess.getAggregationRule()); } set( $current, - "body", - lv_body_3_0, + "condition", + lv_condition_4_0, "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); afterParserOrEnumRuleCall(); } ) ) - otherlv_4=RightCurlyBracket + otherlv_5=RightCurlyBracket { - newLeafNode(otherlv_4, grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4()); + newLeafNode(otherlv_5, grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); } ) ; -// Entry rule entryRuleAggregation -entryRuleAggregation returns [EObject current=null]: - { newCompositeNode(grammarAccess.getAggregationRule()); } - iv_ruleAggregation=ruleAggregation - { $current=$iv_ruleAggregation.current; } +// Entry rule entryRuleCount +entryRuleCount returns [EObject current=null]: + { newCompositeNode(grammarAccess.getCountRule()); } + iv_ruleCount=ruleCount + { $current=$iv_ruleCount.current; } EOF; -// Rule Aggregation -ruleAggregation returns [EObject current=null] +// Rule Count +ruleCount returns [EObject current=null] @init { enterRule(); } @@ -2307,92 +2579,36 @@ ruleAggregation returns [EObject current=null] leaveRule(); }: ( - ( - ( - { - if ($current==null) { - $current = createModelElement(grammarAccess.getAggregationRule()); - } - } - { - newCompositeNode(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0()); - } - ruleQualifiedName - { - afterParserOrEnumRuleCall(); - } - ) - ) - ( - ( - { - newCompositeNode(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); - } - lv_localVariables_1_0=ruleLocalVariables - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getAggregationRule()); - } - set( - $current, - "localVariables", - lv_localVariables_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.LocalVariables"); - afterParserOrEnumRuleCall(); - } - ) - )? - otherlv_2=LeftCurlyBracket + otherlv_0=Count { - newLeafNode(otherlv_2, grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2()); + newLeafNode(otherlv_0, grammarAccess.getCountAccess().getCountKeyword_0()); } - ( - ( - { - newCompositeNode(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0()); - } - lv_body_3_0=ruleExpression - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getAggregationRule()); - } - set( - $current, - "body", - lv_body_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); - afterParserOrEnumRuleCall(); - } - ) - ) - ( - otherlv_4=VerticalLine - { - newLeafNode(otherlv_4, grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0()); - } - ( - ( - { - newCompositeNode(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0()); - } - lv_condition_5_0=ruleExpression - { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getAggregationRule()); - } - set( - $current, - "condition", - lv_condition_5_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); - afterParserOrEnumRuleCall(); + otherlv_1=LeftCurlyBracket + { + newLeafNode(otherlv_1, grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); + } + ( + ( + { + newCompositeNode(grammarAccess.getCountAccess().getConditionExpressionParserRuleCall_2_0()); + } + lv_condition_2_0=ruleExpression + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getCountRule()); } - ) + set( + $current, + "condition", + lv_condition_2_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + afterParserOrEnumRuleCall(); + } ) - )? - otherlv_6=RightCurlyBracket + ) + otherlv_3=RightCurlyBracket { - newLeafNode(otherlv_6, grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); + newLeafNode(otherlv_3, grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); } ) ; @@ -2505,51 +2721,12 @@ ruleCall returns [EObject current=null] } ) ) - ( - ( - ( - lv_transitiveClosure_1_0=RULE_TRANSITIVE_CLOSURE - { - newLeafNode(lv_transitiveClosure_1_0, grammarAccess.getCallAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0()); - } - { - if ($current==null) { - $current = createModelElement(grammarAccess.getCallRule()); - } - setWithLastConsumed( - $current, - "transitiveClosure", - true, - "org.eclipse.viatra.solver.language.SolverLanguage.TRANSITIVE_CLOSURE"); - } - ) - ) - | - ( - ( - lv_reflexiveTransitiveClosure_2_0=RULE_REFLEXIVE_TRANSITIVE_CLOSURE - { - newLeafNode(lv_reflexiveTransitiveClosure_2_0, grammarAccess.getCallAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0()); - } - { - if ($current==null) { - $current = createModelElement(grammarAccess.getCallRule()); - } - setWithLastConsumed( - $current, - "reflexiveTransitiveClosure", - true, - "org.eclipse.viatra.solver.language.SolverLanguage.REFLEXIVE_TRANSITIVE_CLOSURE"); - } - ) - ) - )? ( ( { - newCompositeNode(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_1_0()); } - lv_argumentList_3_0=ruleArgumentList + lv_argumentList_1_0=ruleArgumentList { if ($current==null) { $current = createModelElementForParent(grammarAccess.getCallRule()); @@ -2557,7 +2734,7 @@ ruleCall returns [EObject current=null] set( $current, "argumentList", - lv_argumentList_3_0, + lv_argumentList_1_0, "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); afterParserOrEnumRuleCall(); } @@ -2681,11 +2858,11 @@ ruleArgument returns [EObject current=null] } | { - newCompositeNode(grammarAccess.getArgumentAccess().getTypedArgumentParserRuleCall_2()); + newCompositeNode(grammarAccess.getArgumentAccess().getTypedVariableArgumentParserRuleCall_2()); } - this_TypedArgument_2=ruleTypedArgument + this_TypedVariableArgument_2=ruleTypedVariableArgument { - $current = $this_TypedArgument_2.current; + $current = $this_TypedVariableArgument_2.current; afterParserOrEnumRuleCall(); } | @@ -2718,17 +2895,17 @@ ruleExpressionArgument returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0()); + newCompositeNode(grammarAccess.getExpressionArgumentAccess().getExpressionComparisonExpressionParserRuleCall_0()); } - lv_body_0_0=ruleComparisonExpression + lv_expression_0_0=ruleComparisonExpression { if ($current==null) { $current = createModelElementForParent(grammarAccess.getExpressionArgumentRule()); } set( $current, - "body", - lv_body_0_0, + "expression", + lv_expression_0_0, "org.eclipse.viatra.solver.language.SolverLanguage.ComparisonExpression"); afterParserOrEnumRuleCall(); } @@ -2766,15 +2943,15 @@ ruleStarArgument returns [EObject current=null] ) ; -// Entry rule entryRuleTypedArgument -entryRuleTypedArgument returns [EObject current=null]: - { newCompositeNode(grammarAccess.getTypedArgumentRule()); } - iv_ruleTypedArgument=ruleTypedArgument - { $current=$iv_ruleTypedArgument.current; } +// Entry rule entryRuleTypedVariableArgument +entryRuleTypedVariableArgument returns [EObject current=null]: + { newCompositeNode(grammarAccess.getTypedVariableArgumentRule()); } + iv_ruleTypedVariableArgument=ruleTypedVariableArgument + { $current=$iv_ruleTypedVariableArgument.current; } EOF; -// Rule TypedArgument -ruleTypedArgument returns [EObject current=null] +// Rule TypedVariableArgument +ruleTypedVariableArgument returns [EObject current=null] @init { enterRule(); } @@ -2785,32 +2962,37 @@ ruleTypedArgument returns [EObject current=null] ( ( { - if ($current==null) { - $current = createModelElement(grammarAccess.getTypedArgumentRule()); - } - } - { - newCompositeNode(grammarAccess.getTypedArgumentAccess().getTypeNamedElementCrossReference_0_0()); + newCompositeNode(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); } - ruleQualifiedName + lv_typeReference_0_0=ruleTypeReference { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getTypedVariableArgumentRule()); + } + set( + $current, + "typeReference", + lv_typeReference_0_0, + "org.eclipse.viatra.solver.language.SolverLanguage.TypeReference"); afterParserOrEnumRuleCall(); } ) ) ( ( + lv_name_1_0=RULE_ID { - if ($current==null) { - $current = createModelElement(grammarAccess.getTypedArgumentRule()); - } - } - { - newCompositeNode(grammarAccess.getTypedArgumentAccess().getVariableNamedElementCrossReference_1_0()); + newLeafNode(lv_name_1_0, grammarAccess.getTypedVariableArgumentAccess().getNameIDTerminalRuleCall_1_0()); } - ruleQualifiedName { - afterParserOrEnumRuleCall(); + if ($current==null) { + $current = createModelElement(grammarAccess.getTypedVariableArgumentRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); } ) ) @@ -2836,15 +3018,18 @@ ruleTypedStarArgument returns [EObject current=null] ( ( { - if ($current==null) { - $current = createModelElement(grammarAccess.getTypedStarArgumentRule()); - } - } - { - newCompositeNode(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementCrossReference_0_0()); + newCompositeNode(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); } - ruleQualifiedName + lv_typeReference_0_0=ruleTypeReference { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getTypedStarArgumentRule()); + } + set( + $current, + "typeReference", + lv_typeReference_0_0, + "org.eclipse.viatra.solver.language.SolverLanguage.TypeReference"); afterParserOrEnumRuleCall(); } ) @@ -2873,19 +3058,137 @@ ruleReference returns [EObject current=null] }: ( ( - { - if ($current==null) { - $current = createModelElement(grammarAccess.getReferenceRule()); + ( + { + newCompositeNode(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_0_0()); } - } - { - newCompositeNode(grammarAccess.getReferenceAccess().getReferredNamedElementCrossReference_0()); - } - ruleQualifiedName + lv_components_0_0=rulePathComponent + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getReferenceRule()); + } + add( + $current, + "components", + lv_components_0_0, + "org.eclipse.viatra.solver.language.SolverLanguage.PathComponent"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + otherlv_1=FullStop { - afterParserOrEnumRuleCall(); + newLeafNode(otherlv_1, grammarAccess.getReferenceAccess().getFullStopKeyword_1_0()); } + ( + ( + { + newCompositeNode(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_1_1_0()); + } + lv_components_2_0=rulePathComponent + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getReferenceRule()); + } + add( + $current, + "components", + lv_components_2_0, + "org.eclipse.viatra.solver.language.SolverLanguage.PathComponent"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + ) +; + +// Entry rule entryRulePathComponent +entryRulePathComponent returns [EObject current=null]: + { newCompositeNode(grammarAccess.getPathComponentRule()); } + iv_rulePathComponent=rulePathComponent + { $current=$iv_rulePathComponent.current; } + EOF; + +// Rule PathComponent +rulePathComponent returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + ( + lv_inverse_0_0=Tilde + { + newLeafNode(lv_inverse_0_0, grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getPathComponentRule()); + } + setWithLastConsumed($current, "inverse", true, "~"); + } + ) + )? + ( + ( + { + if ($current==null) { + $current = createModelElement(grammarAccess.getPathComponentRule()); + } + } + { + newCompositeNode(grammarAccess.getPathComponentAccess().getSymbolSymbolCrossReference_1_0()); + } + ruleQualifiedName + { + afterParserOrEnumRuleCall(); + } + ) ) + ( + ( + ( + lv_transitiveClosure_2_0=RULE_TRANSITIVE_CLOSURE + { + newLeafNode(lv_transitiveClosure_2_0, grammarAccess.getPathComponentAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getPathComponentRule()); + } + setWithLastConsumed( + $current, + "transitiveClosure", + true, + "org.eclipse.viatra.solver.language.SolverLanguage.TRANSITIVE_CLOSURE"); + } + ) + ) + | + ( + ( + lv_reflexiveTransitiveClosure_3_0=RULE_REFLEXIVE_TRANSITIVE_CLOSURE + { + newLeafNode(lv_reflexiveTransitiveClosure_3_0, grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getPathComponentRule()); + } + setWithLastConsumed( + $current, + "reflexiveTransitiveClosure", + true, + "org.eclipse.viatra.solver.language.SolverLanguage.REFLEXIVE_TRANSITIVE_CLOSURE"); + } + ) + ) + )? ) ; @@ -2912,9 +3215,9 @@ ruleInterval returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getIntervalAccess().getLowerBoundAdditiveExpressionParserRuleCall_1_0()); } - lv_lowerBound_1_0=ruleExpression + lv_lowerBound_1_0=ruleAdditiveExpression { if ($current==null) { $current = createModelElementForParent(grammarAccess.getIntervalRule()); @@ -2923,21 +3226,21 @@ ruleInterval returns [EObject current=null] $current, "lowerBound", lv_lowerBound_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveExpression"); afterParserOrEnumRuleCall(); } ) ) - otherlv_2=FullStopFullStop + otherlv_2=Comma { - newLeafNode(otherlv_2, grammarAccess.getIntervalAccess().getFullStopFullStopKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getIntervalAccess().getCommaKeyword_2()); } ( ( { - newCompositeNode(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getIntervalAccess().getUpperBoundAdditiveExpressionParserRuleCall_3_0()); } - lv_upperBound_3_0=ruleExpression + lv_upperBound_3_0=ruleAdditiveExpression { if ($current==null) { $current = createModelElementForParent(grammarAccess.getIntervalRule()); @@ -2946,7 +3249,7 @@ ruleInterval returns [EObject current=null] $current, "upperBound", lv_upperBound_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveExpression"); afterParserOrEnumRuleCall(); } ) @@ -2984,38 +3287,47 @@ ruleLiteral returns [EObject current=null] } | { - newCompositeNode(grammarAccess.getLiteralAccess().getNumericLiteralParserRuleCall_1()); + newCompositeNode(grammarAccess.getLiteralAccess().getIntLiteralParserRuleCall_1()); + } + this_IntLiteral_1=ruleIntLiteral + { + $current = $this_IntLiteral_1.current; + afterParserOrEnumRuleCall(); + } + | + { + newCompositeNode(grammarAccess.getLiteralAccess().getRealLiteralParserRuleCall_2()); } - this_NumericLiteral_1=ruleNumericLiteral + this_RealLiteral_2=ruleRealLiteral { - $current = $this_NumericLiteral_1.current; + $current = $this_RealLiteral_2.current; afterParserOrEnumRuleCall(); } | { - newCompositeNode(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_2()); + newCompositeNode(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_3()); } - this_InfinityLiteral_2=ruleInfinityLiteral + this_InfinityLiteral_3=ruleInfinityLiteral { - $current = $this_InfinityLiteral_2.current; + $current = $this_InfinityLiteral_3.current; afterParserOrEnumRuleCall(); } | { - newCompositeNode(grammarAccess.getLiteralAccess().getEmptyIntervalLiteralParserRuleCall_3()); + newCompositeNode(grammarAccess.getLiteralAccess().getEmptyLiteralParserRuleCall_4()); } - this_EmptyIntervalLiteral_3=ruleEmptyIntervalLiteral + this_EmptyLiteral_4=ruleEmptyLiteral { - $current = $this_EmptyIntervalLiteral_3.current; + $current = $this_EmptyLiteral_4.current; afterParserOrEnumRuleCall(); } | { - newCompositeNode(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_4()); + newCompositeNode(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_5()); } - this_StringLiteral_4=ruleStringLiteral + this_StringLiteral_5=ruleStringLiteral { - $current = $this_StringLiteral_4.current; + $current = $this_StringLiteral_5.current; afterParserOrEnumRuleCall(); } ) @@ -3057,15 +3369,50 @@ ruleLogicLiteral returns [EObject current=null] ) ; -// Entry rule entryRuleNumericLiteral -entryRuleNumericLiteral returns [EObject current=null]: - { newCompositeNode(grammarAccess.getNumericLiteralRule()); } - iv_ruleNumericLiteral=ruleNumericLiteral - { $current=$iv_ruleNumericLiteral.current; } +// Entry rule entryRuleIntLiteral +entryRuleIntLiteral returns [EObject current=null]: + { newCompositeNode(grammarAccess.getIntLiteralRule()); } + iv_ruleIntLiteral=ruleIntLiteral + { $current=$iv_ruleIntLiteral.current; } + EOF; + +// Rule IntLiteral +ruleIntLiteral returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + lv_value_0_0=RULE_INT + { + newLeafNode(lv_value_0_0, grammarAccess.getIntLiteralAccess().getValueINTTerminalRuleCall_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getIntLiteralRule()); + } + setWithLastConsumed( + $current, + "value", + lv_value_0_0, + "org.eclipse.xtext.common.Terminals.INT"); + } + ) + ) +; + +// Entry rule entryRuleRealLiteral +entryRuleRealLiteral returns [EObject current=null]: + { newCompositeNode(grammarAccess.getRealLiteralRule()); } + iv_ruleRealLiteral=ruleRealLiteral + { $current=$iv_ruleRealLiteral.current; } EOF; -// Rule NumericLiteral -ruleNumericLiteral returns [EObject current=null] +// Rule RealLiteral +ruleRealLiteral returns [EObject current=null] @init { enterRule(); } @@ -3075,12 +3422,12 @@ ruleNumericLiteral returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0()); + newCompositeNode(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_0()); } lv_value_0_0=ruleReal { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getNumericLiteralRule()); + $current = createModelElementForParent(grammarAccess.getRealLiteralRule()); } set( $current, @@ -3123,15 +3470,15 @@ ruleInfinityLiteral returns [EObject current=null] ) ; -// Entry rule entryRuleEmptyIntervalLiteral -entryRuleEmptyIntervalLiteral returns [EObject current=null]: - { newCompositeNode(grammarAccess.getEmptyIntervalLiteralRule()); } - iv_ruleEmptyIntervalLiteral=ruleEmptyIntervalLiteral - { $current=$iv_ruleEmptyIntervalLiteral.current; } +// Entry rule entryRuleEmptyLiteral +entryRuleEmptyLiteral returns [EObject current=null]: + { newCompositeNode(grammarAccess.getEmptyLiteralRule()); } + iv_ruleEmptyLiteral=ruleEmptyLiteral + { $current=$iv_ruleEmptyLiteral.current; } EOF; -// Rule EmptyIntervalLiteral -ruleEmptyIntervalLiteral returns [EObject current=null] +// Rule EmptyLiteral +ruleEmptyLiteral returns [EObject current=null] @init { enterRule(); } @@ -3142,13 +3489,13 @@ ruleEmptyIntervalLiteral returns [EObject current=null] ( { $current = forceCreateModelElement( - grammarAccess.getEmptyIntervalLiteralAccess().getEmptyIntervalLiteralAction_0(), + grammarAccess.getEmptyLiteralAccess().getEmptyLiteralAction_0(), $current); } ) otherlv_1=Empty { - newLeafNode(otherlv_1, grammarAccess.getEmptyIntervalLiteralAccess().getEmptyKeyword_1()); + newLeafNode(otherlv_1, grammarAccess.getEmptyLiteralAccess().getEmptyKeyword_1()); } ) ; @@ -3188,15 +3535,15 @@ ruleStringLiteral returns [EObject current=null] ) ; -// Entry rule entryRuleClassDefinition -entryRuleClassDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getClassDefinitionRule()); } - iv_ruleClassDefinition=ruleClassDefinition - { $current=$iv_ruleClassDefinition.current; } +// Entry rule entryRuleClassDeclaration +entryRuleClassDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getClassDeclarationRule()); } + iv_ruleClassDeclaration=ruleClassDeclaration + { $current=$iv_ruleClassDeclaration.current; } EOF; -// Rule ClassDefinition -ruleClassDefinition returns [EObject current=null] +// Rule ClassDeclaration +ruleClassDeclaration returns [EObject current=null] @init { enterRule(); } @@ -3206,54 +3553,100 @@ ruleClassDefinition returns [EObject current=null] ( ( ( - lv_abstract_0_0=Abstract - { - newLeafNode(lv_abstract_0_0, grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); + { + getUnorderedGroupHelper().enter(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); } - { - if ($current==null) { - $current = createModelElement(grammarAccess.getClassDefinitionRule()); + ( + ( + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0); } - setWithLastConsumed($current, "abstract", true, "abstract"); - } + ({true}?=>(( + lv_abstract_1_0=Abstract + { + newLeafNode(lv_abstract_1_0, grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getClassDeclarationRule()); + } + setWithLastConsumed($current, "abstract", true, "abstract"); + } + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); + } + ) + )| + ( + {getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1)}?=>( + { + getUnorderedGroupHelper().select(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1); + } + ({true}?=>(( + lv_root_2_0=Root + { + newLeafNode(lv_root_2_0, grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getClassDeclarationRule()); + } + setWithLastConsumed($current, "root", true, "root"); + } + ) + )) + { + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); + } + ) ) - )? - otherlv_1=Class + )* + ) + ) + { + getUnorderedGroupHelper().leave(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); + } + ) + otherlv_3=Class { - newLeafNode(otherlv_1, grammarAccess.getClassDefinitionAccess().getClassKeyword_1()); + newLeafNode(otherlv_3, grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); } ( ( - lv_name_2_0=RULE_ID + lv_name_4_0=RULE_ID { - newLeafNode(lv_name_2_0, grammarAccess.getClassDefinitionAccess().getNameIDTerminalRuleCall_2_0()); + newLeafNode(lv_name_4_0, grammarAccess.getClassDeclarationAccess().getNameIDTerminalRuleCall_2_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getClassDefinitionRule()); + $current = createModelElement(grammarAccess.getClassDeclarationRule()); } setWithLastConsumed( $current, "name", - lv_name_2_0, + lv_name_4_0, "org.eclipse.xtext.common.Terminals.ID"); } ) ) ( - otherlv_3=Extends + otherlv_5=Extends { - newLeafNode(otherlv_3, grammarAccess.getClassDefinitionAccess().getExtendsKeyword_3_0()); + newLeafNode(otherlv_5, grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getClassDefinitionRule()); + $current = createModelElement(grammarAccess.getClassDeclarationRule()); } } { - newCompositeNode(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_1_0()); + newCompositeNode(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_1_0()); } ruleQualifiedName { @@ -3262,19 +3655,19 @@ ruleClassDefinition returns [EObject current=null] ) ) ( - otherlv_5=Comma + otherlv_7=Comma { - newLeafNode(otherlv_5, grammarAccess.getClassDefinitionAccess().getCommaKeyword_3_2_0()); + newLeafNode(otherlv_7, grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getClassDefinitionRule()); + $current = createModelElement(grammarAccess.getClassDeclarationRule()); } } { - newCompositeNode(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_2_1_0()); + newCompositeNode(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_2_1_0()); } ruleQualifiedName { @@ -3284,45 +3677,54 @@ ruleClassDefinition returns [EObject current=null] ) )* )? - otherlv_7=LeftCurlyBracket - { - newLeafNode(otherlv_7, grammarAccess.getClassDefinitionAccess().getLeftCurlyBracketKeyword_4()); - } ( ( + otherlv_9=LeftCurlyBracket { - newCompositeNode(grammarAccess.getClassDefinitionAccess().getMembersMemberDefinitionParserRuleCall_5_0()); + newLeafNode(otherlv_9, grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); } - lv_members_8_0=ruleMemberDefinition + ( + ( + { + newCompositeNode(grammarAccess.getClassDeclarationAccess().getFieldsFieldParserRuleCall_4_0_1_0()); + } + lv_fields_10_0=ruleField + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getClassDeclarationRule()); + } + add( + $current, + "fields", + lv_fields_10_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Field"); + afterParserOrEnumRuleCall(); + } + ) + )* + otherlv_11=RightCurlyBracket { - if ($current==null) { - $current = createModelElementForParent(grammarAccess.getClassDefinitionRule()); - } - add( - $current, - "members", - lv_members_8_0, - "org.eclipse.viatra.solver.language.SolverLanguage.MemberDefinition"); - afterParserOrEnumRuleCall(); + newLeafNode(otherlv_11, grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); } ) - )* - otherlv_9=RightCurlyBracket - { - newLeafNode(otherlv_9, grammarAccess.getClassDefinitionAccess().getRightCurlyBracketKeyword_6()); - } + | + this_FULL_STOP_12=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_12, grammarAccess.getClassDeclarationAccess().getFULL_STOPTerminalRuleCall_4_1()); + } + ) ) ; -// Entry rule entryRuleMemberDefinition -entryRuleMemberDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getMemberDefinitionRule()); } - iv_ruleMemberDefinition=ruleMemberDefinition - { $current=$iv_ruleMemberDefinition.current; } +// Entry rule entryRuleField +entryRuleField returns [EObject current=null]: + { newCompositeNode(grammarAccess.getFieldRule()); } + iv_ruleField=ruleField + { $current=$iv_ruleField.current; } EOF; -// Rule MemberDefinition -ruleMemberDefinition returns [EObject current=null] +// Rule Field +ruleField returns [EObject current=null] @init { enterRule(); } @@ -3332,27 +3734,44 @@ ruleMemberDefinition returns [EObject current=null] ( ( ( - lv_containment_0_0=Contains - { - newLeafNode(lv_containment_0_0, grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); - } - { - if ($current==null) { - $current = createModelElement(grammarAccess.getMemberDefinitionRule()); + ( + lv_containment_0_0=Contains + { + newLeafNode(lv_containment_0_0, grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); } - setWithLastConsumed($current, "containment", true, "contains"); - } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getFieldRule()); + } + setWithLastConsumed($current, "containment", true, "contains"); + } + ) + ) + | + ( + ( + lv_crossReference_1_0=Refers + { + newLeafNode(lv_crossReference_1_0, grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getFieldRule()); + } + setWithLastConsumed($current, "crossReference", true, "refers"); + } + ) ) )? ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getMemberDefinitionRule()); + $current = createModelElement(grammarAccess.getFieldRule()); } } { - newCompositeNode(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + newCompositeNode(grammarAccess.getFieldAccess().getTypeSymbolCrossReference_1_0()); } ruleQualifiedName { @@ -3363,17 +3782,17 @@ ruleMemberDefinition returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getMemberDefinitionAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getFieldAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); } - lv_multiplicity_2_0=ruleMultiplicity + lv_multiplicity_3_0=ruleMultiplicity { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getMemberDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getFieldRule()); } set( $current, "multiplicity", - lv_multiplicity_2_0, + lv_multiplicity_3_0, "org.eclipse.viatra.solver.language.SolverLanguage.Multiplicity"); afterParserOrEnumRuleCall(); } @@ -3381,36 +3800,36 @@ ruleMemberDefinition returns [EObject current=null] )? ( ( - lv_name_3_0=RULE_ID + lv_name_4_0=RULE_ID { - newLeafNode(lv_name_3_0, grammarAccess.getMemberDefinitionAccess().getNameIDTerminalRuleCall_3_0()); + newLeafNode(lv_name_4_0, grammarAccess.getFieldAccess().getNameIDTerminalRuleCall_3_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getMemberDefinitionRule()); + $current = createModelElement(grammarAccess.getFieldRule()); } setWithLastConsumed( $current, "name", - lv_name_3_0, + lv_name_4_0, "org.eclipse.xtext.common.Terminals.ID"); } ) ) ( - otherlv_4=Opposite + otherlv_5=Opposite { - newLeafNode(otherlv_4, grammarAccess.getMemberDefinitionAccess().getOppositeKeyword_4_0()); + newLeafNode(otherlv_5, grammarAccess.getFieldAccess().getOppositeKeyword_4_0()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getMemberDefinitionRule()); + $current = createModelElement(grammarAccess.getFieldRule()); } } { - newCompositeNode(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementCrossReference_4_1_0()); + newCompositeNode(grammarAccess.getFieldAccess().getOppositeSymbolCrossReference_4_1_0()); } ruleQualifiedName { @@ -3420,9 +3839,9 @@ ruleMemberDefinition returns [EObject current=null] ) )? ( - otherlv_6=Semicolon + otherlv_7=Semicolon { - newLeafNode(otherlv_6, grammarAccess.getMemberDefinitionAccess().getSemicolonKeyword_5()); + newLeafNode(otherlv_7, grammarAccess.getFieldAccess().getSemicolonKeyword_5()); } )? ) @@ -3445,11 +3864,11 @@ ruleMultiplicity returns [EObject current=null] }: ( { - newCompositeNode(grammarAccess.getMultiplicityAccess().getManyMultiplicityParserRuleCall_0()); + newCompositeNode(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0()); } - this_ManyMultiplicity_0=ruleManyMultiplicity + this_UnboundedMultiplicity_0=ruleUnboundedMultiplicity { - $current = $this_ManyMultiplicity_0.current; + $current = $this_UnboundedMultiplicity_0.current; afterParserOrEnumRuleCall(); } | @@ -3473,15 +3892,15 @@ ruleMultiplicity returns [EObject current=null] ) ; -// Entry rule entryRuleManyMultiplicity -entryRuleManyMultiplicity returns [EObject current=null]: - { newCompositeNode(grammarAccess.getManyMultiplicityRule()); } - iv_ruleManyMultiplicity=ruleManyMultiplicity - { $current=$iv_ruleManyMultiplicity.current; } +// Entry rule entryRuleUnboundedMultiplicity +entryRuleUnboundedMultiplicity returns [EObject current=null]: + { newCompositeNode(grammarAccess.getUnboundedMultiplicityRule()); } + iv_ruleUnboundedMultiplicity=ruleUnboundedMultiplicity + { $current=$iv_ruleUnboundedMultiplicity.current; } EOF; -// Rule ManyMultiplicity -ruleManyMultiplicity returns [EObject current=null] +// Rule UnboundedMultiplicity +ruleUnboundedMultiplicity returns [EObject current=null] @init { enterRule(); } @@ -3492,17 +3911,17 @@ ruleManyMultiplicity returns [EObject current=null] ( { $current = forceCreateModelElement( - grammarAccess.getManyMultiplicityAccess().getManyMultiplicityAction_0(), + grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction_0(), $current); } ) otherlv_1=LeftSquareBracket { - newLeafNode(otherlv_1, grammarAccess.getManyMultiplicityAccess().getLeftSquareBracketKeyword_1()); + newLeafNode(otherlv_1, grammarAccess.getUnboundedMultiplicityAccess().getLeftSquareBracketKeyword_1()); } otherlv_2=RightSquareBracket { - newLeafNode(otherlv_2, grammarAccess.getManyMultiplicityAccess().getRightSquareBracketKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getUnboundedMultiplicityAccess().getRightSquareBracketKeyword_2()); } ) ; @@ -3530,17 +3949,17 @@ ruleExactMultiplicity returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getExactMultiplicityAccess().getValueUpperMultiplictyParserRuleCall_1_0()); } - lv_multiplicity_1_0=ruleUpperMultiplicty + lv_value_1_0=ruleUpperMultiplicty { if ($current==null) { $current = createModelElementForParent(grammarAccess.getExactMultiplicityRule()); } set( $current, - "multiplicity", - lv_multiplicity_1_0, + "value", + lv_value_1_0, "org.eclipse.viatra.solver.language.SolverLanguage.UpperMultiplicty"); afterParserOrEnumRuleCall(); } @@ -3591,9 +4010,9 @@ ruleBoundedMultiplicity returns [EObject current=null] } ) ) - otherlv_2=FullStopFullStop + otherlv_2=Comma { - newLeafNode(otherlv_2, grammarAccess.getBoundedMultiplicityAccess().getFullStopFullStopKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getBoundedMultiplicityAccess().getCommaKeyword_2()); } ( ( @@ -3621,15 +4040,156 @@ ruleBoundedMultiplicity returns [EObject current=null] ) ; -// Entry rule entryRuleScopeDefinition -entryRuleScopeDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getScopeDefinitionRule()); } - iv_ruleScopeDefinition=ruleScopeDefinition - { $current=$iv_ruleScopeDefinition.current; } +// Entry rule entryRuleEnumDeclaration +entryRuleEnumDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getEnumDeclarationRule()); } + iv_ruleEnumDeclaration=ruleEnumDeclaration + { $current=$iv_ruleEnumDeclaration.current; } + EOF; + +// Rule EnumDeclaration +ruleEnumDeclaration returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + otherlv_0=Enum + { + newLeafNode(otherlv_0, grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); + } + ( + ( + lv_name_1_0=RULE_ID + { + newLeafNode(lv_name_1_0, grammarAccess.getEnumDeclarationAccess().getNameIDTerminalRuleCall_1_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getEnumDeclarationRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + } + ) + ) + ( + ( + otherlv_2=LeftCurlyBracket + { + newLeafNode(otherlv_2, grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); + } + ( + ( + ( + { + newCompositeNode(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0()); + } + lv_literals_3_0=ruleEnumLiteral + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getEnumDeclarationRule()); + } + add( + $current, + "literals", + lv_literals_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.EnumLiteral"); + afterParserOrEnumRuleCall(); + } + ) + ) + ( + ( + otherlv_4=Comma + { + newLeafNode(otherlv_4, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); + } + )? + ( + ( + { + newCompositeNode(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0()); + } + lv_literals_5_0=ruleEnumLiteral + { + if ($current==null) { + $current = createModelElementForParent(grammarAccess.getEnumDeclarationRule()); + } + add( + $current, + "literals", + lv_literals_5_0, + "org.eclipse.viatra.solver.language.SolverLanguage.EnumLiteral"); + afterParserOrEnumRuleCall(); + } + ) + ) + )* + )? + otherlv_6=RightCurlyBracket + { + newLeafNode(otherlv_6, grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); + } + ) + | + this_FULL_STOP_7=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_7, grammarAccess.getEnumDeclarationAccess().getFULL_STOPTerminalRuleCall_2_1()); + } + ) + ) +; + +// Entry rule entryRuleEnumLiteral +entryRuleEnumLiteral returns [EObject current=null]: + { newCompositeNode(grammarAccess.getEnumLiteralRule()); } + iv_ruleEnumLiteral=ruleEnumLiteral + { $current=$iv_ruleEnumLiteral.current; } + EOF; + +// Rule EnumLiteral +ruleEnumLiteral returns [EObject current=null] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + ( + lv_name_0_0=RULE_ID + { + newLeafNode(lv_name_0_0, grammarAccess.getEnumLiteralAccess().getNameIDTerminalRuleCall_0()); + } + { + if ($current==null) { + $current = createModelElement(grammarAccess.getEnumLiteralRule()); + } + setWithLastConsumed( + $current, + "name", + lv_name_0_0, + "org.eclipse.xtext.common.Terminals.ID"); + } + ) + ) +; + +// Entry rule entryRuleScopeDeclaration +entryRuleScopeDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getScopeDeclarationRule()); } + iv_ruleScopeDeclaration=ruleScopeDeclaration + { $current=$iv_ruleScopeDeclaration.current; } EOF; -// Rule ScopeDefinition -ruleScopeDefinition returns [EObject current=null] +// Rule ScopeDeclaration +ruleScopeDeclaration returns [EObject current=null] @init { enterRule(); } @@ -3638,43 +4198,43 @@ ruleScopeDefinition returns [EObject current=null] }: ( { - newCompositeNode(grammarAccess.getScopeDefinitionAccess().getExactScopeDefinitionParserRuleCall_0()); + newCompositeNode(grammarAccess.getScopeDeclarationAccess().getExactScopeParserRuleCall_0()); } - this_ExactScopeDefinition_0=ruleExactScopeDefinition + this_ExactScope_0=ruleExactScope { - $current = $this_ExactScopeDefinition_0.current; + $current = $this_ExactScope_0.current; afterParserOrEnumRuleCall(); } | { - newCompositeNode(grammarAccess.getScopeDefinitionAccess().getBoundedScopeDefinitionParserRuleCall_1()); + newCompositeNode(grammarAccess.getScopeDeclarationAccess().getBoundedScopeParserRuleCall_1()); } - this_BoundedScopeDefinition_1=ruleBoundedScopeDefinition + this_BoundedScope_1=ruleBoundedScope { - $current = $this_BoundedScopeDefinition_1.current; + $current = $this_BoundedScope_1.current; afterParserOrEnumRuleCall(); } | { - newCompositeNode(grammarAccess.getScopeDefinitionAccess().getLowerBoundedScopeDefinitionParserRuleCall_2()); + newCompositeNode(grammarAccess.getScopeDeclarationAccess().getLowerBoundedScopeParserRuleCall_2()); } - this_LowerBoundedScopeDefinition_2=ruleLowerBoundedScopeDefinition + this_LowerBoundedScope_2=ruleLowerBoundedScope { - $current = $this_LowerBoundedScopeDefinition_2.current; + $current = $this_LowerBoundedScope_2.current; afterParserOrEnumRuleCall(); } ) ; -// Entry rule entryRuleExactScopeDefinition -entryRuleExactScopeDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getExactScopeDefinitionRule()); } - iv_ruleExactScopeDefinition=ruleExactScopeDefinition - { $current=$iv_ruleExactScopeDefinition.current; } +// Entry rule entryRuleExactScope +entryRuleExactScope returns [EObject current=null]: + { newCompositeNode(grammarAccess.getExactScopeRule()); } + iv_ruleExactScope=ruleExactScope + { $current=$iv_ruleExactScope.current; } EOF; -// Rule ExactScopeDefinition -ruleExactScopeDefinition returns [EObject current=null] +// Rule ExactScope +ruleExactScope returns [EObject current=null] @init { enterRule(); } @@ -3684,17 +4244,17 @@ ruleExactScopeDefinition returns [EObject current=null] ( otherlv_0=Scope { - newLeafNode(otherlv_0, grammarAccess.getExactScopeDefinitionAccess().getScopeKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getExactScopeAccess().getScopeKeyword_0()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getExactScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getExactScopeRule()); } } { - newCompositeNode(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + newCompositeNode(grammarAccess.getExactScopeAccess().getTypeSymbolCrossReference_1_0()); } ruleQualifiedName { @@ -3704,38 +4264,42 @@ ruleExactScopeDefinition returns [EObject current=null] ) otherlv_2=EqualsSignEqualsSign { - newLeafNode(otherlv_2, grammarAccess.getExactScopeDefinitionAccess().getEqualsSignEqualsSignKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getExactScopeAccess().getEqualsSignEqualsSignKeyword_2()); } ( ( - lv_exactScope_3_0=RULE_INT + lv_size_3_0=RULE_INT { - newLeafNode(lv_exactScope_3_0, grammarAccess.getExactScopeDefinitionAccess().getExactScopeINTTerminalRuleCall_3_0()); + newLeafNode(lv_size_3_0, grammarAccess.getExactScopeAccess().getSizeINTTerminalRuleCall_3_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getExactScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getExactScopeRule()); } setWithLastConsumed( $current, - "exactScope", - lv_exactScope_3_0, + "size", + lv_size_3_0, "org.eclipse.xtext.common.Terminals.INT"); } ) ) + this_FULL_STOP_4=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_4, grammarAccess.getExactScopeAccess().getFULL_STOPTerminalRuleCall_4()); + } ) ; -// Entry rule entryRuleBoundedScopeDefinition -entryRuleBoundedScopeDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getBoundedScopeDefinitionRule()); } - iv_ruleBoundedScopeDefinition=ruleBoundedScopeDefinition - { $current=$iv_ruleBoundedScopeDefinition.current; } +// Entry rule entryRuleBoundedScope +entryRuleBoundedScope returns [EObject current=null]: + { newCompositeNode(grammarAccess.getBoundedScopeRule()); } + iv_ruleBoundedScope=ruleBoundedScope + { $current=$iv_ruleBoundedScope.current; } EOF; -// Rule BoundedScopeDefinition -ruleBoundedScopeDefinition returns [EObject current=null] +// Rule BoundedScope +ruleBoundedScope returns [EObject current=null] @init { enterRule(); } @@ -3745,7 +4309,7 @@ ruleBoundedScopeDefinition returns [EObject current=null] ( otherlv_0=Scope { - newLeafNode(otherlv_0, grammarAccess.getBoundedScopeDefinitionAccess().getScopeKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getBoundedScopeAccess().getScopeKeyword_0()); } ( ( @@ -3754,11 +4318,11 @@ ruleBoundedScopeDefinition returns [EObject current=null] ( lv_lowerBound_1_0=RULE_INT { - newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); + newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getBoundedScopeRule()); } setWithLastConsumed( $current, @@ -3770,18 +4334,18 @@ ruleBoundedScopeDefinition returns [EObject current=null] ) otherlv_2=LessThanSignEqualsSign { - newLeafNode(otherlv_2, grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); + newLeafNode(otherlv_2, grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); } )? ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getBoundedScopeRule()); } } { - newCompositeNode(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_1_0()); + newCompositeNode(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_0_1_0()); } ruleQualifiedName { @@ -3791,17 +4355,17 @@ ruleBoundedScopeDefinition returns [EObject current=null] ) otherlv_4=LessThanSignEqualsSign { - newLeafNode(otherlv_4, grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_2()); + newLeafNode(otherlv_4, grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_2()); } ( ( lv_upperBound_5_0=RULE_INT { - newLeafNode(lv_upperBound_5_0, grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); + newLeafNode(lv_upperBound_5_0, grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getBoundedScopeRule()); } setWithLastConsumed( $current, @@ -3818,11 +4382,11 @@ ruleBoundedScopeDefinition returns [EObject current=null] ( lv_upperBound_6_0=RULE_INT { - newLeafNode(lv_upperBound_6_0, grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); + newLeafNode(lv_upperBound_6_0, grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getBoundedScopeRule()); } setWithLastConsumed( $current, @@ -3834,17 +4398,17 @@ ruleBoundedScopeDefinition returns [EObject current=null] ) otherlv_7=GreaterThanSignEqualsSign { - newLeafNode(otherlv_7, grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); + newLeafNode(otherlv_7, grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getBoundedScopeRule()); } } { - newCompositeNode(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_2_0()); + newCompositeNode(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_1_2_0()); } ruleQualifiedName { @@ -3855,17 +4419,17 @@ ruleBoundedScopeDefinition returns [EObject current=null] ( otherlv_9=GreaterThanSignEqualsSign { - newLeafNode(otherlv_9, grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); + newLeafNode(otherlv_9, grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); } ( ( lv_lowerBound_10_0=RULE_INT { - newLeafNode(lv_lowerBound_10_0, grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); + newLeafNode(lv_lowerBound_10_0, grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getBoundedScopeRule()); } setWithLastConsumed( $current, @@ -3878,18 +4442,22 @@ ruleBoundedScopeDefinition returns [EObject current=null] )? ) ) + this_FULL_STOP_11=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_11, grammarAccess.getBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); + } ) ; -// Entry rule entryRuleLowerBoundedScopeDefinition -entryRuleLowerBoundedScopeDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionRule()); } - iv_ruleLowerBoundedScopeDefinition=ruleLowerBoundedScopeDefinition - { $current=$iv_ruleLowerBoundedScopeDefinition.current; } +// Entry rule entryRuleLowerBoundedScope +entryRuleLowerBoundedScope returns [EObject current=null]: + { newCompositeNode(grammarAccess.getLowerBoundedScopeRule()); } + iv_ruleLowerBoundedScope=ruleLowerBoundedScope + { $current=$iv_ruleLowerBoundedScope.current; } EOF; -// Rule LowerBoundedScopeDefinition -ruleLowerBoundedScopeDefinition returns [EObject current=null] +// Rule LowerBoundedScope +ruleLowerBoundedScope returns [EObject current=null] @init { enterRule(); } @@ -3899,7 +4467,7 @@ ruleLowerBoundedScopeDefinition returns [EObject current=null] ( otherlv_0=Scope { - newLeafNode(otherlv_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getScopeKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getLowerBoundedScopeAccess().getScopeKeyword_0()); } ( ( @@ -3907,11 +4475,11 @@ ruleLowerBoundedScopeDefinition returns [EObject current=null] ( lv_lowerBound_1_0=RULE_INT { - newLeafNode(lv_lowerBound_1_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); + newLeafNode(lv_lowerBound_1_0, grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getLowerBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getLowerBoundedScopeRule()); } setWithLastConsumed( $current, @@ -3923,17 +4491,17 @@ ruleLowerBoundedScopeDefinition returns [EObject current=null] ) otherlv_2=LessThanSignEqualsSign { - newLeafNode(otherlv_2, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_1()); + newLeafNode(otherlv_2, grammarAccess.getLowerBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_1()); } ( ( { if ($current==null) { - $current = createModelElement(grammarAccess.getLowerBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getLowerBoundedScopeRule()); } } { - newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_2_0()); + newCompositeNode(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_0_2_0()); } ruleQualifiedName { @@ -3948,11 +4516,11 @@ ruleLowerBoundedScopeDefinition returns [EObject current=null] ( { if ($current==null) { - $current = createModelElement(grammarAccess.getLowerBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getLowerBoundedScopeRule()); } } { - newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_0_0()); + newCompositeNode(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_1_0_0()); } ruleQualifiedName { @@ -3962,17 +4530,17 @@ ruleLowerBoundedScopeDefinition returns [EObject current=null] ) otherlv_5=GreaterThanSignEqualsSign { - newLeafNode(otherlv_5, grammarAccess.getLowerBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); + newLeafNode(otherlv_5, grammarAccess.getLowerBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); } ( ( lv_lowerBound_6_0=RULE_INT { - newLeafNode(lv_lowerBound_6_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); + newLeafNode(lv_lowerBound_6_0, grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); } { if ($current==null) { - $current = createModelElement(grammarAccess.getLowerBoundedScopeDefinitionRule()); + $current = createModelElement(grammarAccess.getLowerBoundedScopeRule()); } setWithLastConsumed( $current, @@ -3984,18 +4552,22 @@ ruleLowerBoundedScopeDefinition returns [EObject current=null] ) ) ) + this_FULL_STOP_7=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_7, grammarAccess.getLowerBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); + } ) ; -// Entry rule entryRuleObjectiveDefinition -entryRuleObjectiveDefinition returns [EObject current=null]: - { newCompositeNode(grammarAccess.getObjectiveDefinitionRule()); } - iv_ruleObjectiveDefinition=ruleObjectiveDefinition - { $current=$iv_ruleObjectiveDefinition.current; } +// Entry rule entryRuleObjectiveDeclaration +entryRuleObjectiveDeclaration returns [EObject current=null]: + { newCompositeNode(grammarAccess.getObjectiveDeclarationRule()); } + iv_ruleObjectiveDeclaration=ruleObjectiveDeclaration + { $current=$iv_ruleObjectiveDeclaration.current; } EOF; -// Rule ObjectiveDefinition -ruleObjectiveDefinition returns [EObject current=null] +// Rule ObjectiveDeclaration +ruleObjectiveDeclaration returns [EObject current=null] @init { enterRule(); } @@ -4006,12 +4578,12 @@ ruleObjectiveDefinition returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0()); + newCompositeNode(grammarAccess.getObjectiveDeclarationAccess().getKindObjectiveKindEnumRuleCall_0_0()); } lv_kind_0_0=ruleObjectiveKind { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getObjectiveDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getObjectiveDeclarationRule()); } set( $current, @@ -4025,12 +4597,12 @@ ruleObjectiveDefinition returns [EObject current=null] ( ( { - newCompositeNode(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getObjectiveDeclarationAccess().getObjectiveExpressionParserRuleCall_1_0()); } lv_objective_1_0=ruleExpression { if ($current==null) { - $current = createModelElementForParent(grammarAccess.getObjectiveDefinitionRule()); + $current = createModelElementForParent(grammarAccess.getObjectiveDeclarationRule()); } set( $current, @@ -4041,6 +4613,10 @@ ruleObjectiveDefinition returns [EObject current=null] } ) ) + this_FULL_STOP_2=RULE_FULL_STOP + { + newLeafNode(this_FULL_STOP_2, grammarAccess.getObjectiveDeclarationAccess().getFULL_STOPTerminalRuleCall_2()); + } ) ; @@ -4105,26 +4681,64 @@ ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] { newLeafNode(this_INT_0, grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); } - ( - kw=FullStop - { - $current.merge(kw); - newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1_0()); - } - this_INT_2=RULE_INT - { - $current.merge(this_INT_2); - } - { - newLeafNode(this_INT_2, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1()); - } - )? + kw=FullStop + { + $current.merge(kw); + newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1()); + } + this_INT_2=RULE_INT + { + $current.merge(this_INT_2); + } + { + newLeafNode(this_INT_2, grammarAccess.getRealAccess().getINTTerminalRuleCall_2()); + } ) ; finally { myHiddenTokenState.restore(); } +// Entry rule entryRuleQualifiedNameSegment +entryRuleQualifiedNameSegment returns [String current=null]: + { newCompositeNode(grammarAccess.getQualifiedNameSegmentRule()); } + iv_ruleQualifiedNameSegment=ruleQualifiedNameSegment + { $current=$iv_ruleQualifiedNameSegment.current.getText(); } + EOF; + +// Rule QualifiedNameSegment +ruleQualifiedNameSegment returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] +@init { + enterRule(); +} +@after { + leaveRule(); +}: + ( + this_ID_0=RULE_ID + { + $current.merge(this_ID_0); + } + { + newLeafNode(this_ID_0, grammarAccess.getQualifiedNameSegmentAccess().getIDTerminalRuleCall_0()); + } + | + this_QUOTED_ID_1=RULE_QUOTED_ID + { + $current.merge(this_QUOTED_ID_1); + } + { + newLeafNode(this_QUOTED_ID_1, grammarAccess.getQualifiedNameSegmentAccess().getQUOTED_IDTerminalRuleCall_1()); + } + | + kw=Object + { + $current.merge(kw); + newLeafNode(kw, grammarAccess.getQualifiedNameSegmentAccess().getObjectKeyword_2()); + } + ) +; + // Entry rule entryRuleQualifiedName entryRuleQualifiedName returns [String current=null]@init { HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); @@ -4147,45 +4761,41 @@ ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleT leaveRule(); }: ( + { + newCompositeNode(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_0()); + } + this_QualifiedNameSegment_0=ruleQualifiedNameSegment + { + $current.merge(this_QualifiedNameSegment_0); + } + { + afterParserOrEnumRuleCall(); + } ( - this_ID_0=RULE_ID + kw=ColonColon { - $current.merge(this_ID_0); + $current.merge(kw); + newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_0()); } { - newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_0()); + newCompositeNode(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_1_1()); } - ( - kw=FullStop - { - $current.merge(kw); - newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_0_1_0()); - } - this_ID_2=RULE_ID - { - $current.merge(this_ID_2); - } - { - newLeafNode(this_ID_2, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_1_1()); - } - )* - ) - | - this_QUOTED_ID_3=RULE_QUOTED_ID - { - $current.merge(this_QUOTED_ID_3); - } - { - newLeafNode(this_QUOTED_ID_3, grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_1()); - } + this_QualifiedNameSegment_2=ruleQualifiedNameSegment + { + $current.merge(this_QualifiedNameSegment_2); + } + { + afterParserOrEnumRuleCall(); + } + )* ) ; finally { myHiddenTokenState.restore(); } -// Rule ImplicationOperator -ruleImplicationOperator returns [Enumerator current=null] +// Rule AttributeKind +ruleAttributeKind returns [Enumerator current=null] @init { enterRule(); } @@ -4193,11 +4803,37 @@ ruleImplicationOperator returns [Enumerator current=null] leaveRule(); }: ( - enumLiteral_0=EqualsSignGreaterThanSign - { - $current = grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration()); - } + ( + enumLiteral_0=Functional + { + $current = grammarAccess.getAttributeKindAccess().getFUNCTIONALEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getAttributeKindAccess().getFUNCTIONALEnumLiteralDeclaration_0()); + } + ) + | + ( + enumLiteral_1=Error + { + $current = grammarAccess.getAttributeKindAccess().getERROREnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getAttributeKindAccess().getERROREnumLiteralDeclaration_1()); + } + ) + | + ( + enumLiteral_2=Root + { + $current = grammarAccess.getAttributeKindAccess().getROOTEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getAttributeKindAccess().getROOTEnumLiteralDeclaration_2()); + } + ) + | + ( + enumLiteral_3=Containment + { + $current = grammarAccess.getAttributeKindAccess().getCONTAINMENTEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getAttributeKindAccess().getCONTAINMENTEnumLiteralDeclaration_3()); + } + ) ) ; @@ -4213,16 +4849,16 @@ ruleComparisonOperator returns [Enumerator current=null] ( enumLiteral_0=EqualsSignEqualsSign { - $current = grammarAccess.getComparisonOperatorAccess().getEQEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getComparisonOperatorAccess().getEQEnumLiteralDeclaration_0()); + $current = grammarAccess.getComparisonOperatorAccess().getEQUALSEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getComparisonOperatorAccess().getEQUALSEnumLiteralDeclaration_0()); } ) | ( enumLiteral_1=ExclamationMarkEqualsSign { - $current = grammarAccess.getComparisonOperatorAccess().getNOT_EQEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getComparisonOperatorAccess().getNOT_EQEnumLiteralDeclaration_1()); + $current = grammarAccess.getComparisonOperatorAccess().getNOT_EQUALSEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getComparisonOperatorAccess().getNOT_EQUALSEnumLiteralDeclaration_1()); } ) | @@ -4237,8 +4873,8 @@ ruleComparisonOperator returns [Enumerator current=null] ( enumLiteral_3=LessThanSignEqualsSign { - $current = grammarAccess.getComparisonOperatorAccess().getLESS_EQEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_3, grammarAccess.getComparisonOperatorAccess().getLESS_EQEnumLiteralDeclaration_3()); + $current = grammarAccess.getComparisonOperatorAccess().getLESS_EQUALSEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getComparisonOperatorAccess().getLESS_EQUALSEnumLiteralDeclaration_3()); } ) | @@ -4253,8 +4889,8 @@ ruleComparisonOperator returns [Enumerator current=null] ( enumLiteral_5=GreaterThanSignEqualsSign { - $current = grammarAccess.getComparisonOperatorAccess().getGREATER_EQEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_5, grammarAccess.getComparisonOperatorAccess().getGREATER_EQEnumLiteralDeclaration_5()); + $current = grammarAccess.getComparisonOperatorAccess().getGREATER_EQUALSEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_5, grammarAccess.getComparisonOperatorAccess().getGREATER_EQUALSEnumLiteralDeclaration_5()); } ) | @@ -4280,16 +4916,16 @@ ruleAdditiveBinaryOperator returns [Enumerator current=null] ( enumLiteral_0=PlusSign { - $current = grammarAccess.getAdditiveBinaryOperatorAccess().getADDEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getAdditiveBinaryOperatorAccess().getADDEnumLiteralDeclaration_0()); + $current = grammarAccess.getAdditiveBinaryOperatorAccess().getPLUSEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getAdditiveBinaryOperatorAccess().getPLUSEnumLiteralDeclaration_0()); } ) | ( enumLiteral_1=HyphenMinus { - $current = grammarAccess.getAdditiveBinaryOperatorAccess().getSUBEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getAdditiveBinaryOperatorAccess().getSUBEnumLiteralDeclaration_1()); + $current = grammarAccess.getAdditiveBinaryOperatorAccess().getMINUSEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getAdditiveBinaryOperatorAccess().getMINUSEnumLiteralDeclaration_1()); } ) ) @@ -4307,16 +4943,16 @@ ruleMultiplicativeBinaryOperator returns [Enumerator current=null] ( enumLiteral_0=Asterisk { - $current = grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULEnumLiteralDeclaration_0()); + $current = grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULTIPLYEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULTIPLYEnumLiteralDeclaration_0()); } ) | ( enumLiteral_1=Solidus { - $current = grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVEnumLiteralDeclaration_1()); + $current = grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVIDEEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVIDEEnumLiteralDeclaration_1()); } ) ) @@ -4339,8 +4975,8 @@ ruleExponentialOp returns [Enumerator current=null] ) ; -// Rule UnaryOp -ruleUnaryOp returns [Enumerator current=null] +// Rule UnaryOperator +ruleUnaryOperator returns [Enumerator current=null] @init { enterRule(); } @@ -4351,83 +4987,32 @@ ruleUnaryOp returns [Enumerator current=null] ( enumLiteral_0=ExclamationMark { - $current = grammarAccess.getUnaryOpAccess().getNEGEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getUnaryOpAccess().getNEGEnumLiteralDeclaration_0()); + $current = grammarAccess.getUnaryOperatorAccess().getNOTEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getUnaryOperatorAccess().getNOTEnumLiteralDeclaration_0()); } ) | ( enumLiteral_1=PlusSign { - $current = grammarAccess.getUnaryOpAccess().getPLUSEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getUnaryOpAccess().getPLUSEnumLiteralDeclaration_1()); + $current = grammarAccess.getUnaryOperatorAccess().getPLUSEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getUnaryOperatorAccess().getPLUSEnumLiteralDeclaration_1()); } ) | ( enumLiteral_2=HyphenMinus { - $current = grammarAccess.getUnaryOpAccess().getMINUSEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_2, grammarAccess.getUnaryOpAccess().getMINUSEnumLiteralDeclaration_2()); - } - ) - | - ( - enumLiteral_3=May - { - $current = grammarAccess.getUnaryOpAccess().getMAYEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_3, grammarAccess.getUnaryOpAccess().getMAYEnumLiteralDeclaration_3()); - } - ) - | - ( - enumLiteral_4=Must - { - $current = grammarAccess.getUnaryOpAccess().getMUSTEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_4, grammarAccess.getUnaryOpAccess().getMUSTEnumLiteralDeclaration_4()); - } - ) - | - ( - enumLiteral_5=Current - { - $current = grammarAccess.getUnaryOpAccess().getCURRENTEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_5, grammarAccess.getUnaryOpAccess().getCURRENTEnumLiteralDeclaration_5()); - } - ) - ) -; - -// Rule Quantifier -ruleQuantifier returns [Enumerator current=null] -@init { - enterRule(); -} -@after { - leaveRule(); -}: - ( - ( - enumLiteral_0=Exists - { - $current = grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0()); - } - ) - | - ( - enumLiteral_1=Forall - { - $current = grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1()); + $current = grammarAccess.getUnaryOperatorAccess().getMINUSEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getUnaryOperatorAccess().getMINUSEnumLiteralDeclaration_2()); } ) | ( - enumLiteral_2=Count + enumLiteral_3=QuestionMark { - $current = grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_2, grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2()); + $current = grammarAccess.getUnaryOperatorAccess().getMAYBEEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getUnaryOperatorAccess().getMAYBEEnumLiteralDeclaration_3()); } ) ) @@ -4488,16 +5073,16 @@ ruleObjectiveKind returns [Enumerator current=null] ( enumLiteral_0=Minimize { - $current = grammarAccess.getObjectiveKindAccess().getMINIMIZEEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getObjectiveKindAccess().getMINIMIZEEnumLiteralDeclaration_0()); + $current = grammarAccess.getObjectiveKindAccess().getMINIMIZATIONEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getObjectiveKindAccess().getMINIMIZATIONEnumLiteralDeclaration_0()); } ) | ( enumLiteral_1=Maximize { - $current = grammarAccess.getObjectiveKindAccess().getMAXIMIZEEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getObjectiveKindAccess().getMAXIMIZEEnumLiteralDeclaration_1()); + $current = grammarAccess.getObjectiveKindAccess().getMAXIMIZATIONEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getObjectiveKindAccess().getMAXIMIZATIONEnumLiteralDeclaration_1()); } ) ) diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java index 3e25746c..37223f5c 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.java @@ -22,79 +22,84 @@ import java.util.ArrayList; @SuppressWarnings("all") public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { public static final String[] tokenNames = new String[] { - "", "", "", "", "Functional", "Abstract", "Contains", "Datatype", "Maximize", "Minimize", "Opposite", "Current", "Default", "Extends", "Unknown", "Exists", "Extern", "Forall", "Class", "Count", "Empty", "Error", "False", "Scope", "Else", "Must", "Then", "True", "FullStopFullStopFullStop", "Inf", "Let", "May", "ExclamationMarkEqualsSign", "HyphenMinusGreaterThanSign", "FullStopFullStop", "ColonHyphenMinus", "LessThanSignEqualsSign", "EqualsSignEqualsSign", "EqualsSignGreaterThanSign", "GreaterThanSignEqualsSign", "As", "If", "In", "ExclamationMark", "LeftParenthesis", "RightParenthesis", "Asterisk", "PlusSign", "Comma", "HyphenMinus", "FullStop", "Solidus", "Colon", "Semicolon", "LessThanSign", "EqualsSign", "GreaterThanSign", "LeftSquareBracket", "RightSquareBracket", "CircumflexAccent", "LeftCurlyBracket", "VerticalLine", "RightCurlyBracket", "RULE_STRING", "RULE_QUOTED_ID", "RULE_SL_COMMENT", "RULE_TRANSITIVE_CLOSURE", "RULE_REFLEXIVE_TRANSITIVE_CLOSURE", "RULE_FULL_STOP", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER" + "", "", "", "", "Containment", "Functional", "Abstract", "Contains", "Datatype", "Maximize", "Minimize", "Opposite", "Default", "Extends", "Problem", "Unknown", "Extern", "Import", "Object", "Refers", "Class", "Count", "Empty", "Error", "False", "Scope", "Else", "Enum", "Root", "Then", "True", "FullStopFullStopFullStop", "Inf", "Let", "ExclamationMarkEqualsSign", "HyphenMinusGreaterThanSign", "ColonHyphenMinus", "ColonColon", "ColonEqualsSign", "LessThanSignEqualsSign", "EqualsSignEqualsSign", "EqualsSignGreaterThanSign", "GreaterThanSignEqualsSign", "As", "If", "In", "ExclamationMark", "LeftParenthesis", "RightParenthesis", "Asterisk", "PlusSign", "Comma", "HyphenMinus", "FullStop", "Solidus", "Colon", "Semicolon", "LessThanSign", "EqualsSign", "GreaterThanSign", "QuestionMark", "LeftSquareBracket", "RightSquareBracket", "CircumflexAccent", "LeftCurlyBracket", "VerticalLine", "RightCurlyBracket", "Tilde", "RULE_STRING", "RULE_QUOTED_ID", "RULE_SL_COMMENT", "RULE_TRANSITIVE_CLOSURE", "RULE_REFLEXIVE_TRANSITIVE_CLOSURE", "RULE_FULL_STOP", "RULE_ID", "RULE_INT", "RULE_ML_COMMENT", "RULE_WS", "RULE_ANY_OTHER" }; - public static final int EqualsSignGreaterThanSign=38; - public static final int True=27; - public static final int Count=19; - public static final int False=22; - public static final int Must=25; - public static final int FullStopFullStopFullStop=28; - public static final int LessThanSign=54; - public static final int Datatype=7; - public static final int LeftParenthesis=44; - public static final int Unknown=14; - public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67; - public static final int FullStopFullStop=34; - public static final int Then=26; + public static final int Enum=27; + public static final int Import=17; + public static final int EqualsSignGreaterThanSign=41; + public static final int True=30; + public static final int Count=21; + public static final int False=24; + public static final int FullStopFullStopFullStop=31; + public static final int LessThanSign=57; + public static final int Datatype=8; + public static final int LeftParenthesis=47; + public static final int Unknown=15; + public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=72; + public static final int Then=29; public static final int Extends=13; - public static final int Forall=17; - public static final int RightSquareBracket=58; - public static final int ExclamationMark=43; - public static final int Opposite=10; - public static final int GreaterThanSign=56; - public static final int RULE_ID=69; - public static final int RULE_QUOTED_ID=64; - public static final int RightParenthesis=45; - public static final int GreaterThanSignEqualsSign=39; - public static final int Functional=4; - public static final int EqualsSignEqualsSign=37; - public static final int VerticalLine=61; - public static final int PlusSign=47; - public static final int RULE_INT=70; - public static final int Contains=6; - public static final int RULE_ML_COMMENT=71; - public static final int RULE_TRANSITIVE_CLOSURE=66; - public static final int Class=18; - public static final int LeftSquareBracket=57; - public static final int RULE_FULL_STOP=68; - public static final int Current=11; - public static final int If=41; - public static final int Inf=29; - public static final int May=31; - public static final int In=42; - public static final int RULE_STRING=63; + public static final int RightSquareBracket=62; + public static final int ExclamationMark=46; + public static final int Opposite=11; + public static final int GreaterThanSign=59; + public static final int Root=28; + public static final int RULE_ID=74; + public static final int RULE_QUOTED_ID=69; + public static final int RightParenthesis=48; + public static final int ColonEqualsSign=38; + public static final int GreaterThanSignEqualsSign=42; + public static final int Functional=5; + public static final int ColonColon=37; + public static final int EqualsSignEqualsSign=40; + public static final int VerticalLine=65; + public static final int PlusSign=50; + public static final int RULE_INT=75; + public static final int Contains=7; + public static final int RULE_ML_COMMENT=76; + public static final int RULE_TRANSITIVE_CLOSURE=71; + public static final int Problem=14; + public static final int Object=18; + public static final int Class=20; + public static final int LeftSquareBracket=61; + public static final int RULE_FULL_STOP=73; + public static final int If=44; + public static final int Refers=19; + public static final int Inf=32; + public static final int In=45; + public static final int RULE_STRING=68; public static final int Extern=16; - public static final int RULE_SL_COMMENT=65; - public static final int Comma=48; - public static final int EqualsSign=55; - public static final int Empty=20; - public static final int As=40; - public static final int HyphenMinus=49; - public static final int Maximize=8; - public static final int LessThanSignEqualsSign=36; - public static final int Solidus=51; - public static final int Colon=52; - public static final int RightCurlyBracket=62; + public static final int RULE_SL_COMMENT=70; + public static final int Comma=51; + public static final int EqualsSign=58; + public static final int Empty=22; + public static final int As=43; + public static final int HyphenMinus=52; + public static final int Maximize=9; + public static final int LessThanSignEqualsSign=39; + public static final int Solidus=54; + public static final int Colon=55; + public static final int RightCurlyBracket=66; public static final int EOF=-1; - public static final int Asterisk=46; - public static final int FullStop=50; - public static final int RULE_WS=72; - public static final int Abstract=5; - public static final int Minimize=9; - public static final int LeftCurlyBracket=60; - public static final int Error=21; - public static final int RULE_ANY_OTHER=73; + public static final int Asterisk=49; + public static final int Containment=4; + public static final int FullStop=53; + public static final int RULE_WS=77; + public static final int Abstract=6; + public static final int Minimize=10; + public static final int LeftCurlyBracket=64; + public static final int Error=23; + public static final int Tilde=67; + public static final int RULE_ANY_OTHER=78; public static final int Default=12; - public static final int ColonHyphenMinus=35; - public static final int CircumflexAccent=59; - public static final int Semicolon=53; - public static final int Scope=23; - public static final int Exists=15; - public static final int Else=24; - public static final int Let=30; - public static final int ExclamationMarkEqualsSign=32; - public static final int HyphenMinusGreaterThanSign=33; + public static final int ColonHyphenMinus=36; + public static final int CircumflexAccent=63; + public static final int Semicolon=56; + public static final int Scope=25; + public static final int QuestionMark=60; + public static final int Else=26; + public static final int Let=33; + public static final int ExclamationMarkEqualsSign=34; + public static final int HyphenMinusGreaterThanSign=35; // delegates // delegators @@ -172,57 +177,171 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleProblem" - // InternalSolverLanguageParser.g:65:1: ruleProblem returns [EObject current=null] : ( (lv_statements_0_0= ruleStatement ) )* ; + // InternalSolverLanguageParser.g:65:1: ruleProblem returns [EObject current=null] : ( (otherlv_0= Problem ( (lv_name_1_0= ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP )? ( (lv_imports_3_0= ruleImport ) )* ( (lv_statements_4_0= ruleStatement ) )* ) ; public final EObject ruleProblem() throws RecognitionException { EObject current = null; - EObject lv_statements_0_0 = null; + Token otherlv_0=null; + Token this_FULL_STOP_2=null; + AntlrDatatypeRuleToken lv_name_1_0 = null; + + EObject lv_imports_3_0 = null; + + EObject lv_statements_4_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:71:2: ( ( (lv_statements_0_0= ruleStatement ) )* ) - // InternalSolverLanguageParser.g:72:2: ( (lv_statements_0_0= ruleStatement ) )* + // InternalSolverLanguageParser.g:71:2: ( ( (otherlv_0= Problem ( (lv_name_1_0= ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP )? ( (lv_imports_3_0= ruleImport ) )* ( (lv_statements_4_0= ruleStatement ) )* ) ) + // InternalSolverLanguageParser.g:72:2: ( (otherlv_0= Problem ( (lv_name_1_0= ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP )? ( (lv_imports_3_0= ruleImport ) )* ( (lv_statements_4_0= ruleStatement ) )* ) { - // InternalSolverLanguageParser.g:72:2: ( (lv_statements_0_0= ruleStatement ) )* - loop1: + // InternalSolverLanguageParser.g:72:2: ( (otherlv_0= Problem ( (lv_name_1_0= ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP )? ( (lv_imports_3_0= ruleImport ) )* ( (lv_statements_4_0= ruleStatement ) )* ) + // InternalSolverLanguageParser.g:73:3: (otherlv_0= Problem ( (lv_name_1_0= ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP )? ( (lv_imports_3_0= ruleImport ) )* ( (lv_statements_4_0= ruleStatement ) )* + { + // InternalSolverLanguageParser.g:73:3: (otherlv_0= Problem ( (lv_name_1_0= ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP )? + int alt1=2; + int LA1_0 = input.LA(1); + + if ( (LA1_0==Problem) ) { + alt1=1; + } + switch (alt1) { + case 1 : + // InternalSolverLanguageParser.g:74:4: otherlv_0= Problem ( (lv_name_1_0= ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP + { + otherlv_0=(Token)match(input,Problem,FOLLOW_3); + + newLeafNode(otherlv_0, grammarAccess.getProblemAccess().getProblemKeyword_0_0()); + + // InternalSolverLanguageParser.g:78:4: ( (lv_name_1_0= ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:79:5: (lv_name_1_0= ruleQualifiedName ) + { + // InternalSolverLanguageParser.g:79:5: (lv_name_1_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:80:6: lv_name_1_0= ruleQualifiedName + { + + newCompositeNode(grammarAccess.getProblemAccess().getNameQualifiedNameParserRuleCall_0_1_0()); + + pushFollow(FOLLOW_4); + lv_name_1_0=ruleQualifiedName(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getProblemRule()); + } + set( + current, + "name", + lv_name_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + + + } + + + } + + this_FULL_STOP_2=(Token)match(input,RULE_FULL_STOP,FOLLOW_5); + + newLeafNode(this_FULL_STOP_2, grammarAccess.getProblemAccess().getFULL_STOPTerminalRuleCall_0_2()); + + + } + break; + + } + + // InternalSolverLanguageParser.g:102:3: ( (lv_imports_3_0= ruleImport ) )* + loop2: do { - int alt1=2; - int LA1_0 = input.LA(1); + int alt2=2; + int LA2_0 = input.LA(1); - if ( ((LA1_0>=Functional && LA1_0<=Abstract)||(LA1_0>=Maximize && LA1_0<=Minimize)||(LA1_0>=Current && LA1_0<=Default)||(LA1_0>=Unknown && LA1_0<=False)||LA1_0==Scope||LA1_0==Must||LA1_0==True||(LA1_0>=Inf && LA1_0<=May)||LA1_0==If||(LA1_0>=ExclamationMark && LA1_0<=LeftParenthesis)||LA1_0==PlusSign||LA1_0==HyphenMinus||LA1_0==LeftSquareBracket||(LA1_0>=RULE_STRING && LA1_0<=RULE_QUOTED_ID)||(LA1_0>=RULE_ID && LA1_0<=RULE_INT)) ) { - alt1=1; + if ( (LA2_0==Import) ) { + alt2=1; } - switch (alt1) { + switch (alt2) { case 1 : - // InternalSolverLanguageParser.g:73:3: (lv_statements_0_0= ruleStatement ) + // InternalSolverLanguageParser.g:103:4: (lv_imports_3_0= ruleImport ) { - // InternalSolverLanguageParser.g:73:3: (lv_statements_0_0= ruleStatement ) - // InternalSolverLanguageParser.g:74:4: lv_statements_0_0= ruleStatement + // InternalSolverLanguageParser.g:103:4: (lv_imports_3_0= ruleImport ) + // InternalSolverLanguageParser.g:104:5: lv_imports_3_0= ruleImport { - newCompositeNode(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_0()); - - pushFollow(FOLLOW_3); - lv_statements_0_0=ruleStatement(); + newCompositeNode(grammarAccess.getProblemAccess().getImportsImportParserRuleCall_1_0()); + + pushFollow(FOLLOW_5); + lv_imports_3_0=ruleImport(); state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getProblemRule()); - } - add( - current, - "statements", - lv_statements_0_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Statement"); - afterParserOrEnumRuleCall(); - + if (current==null) { + current = createModelElementForParent(grammarAccess.getProblemRule()); + } + add( + current, + "imports", + lv_imports_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Import"); + afterParserOrEnumRuleCall(); + + + } + + + } + break; + + default : + break loop2; + } + } while (true); + + // InternalSolverLanguageParser.g:121:3: ( (lv_statements_4_0= ruleStatement ) )* + loop3: + do { + int alt3=2; + int LA3_0 = input.LA(1); + + if ( ((LA3_0>=Containment && LA3_0<=Abstract)||(LA3_0>=Maximize && LA3_0<=Minimize)||LA3_0==Default||(LA3_0>=Unknown && LA3_0<=Extern)||LA3_0==Object||(LA3_0>=Class && LA3_0<=Scope)||(LA3_0>=Enum && LA3_0<=Root)||LA3_0==True||(LA3_0>=Inf && LA3_0<=Let)||LA3_0==If||(LA3_0>=ExclamationMark && LA3_0<=LeftParenthesis)||LA3_0==PlusSign||LA3_0==HyphenMinus||(LA3_0>=QuestionMark && LA3_0<=LeftSquareBracket)||(LA3_0>=Tilde && LA3_0<=RULE_QUOTED_ID)||(LA3_0>=RULE_ID && LA3_0<=RULE_INT)) ) { + alt3=1; + } + + + switch (alt3) { + case 1 : + // InternalSolverLanguageParser.g:122:4: (lv_statements_4_0= ruleStatement ) + { + // InternalSolverLanguageParser.g:122:4: (lv_statements_4_0= ruleStatement ) + // InternalSolverLanguageParser.g:123:5: lv_statements_4_0= ruleStatement + { + + newCompositeNode(grammarAccess.getProblemAccess().getStatementsStatementParserRuleCall_2_0()); + + pushFollow(FOLLOW_6); + lv_statements_4_0=ruleStatement(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getProblemRule()); + } + add( + current, + "statements", + lv_statements_4_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Statement"); + afterParserOrEnumRuleCall(); + } @@ -231,11 +350,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - break loop1; + break loop3; } } while (true); + } + + } @@ -255,7 +377,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleStatement" - // InternalSolverLanguageParser.g:94:1: entryRuleStatement returns [EObject current=null] : iv_ruleStatement= ruleStatement EOF ; + // InternalSolverLanguageParser.g:144:1: entryRuleStatement returns [EObject current=null] : iv_ruleStatement= ruleStatement EOF ; public final EObject entryRuleStatement() throws RecognitionException { EObject current = null; @@ -263,8 +385,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:94:50: (iv_ruleStatement= ruleStatement EOF ) - // InternalSolverLanguageParser.g:95:2: iv_ruleStatement= ruleStatement EOF + // InternalSolverLanguageParser.g:144:50: (iv_ruleStatement= ruleStatement EOF ) + // InternalSolverLanguageParser.g:145:2: iv_ruleStatement= ruleStatement EOF { newCompositeNode(grammarAccess.getStatementRule()); pushFollow(FOLLOW_1); @@ -291,276 +413,245 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleStatement" - // InternalSolverLanguageParser.g:101:1: ruleStatement returns [EObject current=null] : ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP ) ; + // InternalSolverLanguageParser.g:151:1: ruleStatement returns [EObject current=null] : (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPredicateDefintion_2= ruleUnnamedErrorPredicateDefintion | this_DefaultAssertion_3= ruleDefaultAssertion | this_FunctionDefinition_4= ruleFunctionDefinition | this_Attribute_5= ruleAttribute | this_ExternDeclaration_6= ruleExternDeclaration | this_ScopeDeclaration_7= ruleScopeDeclaration | this_ObjectiveDeclaration_8= ruleObjectiveDeclaration | this_ClassDeclaration_9= ruleClassDeclaration | this_EnumDeclaration_10= ruleEnumDeclaration ) ; public final EObject ruleStatement() throws RecognitionException { EObject current = null; - Token this_FULL_STOP_12=null; EObject this_AssertionOrDefinition_0 = null; EObject this_PredicateDefinition_1 = null; - EObject this_UnnamedErrorPrediateDefinition_2 = null; - - EObject this_DefaultDefinition_3 = null; + EObject this_UnnamedErrorPredicateDefintion_2 = null; - EObject this_MetricDefinition_4 = null; + EObject this_DefaultAssertion_3 = null; - EObject this_ExternPredicateDefinition_5 = null; + EObject this_FunctionDefinition_4 = null; - EObject this_ExternMetricDefinition_6 = null; + EObject this_Attribute_5 = null; - EObject this_ExternAggregatorDefinition_7 = null; + EObject this_ExternDeclaration_6 = null; - EObject this_ExternDatatypeDefinition_8 = null; + EObject this_ScopeDeclaration_7 = null; - EObject this_ClassDefinition_9 = null; + EObject this_ObjectiveDeclaration_8 = null; - EObject this_ScopeDefinition_10 = null; + EObject this_ClassDeclaration_9 = null; - EObject this_ObjectiveDefinition_11 = null; + EObject this_EnumDeclaration_10 = null; enterRule(); try { - // InternalSolverLanguageParser.g:107:2: ( ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP ) ) - // InternalSolverLanguageParser.g:108:2: ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:157:2: ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPredicateDefintion_2= ruleUnnamedErrorPredicateDefintion | this_DefaultAssertion_3= ruleDefaultAssertion | this_FunctionDefinition_4= ruleFunctionDefinition | this_Attribute_5= ruleAttribute | this_ExternDeclaration_6= ruleExternDeclaration | this_ScopeDeclaration_7= ruleScopeDeclaration | this_ObjectiveDeclaration_8= ruleObjectiveDeclaration | this_ClassDeclaration_9= ruleClassDeclaration | this_EnumDeclaration_10= ruleEnumDeclaration ) ) + // InternalSolverLanguageParser.g:158:2: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPredicateDefintion_2= ruleUnnamedErrorPredicateDefintion | this_DefaultAssertion_3= ruleDefaultAssertion | this_FunctionDefinition_4= ruleFunctionDefinition | this_Attribute_5= ruleAttribute | this_ExternDeclaration_6= ruleExternDeclaration | this_ScopeDeclaration_7= ruleScopeDeclaration | this_ObjectiveDeclaration_8= ruleObjectiveDeclaration | this_ClassDeclaration_9= ruleClassDeclaration | this_EnumDeclaration_10= ruleEnumDeclaration ) { - // InternalSolverLanguageParser.g:108:2: ( (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP ) - // InternalSolverLanguageParser.g:109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) this_FULL_STOP_12= RULE_FULL_STOP - { - // InternalSolverLanguageParser.g:109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition ) - int alt2=12; - alt2 = dfa2.predict(input); - switch (alt2) { + // InternalSolverLanguageParser.g:158:2: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPredicateDefintion_2= ruleUnnamedErrorPredicateDefintion | this_DefaultAssertion_3= ruleDefaultAssertion | this_FunctionDefinition_4= ruleFunctionDefinition | this_Attribute_5= ruleAttribute | this_ExternDeclaration_6= ruleExternDeclaration | this_ScopeDeclaration_7= ruleScopeDeclaration | this_ObjectiveDeclaration_8= ruleObjectiveDeclaration | this_ClassDeclaration_9= ruleClassDeclaration | this_EnumDeclaration_10= ruleEnumDeclaration ) + int alt4=11; + alt4 = dfa4.predict(input); + switch (alt4) { case 1 : - // InternalSolverLanguageParser.g:110:4: this_AssertionOrDefinition_0= ruleAssertionOrDefinition + // InternalSolverLanguageParser.g:159:3: this_AssertionOrDefinition_0= ruleAssertionOrDefinition { - newCompositeNode(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0_0()); - - pushFollow(FOLLOW_4); + newCompositeNode(grammarAccess.getStatementAccess().getAssertionOrDefinitionParserRuleCall_0()); + + pushFollow(FOLLOW_2); this_AssertionOrDefinition_0=ruleAssertionOrDefinition(); state._fsp--; - current = this_AssertionOrDefinition_0; - afterParserOrEnumRuleCall(); - + current = this_AssertionOrDefinition_0; + afterParserOrEnumRuleCall(); + } break; case 2 : - // InternalSolverLanguageParser.g:119:4: this_PredicateDefinition_1= rulePredicateDefinition + // InternalSolverLanguageParser.g:168:3: this_PredicateDefinition_1= rulePredicateDefinition { - newCompositeNode(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_0_1()); - - pushFollow(FOLLOW_4); + newCompositeNode(grammarAccess.getStatementAccess().getPredicateDefinitionParserRuleCall_1()); + + pushFollow(FOLLOW_2); this_PredicateDefinition_1=rulePredicateDefinition(); state._fsp--; - current = this_PredicateDefinition_1; - afterParserOrEnumRuleCall(); - + current = this_PredicateDefinition_1; + afterParserOrEnumRuleCall(); + } break; case 3 : - // InternalSolverLanguageParser.g:128:4: this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition + // InternalSolverLanguageParser.g:177:3: this_UnnamedErrorPredicateDefintion_2= ruleUnnamedErrorPredicateDefintion { - newCompositeNode(grammarAccess.getStatementAccess().getUnnamedErrorPrediateDefinitionParserRuleCall_0_2()); - - pushFollow(FOLLOW_4); - this_UnnamedErrorPrediateDefinition_2=ruleUnnamedErrorPrediateDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getUnnamedErrorPredicateDefintionParserRuleCall_2()); + + pushFollow(FOLLOW_2); + this_UnnamedErrorPredicateDefintion_2=ruleUnnamedErrorPredicateDefintion(); state._fsp--; - current = this_UnnamedErrorPrediateDefinition_2; - afterParserOrEnumRuleCall(); - + current = this_UnnamedErrorPredicateDefintion_2; + afterParserOrEnumRuleCall(); + } break; case 4 : - // InternalSolverLanguageParser.g:137:4: this_DefaultDefinition_3= ruleDefaultDefinition + // InternalSolverLanguageParser.g:186:3: this_DefaultAssertion_3= ruleDefaultAssertion { - newCompositeNode(grammarAccess.getStatementAccess().getDefaultDefinitionParserRuleCall_0_3()); - - pushFollow(FOLLOW_4); - this_DefaultDefinition_3=ruleDefaultDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getDefaultAssertionParserRuleCall_3()); + + pushFollow(FOLLOW_2); + this_DefaultAssertion_3=ruleDefaultAssertion(); state._fsp--; - current = this_DefaultDefinition_3; - afterParserOrEnumRuleCall(); - + current = this_DefaultAssertion_3; + afterParserOrEnumRuleCall(); + } break; case 5 : - // InternalSolverLanguageParser.g:146:4: this_MetricDefinition_4= ruleMetricDefinition + // InternalSolverLanguageParser.g:195:3: this_FunctionDefinition_4= ruleFunctionDefinition { - newCompositeNode(grammarAccess.getStatementAccess().getMetricDefinitionParserRuleCall_0_4()); - - pushFollow(FOLLOW_4); - this_MetricDefinition_4=ruleMetricDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getFunctionDefinitionParserRuleCall_4()); + + pushFollow(FOLLOW_2); + this_FunctionDefinition_4=ruleFunctionDefinition(); state._fsp--; - current = this_MetricDefinition_4; - afterParserOrEnumRuleCall(); - + current = this_FunctionDefinition_4; + afterParserOrEnumRuleCall(); + } break; case 6 : - // InternalSolverLanguageParser.g:155:4: this_ExternPredicateDefinition_5= ruleExternPredicateDefinition + // InternalSolverLanguageParser.g:204:3: this_Attribute_5= ruleAttribute { - newCompositeNode(grammarAccess.getStatementAccess().getExternPredicateDefinitionParserRuleCall_0_5()); - - pushFollow(FOLLOW_4); - this_ExternPredicateDefinition_5=ruleExternPredicateDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getAttributeParserRuleCall_5()); + + pushFollow(FOLLOW_2); + this_Attribute_5=ruleAttribute(); state._fsp--; - current = this_ExternPredicateDefinition_5; - afterParserOrEnumRuleCall(); - + current = this_Attribute_5; + afterParserOrEnumRuleCall(); + } break; case 7 : - // InternalSolverLanguageParser.g:164:4: this_ExternMetricDefinition_6= ruleExternMetricDefinition + // InternalSolverLanguageParser.g:213:3: this_ExternDeclaration_6= ruleExternDeclaration { - newCompositeNode(grammarAccess.getStatementAccess().getExternMetricDefinitionParserRuleCall_0_6()); - - pushFollow(FOLLOW_4); - this_ExternMetricDefinition_6=ruleExternMetricDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getExternDeclarationParserRuleCall_6()); + + pushFollow(FOLLOW_2); + this_ExternDeclaration_6=ruleExternDeclaration(); state._fsp--; - current = this_ExternMetricDefinition_6; - afterParserOrEnumRuleCall(); - + current = this_ExternDeclaration_6; + afterParserOrEnumRuleCall(); + } break; case 8 : - // InternalSolverLanguageParser.g:173:4: this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition + // InternalSolverLanguageParser.g:222:3: this_ScopeDeclaration_7= ruleScopeDeclaration { - newCompositeNode(grammarAccess.getStatementAccess().getExternAggregatorDefinitionParserRuleCall_0_7()); - - pushFollow(FOLLOW_4); - this_ExternAggregatorDefinition_7=ruleExternAggregatorDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getScopeDeclarationParserRuleCall_7()); + + pushFollow(FOLLOW_2); + this_ScopeDeclaration_7=ruleScopeDeclaration(); state._fsp--; - current = this_ExternAggregatorDefinition_7; - afterParserOrEnumRuleCall(); - + current = this_ScopeDeclaration_7; + afterParserOrEnumRuleCall(); + } break; case 9 : - // InternalSolverLanguageParser.g:182:4: this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition + // InternalSolverLanguageParser.g:231:3: this_ObjectiveDeclaration_8= ruleObjectiveDeclaration { - newCompositeNode(grammarAccess.getStatementAccess().getExternDatatypeDefinitionParserRuleCall_0_8()); - - pushFollow(FOLLOW_4); - this_ExternDatatypeDefinition_8=ruleExternDatatypeDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getObjectiveDeclarationParserRuleCall_8()); + + pushFollow(FOLLOW_2); + this_ObjectiveDeclaration_8=ruleObjectiveDeclaration(); state._fsp--; - current = this_ExternDatatypeDefinition_8; - afterParserOrEnumRuleCall(); - + current = this_ObjectiveDeclaration_8; + afterParserOrEnumRuleCall(); + } break; case 10 : - // InternalSolverLanguageParser.g:191:4: this_ClassDefinition_9= ruleClassDefinition + // InternalSolverLanguageParser.g:240:3: this_ClassDeclaration_9= ruleClassDeclaration { - newCompositeNode(grammarAccess.getStatementAccess().getClassDefinitionParserRuleCall_0_9()); - - pushFollow(FOLLOW_4); - this_ClassDefinition_9=ruleClassDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getClassDeclarationParserRuleCall_9()); + + pushFollow(FOLLOW_2); + this_ClassDeclaration_9=ruleClassDeclaration(); state._fsp--; - current = this_ClassDefinition_9; - afterParserOrEnumRuleCall(); - + current = this_ClassDeclaration_9; + afterParserOrEnumRuleCall(); + } break; case 11 : - // InternalSolverLanguageParser.g:200:4: this_ScopeDefinition_10= ruleScopeDefinition - { - - newCompositeNode(grammarAccess.getStatementAccess().getScopeDefinitionParserRuleCall_0_10()); - - pushFollow(FOLLOW_4); - this_ScopeDefinition_10=ruleScopeDefinition(); - - state._fsp--; - - - current = this_ScopeDefinition_10; - afterParserOrEnumRuleCall(); - - - } - break; - case 12 : - // InternalSolverLanguageParser.g:209:4: this_ObjectiveDefinition_11= ruleObjectiveDefinition + // InternalSolverLanguageParser.g:249:3: this_EnumDeclaration_10= ruleEnumDeclaration { - newCompositeNode(grammarAccess.getStatementAccess().getObjectiveDefinitionParserRuleCall_0_11()); - - pushFollow(FOLLOW_4); - this_ObjectiveDefinition_11=ruleObjectiveDefinition(); + newCompositeNode(grammarAccess.getStatementAccess().getEnumDeclarationParserRuleCall_10()); + + pushFollow(FOLLOW_2); + this_EnumDeclaration_10=ruleEnumDeclaration(); state._fsp--; - current = this_ObjectiveDefinition_11; - afterParserOrEnumRuleCall(); - + current = this_EnumDeclaration_10; + afterParserOrEnumRuleCall(); + } break; } - this_FULL_STOP_12=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); - - newLeafNode(this_FULL_STOP_12, grammarAccess.getStatementAccess().getFULL_STOPTerminalRuleCall_1()); - - - } - } @@ -580,25 +671,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleStatement" - // $ANTLR start "entryRuleAssertionOrDefinition" - // InternalSolverLanguageParser.g:226:1: entryRuleAssertionOrDefinition returns [EObject current=null] : iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF ; - public final EObject entryRuleAssertionOrDefinition() throws RecognitionException { + // $ANTLR start "entryRuleImport" + // InternalSolverLanguageParser.g:261:1: entryRuleImport returns [EObject current=null] : iv_ruleImport= ruleImport EOF ; + public final EObject entryRuleImport() throws RecognitionException { EObject current = null; - EObject iv_ruleAssertionOrDefinition = null; + EObject iv_ruleImport = null; try { - // InternalSolverLanguageParser.g:226:62: (iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF ) - // InternalSolverLanguageParser.g:227:2: iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF + // InternalSolverLanguageParser.g:261:47: (iv_ruleImport= ruleImport EOF ) + // InternalSolverLanguageParser.g:262:2: iv_ruleImport= ruleImport EOF { - newCompositeNode(grammarAccess.getAssertionOrDefinitionRule()); + newCompositeNode(grammarAccess.getImportRule()); pushFollow(FOLLOW_1); - iv_ruleAssertionOrDefinition=ruleAssertionOrDefinition(); + iv_ruleImport=ruleImport(); state._fsp--; - current =iv_ruleAssertionOrDefinition; + current =iv_ruleImport; match(input,EOF,FOLLOW_2); } @@ -613,118 +704,596 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleAssertionOrDefinition" + // $ANTLR end "entryRuleImport" - // $ANTLR start "ruleAssertionOrDefinition" - // InternalSolverLanguageParser.g:233:1: ruleAssertionOrDefinition returns [EObject current=null] : (this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? ) ; - public final EObject ruleAssertionOrDefinition() throws RecognitionException { + // $ANTLR start "ruleImport" + // InternalSolverLanguageParser.g:268:1: ruleImport returns [EObject current=null] : (this_UriImport_0= ruleUriImport | this_NamespaceImport_1= ruleNamespaceImport ) ; + public final EObject ruleImport() throws RecognitionException { EObject current = null; - Token otherlv_2=null; - Token otherlv_5=null; - Token otherlv_8=null; - EObject this_Expression_0 = null; - - EObject lv_range_3_0 = null; - - EObject lv_body_6_0 = null; + EObject this_UriImport_0 = null; - EObject lv_body_9_0 = null; + EObject this_NamespaceImport_1 = null; enterRule(); try { - // InternalSolverLanguageParser.g:239:2: ( (this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? ) ) - // InternalSolverLanguageParser.g:240:2: (this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? ) - { - // InternalSolverLanguageParser.g:240:2: (this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? ) - // InternalSolverLanguageParser.g:241:3: this_Expression_0= ruleExpression ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? + // InternalSolverLanguageParser.g:274:2: ( (this_UriImport_0= ruleUriImport | this_NamespaceImport_1= ruleNamespaceImport ) ) + // InternalSolverLanguageParser.g:275:2: (this_UriImport_0= ruleUriImport | this_NamespaceImport_1= ruleNamespaceImport ) { + // InternalSolverLanguageParser.g:275:2: (this_UriImport_0= ruleUriImport | this_NamespaceImport_1= ruleNamespaceImport ) + int alt5=2; + int LA5_0 = input.LA(1); - newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); - - pushFollow(FOLLOW_5); - this_Expression_0=ruleExpression(); - - state._fsp--; + if ( (LA5_0==Import) ) { + int LA5_1 = input.LA(2); + if ( (LA5_1==RULE_STRING) ) { + alt5=1; + } + else if ( (LA5_1==Object||LA5_1==RULE_QUOTED_ID||LA5_1==RULE_ID) ) { + alt5=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 5, 1, input); - current = this_Expression_0; - afterParserOrEnumRuleCall(); - - // InternalSolverLanguageParser.g:249:3: ( ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) )? - int alt3=4; - switch ( input.LA(1) ) { - case Colon: - { - alt3=1; - } - break; - case ColonHyphenMinus: - { - alt3=2; - } - break; - case EqualsSign: - { - alt3=3; - } - break; + throw nvae; + } } + else { + NoViableAltException nvae = + new NoViableAltException("", 5, 0, input); - switch (alt3) { + throw nvae; + } + switch (alt5) { case 1 : - // InternalSolverLanguageParser.g:250:4: ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) - { - // InternalSolverLanguageParser.g:250:4: ( () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:251:5: () otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:276:3: this_UriImport_0= ruleUriImport { - // InternalSolverLanguageParser.g:251:5: () - // InternalSolverLanguageParser.g:252:6: - { - - current = forceCreateModelElementAndSet( - grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0(), - current); - - } + newCompositeNode(grammarAccess.getImportAccess().getUriImportParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_UriImport_0=ruleUriImport(); - otherlv_2=(Token)match(input,Colon,FOLLOW_6); + state._fsp--; - newLeafNode(otherlv_2, grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1()); - - // InternalSolverLanguageParser.g:262:5: ( (lv_range_3_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:263:6: (lv_range_3_0= ruleExpression ) - { - // InternalSolverLanguageParser.g:263:6: (lv_range_3_0= ruleExpression ) - // InternalSolverLanguageParser.g:264:7: lv_range_3_0= ruleExpression - { - newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0()); - + current = this_UriImport_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:285:3: this_NamespaceImport_1= ruleNamespaceImport + { + + newCompositeNode(grammarAccess.getImportAccess().getNamespaceImportParserRuleCall_1()); + pushFollow(FOLLOW_2); - lv_range_3_0=ruleExpression(); + this_NamespaceImport_1=ruleNamespaceImport(); state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getAssertionOrDefinitionRule()); - } - set( - current, - "range", - lv_range_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); - afterParserOrEnumRuleCall(); - + current = this_NamespaceImport_1; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleImport" + + + // $ANTLR start "entryRuleUriImport" + // InternalSolverLanguageParser.g:297:1: entryRuleUriImport returns [EObject current=null] : iv_ruleUriImport= ruleUriImport EOF ; + public final EObject entryRuleUriImport() throws RecognitionException { + EObject current = null; + + EObject iv_ruleUriImport = null; + + + try { + // InternalSolverLanguageParser.g:297:50: (iv_ruleUriImport= ruleUriImport EOF ) + // InternalSolverLanguageParser.g:298:2: iv_ruleUriImport= ruleUriImport EOF + { + newCompositeNode(grammarAccess.getUriImportRule()); + pushFollow(FOLLOW_1); + iv_ruleUriImport=ruleUriImport(); + + state._fsp--; + + current =iv_ruleUriImport; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleUriImport" + + + // $ANTLR start "ruleUriImport" + // InternalSolverLanguageParser.g:304:1: ruleUriImport returns [EObject current=null] : (otherlv_0= Import ( (lv_uri_1_0= RULE_STRING ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ; + public final EObject ruleUriImport() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token lv_uri_1_0=null; + Token otherlv_2=null; + Token this_FULL_STOP_4=null; + AntlrDatatypeRuleToken lv_alias_3_0 = null; + + + + enterRule(); + + try { + // InternalSolverLanguageParser.g:310:2: ( (otherlv_0= Import ( (lv_uri_1_0= RULE_STRING ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:311:2: (otherlv_0= Import ( (lv_uri_1_0= RULE_STRING ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:311:2: (otherlv_0= Import ( (lv_uri_1_0= RULE_STRING ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:312:3: otherlv_0= Import ( (lv_uri_1_0= RULE_STRING ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP + { + otherlv_0=(Token)match(input,Import,FOLLOW_7); + + newLeafNode(otherlv_0, grammarAccess.getUriImportAccess().getImportKeyword_0()); + + // InternalSolverLanguageParser.g:316:3: ( (lv_uri_1_0= RULE_STRING ) ) + // InternalSolverLanguageParser.g:317:4: (lv_uri_1_0= RULE_STRING ) + { + // InternalSolverLanguageParser.g:317:4: (lv_uri_1_0= RULE_STRING ) + // InternalSolverLanguageParser.g:318:5: lv_uri_1_0= RULE_STRING + { + lv_uri_1_0=(Token)match(input,RULE_STRING,FOLLOW_8); + + newLeafNode(lv_uri_1_0, grammarAccess.getUriImportAccess().getUriSTRINGTerminalRuleCall_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getUriImportRule()); + } + setWithLastConsumed( + current, + "uri", + lv_uri_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.STRING"); + + + } + + + } + + // InternalSolverLanguageParser.g:334:3: (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:335:4: otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) + { + otherlv_2=(Token)match(input,As,FOLLOW_3); + + newLeafNode(otherlv_2, grammarAccess.getUriImportAccess().getAsKeyword_2_0()); + + // InternalSolverLanguageParser.g:339:4: ( (lv_alias_3_0= ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:340:5: (lv_alias_3_0= ruleQualifiedName ) + { + // InternalSolverLanguageParser.g:340:5: (lv_alias_3_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:341:6: lv_alias_3_0= ruleQualifiedName + { + + newCompositeNode(grammarAccess.getUriImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); + + pushFollow(FOLLOW_4); + lv_alias_3_0=ruleQualifiedName(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getUriImportRule()); + } + set( + current, + "alias", + lv_alias_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + this_FULL_STOP_4=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_4, grammarAccess.getUriImportAccess().getFULL_STOPTerminalRuleCall_3()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleUriImport" + + + // $ANTLR start "entryRuleNamespaceImport" + // InternalSolverLanguageParser.g:367:1: entryRuleNamespaceImport returns [EObject current=null] : iv_ruleNamespaceImport= ruleNamespaceImport EOF ; + public final EObject entryRuleNamespaceImport() throws RecognitionException { + EObject current = null; + + EObject iv_ruleNamespaceImport = null; + + + try { + // InternalSolverLanguageParser.g:367:56: (iv_ruleNamespaceImport= ruleNamespaceImport EOF ) + // InternalSolverLanguageParser.g:368:2: iv_ruleNamespaceImport= ruleNamespaceImport EOF + { + newCompositeNode(grammarAccess.getNamespaceImportRule()); + pushFollow(FOLLOW_1); + iv_ruleNamespaceImport=ruleNamespaceImport(); + + state._fsp--; + + current =iv_ruleNamespaceImport; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleNamespaceImport" + + + // $ANTLR start "ruleNamespaceImport" + // InternalSolverLanguageParser.g:374:1: ruleNamespaceImport returns [EObject current=null] : (otherlv_0= Import ( (lv_importedNamespace_1_0= ruleQualifiedName ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ; + public final EObject ruleNamespaceImport() throws RecognitionException { + EObject current = null; + + Token otherlv_0=null; + Token otherlv_2=null; + Token this_FULL_STOP_4=null; + AntlrDatatypeRuleToken lv_importedNamespace_1_0 = null; + + AntlrDatatypeRuleToken lv_alias_3_0 = null; + + + + enterRule(); + + try { + // InternalSolverLanguageParser.g:380:2: ( (otherlv_0= Import ( (lv_importedNamespace_1_0= ruleQualifiedName ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:381:2: (otherlv_0= Import ( (lv_importedNamespace_1_0= ruleQualifiedName ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:381:2: (otherlv_0= Import ( (lv_importedNamespace_1_0= ruleQualifiedName ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:382:3: otherlv_0= Import ( (lv_importedNamespace_1_0= ruleQualifiedName ) ) (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) this_FULL_STOP_4= RULE_FULL_STOP + { + otherlv_0=(Token)match(input,Import,FOLLOW_3); + + newLeafNode(otherlv_0, grammarAccess.getNamespaceImportAccess().getImportKeyword_0()); + + // InternalSolverLanguageParser.g:386:3: ( (lv_importedNamespace_1_0= ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:387:4: (lv_importedNamespace_1_0= ruleQualifiedName ) + { + // InternalSolverLanguageParser.g:387:4: (lv_importedNamespace_1_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:388:5: lv_importedNamespace_1_0= ruleQualifiedName + { + + newCompositeNode(grammarAccess.getNamespaceImportAccess().getImportedNamespaceQualifiedNameParserRuleCall_1_0()); + + pushFollow(FOLLOW_8); + lv_importedNamespace_1_0=ruleQualifiedName(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getNamespaceImportRule()); + } + set( + current, + "importedNamespace", + lv_importedNamespace_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalSolverLanguageParser.g:405:3: (otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:406:4: otherlv_2= As ( (lv_alias_3_0= ruleQualifiedName ) ) + { + otherlv_2=(Token)match(input,As,FOLLOW_3); + + newLeafNode(otherlv_2, grammarAccess.getNamespaceImportAccess().getAsKeyword_2_0()); + + // InternalSolverLanguageParser.g:410:4: ( (lv_alias_3_0= ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:411:5: (lv_alias_3_0= ruleQualifiedName ) + { + // InternalSolverLanguageParser.g:411:5: (lv_alias_3_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:412:6: lv_alias_3_0= ruleQualifiedName + { + + newCompositeNode(grammarAccess.getNamespaceImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0()); + + pushFollow(FOLLOW_4); + lv_alias_3_0=ruleQualifiedName(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getNamespaceImportRule()); + } + set( + current, + "alias", + lv_alias_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + + this_FULL_STOP_4=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_4, grammarAccess.getNamespaceImportAccess().getFULL_STOPTerminalRuleCall_3()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleNamespaceImport" + + + // $ANTLR start "entryRuleAssertionOrDefinition" + // InternalSolverLanguageParser.g:438:1: entryRuleAssertionOrDefinition returns [EObject current=null] : iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF ; + public final EObject entryRuleAssertionOrDefinition() throws RecognitionException { + EObject current = null; + + EObject iv_ruleAssertionOrDefinition = null; + + + try { + // InternalSolverLanguageParser.g:438:62: (iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF ) + // InternalSolverLanguageParser.g:439:2: iv_ruleAssertionOrDefinition= ruleAssertionOrDefinition EOF + { + newCompositeNode(grammarAccess.getAssertionOrDefinitionRule()); + pushFollow(FOLLOW_1); + iv_ruleAssertionOrDefinition=ruleAssertionOrDefinition(); + + state._fsp--; + + current =iv_ruleAssertionOrDefinition; + match(input,EOF,FOLLOW_2); + + } + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleAssertionOrDefinition" + + + // $ANTLR start "ruleAssertionOrDefinition" + // InternalSolverLanguageParser.g:445:1: ruleAssertionOrDefinition returns [EObject current=null] : (this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) this_FULL_STOP_10= RULE_FULL_STOP ) ; + public final EObject ruleAssertionOrDefinition() throws RecognitionException { + EObject current = null; + + Token otherlv_2=null; + Token otherlv_5=null; + Token otherlv_8=null; + Token this_FULL_STOP_10=null; + EObject this_Expression_0 = null; + + EObject lv_range_3_0 = null; + + EObject lv_body_6_0 = null; + + EObject lv_body_9_0 = null; + + + + enterRule(); + + try { + // InternalSolverLanguageParser.g:451:2: ( (this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) this_FULL_STOP_10= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:452:2: (this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) this_FULL_STOP_10= RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:452:2: (this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) this_FULL_STOP_10= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:453:3: this_Expression_0= ruleExpression ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) this_FULL_STOP_10= RULE_FULL_STOP + { + + newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getExpressionParserRuleCall_0()); + + pushFollow(FOLLOW_9); + this_Expression_0=ruleExpression(); + + state._fsp--; + + + current = this_Expression_0; + afterParserOrEnumRuleCall(); + + // InternalSolverLanguageParser.g:461:3: ( ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) | ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) | ( () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) ) ) + int alt7=3; + switch ( input.LA(1) ) { + case Colon: + case RULE_FULL_STOP: + { + alt7=1; + } + break; + case ColonHyphenMinus: + { + alt7=2; + } + break; + case ColonEqualsSign: + { + alt7=3; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 7, 0, input); + + throw nvae; + } + + switch (alt7) { + case 1 : + // InternalSolverLanguageParser.g:462:4: ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) + { + // InternalSolverLanguageParser.g:462:4: ( () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? ) + // InternalSolverLanguageParser.g:463:5: () (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? + { + // InternalSolverLanguageParser.g:463:5: () + // InternalSolverLanguageParser.g:464:6: + { + + current = forceCreateModelElementAndSet( + grammarAccess.getAssertionOrDefinitionAccess().getAssertionExpressionAction_1_0_0(), + current); + + + } + + // InternalSolverLanguageParser.g:470:5: (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? + int alt6=2; + int LA6_0 = input.LA(1); + + if ( (LA6_0==Colon) ) { + alt6=1; } + switch (alt6) { + case 1 : + // InternalSolverLanguageParser.g:471:6: otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) + { + otherlv_2=(Token)match(input,Colon,FOLLOW_10); + + newLeafNode(otherlv_2, grammarAccess.getAssertionOrDefinitionAccess().getColonKeyword_1_0_1_0()); + + // InternalSolverLanguageParser.g:475:6: ( (lv_range_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:476:7: (lv_range_3_0= ruleExpression ) + { + // InternalSolverLanguageParser.g:476:7: (lv_range_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:477:8: lv_range_3_0= ruleExpression + { + + newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_1_1_0()); + + pushFollow(FOLLOW_4); + lv_range_3_0=ruleExpression(); + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getAssertionOrDefinitionRule()); + } + set( + current, + "range", + lv_range_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; } @@ -735,13 +1304,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:283:4: ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:497:4: ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) { - // InternalSolverLanguageParser.g:283:4: ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:284:5: () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:497:4: ( () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:498:5: () otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) { - // InternalSolverLanguageParser.g:284:5: () - // InternalSolverLanguageParser.g:285:6: + // InternalSolverLanguageParser.g:498:5: () + // InternalSolverLanguageParser.g:499:6: { current = forceCreateModelElementAndSet( @@ -751,20 +1320,20 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_5=(Token)match(input,ColonHyphenMinus,FOLLOW_6); + otherlv_5=(Token)match(input,ColonHyphenMinus,FOLLOW_10); newLeafNode(otherlv_5, grammarAccess.getAssertionOrDefinitionAccess().getColonHyphenMinusKeyword_1_1_1()); - // InternalSolverLanguageParser.g:295:5: ( (lv_body_6_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:296:6: (lv_body_6_0= ruleExpression ) + // InternalSolverLanguageParser.g:509:5: ( (lv_body_6_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:510:6: (lv_body_6_0= ruleExpression ) { - // InternalSolverLanguageParser.g:296:6: (lv_body_6_0= ruleExpression ) - // InternalSolverLanguageParser.g:297:7: lv_body_6_0= ruleExpression + // InternalSolverLanguageParser.g:510:6: (lv_body_6_0= ruleExpression ) + // InternalSolverLanguageParser.g:511:7: lv_body_6_0= ruleExpression { newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_1_2_0()); - pushFollow(FOLLOW_2); + pushFollow(FOLLOW_4); lv_body_6_0=ruleExpression(); state._fsp--; @@ -793,36 +1362,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 3 : - // InternalSolverLanguageParser.g:316:4: ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:530:4: ( () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) ) { - // InternalSolverLanguageParser.g:316:4: ( () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:317:5: () otherlv_8= EqualsSign ( (lv_body_9_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:530:4: ( () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:531:5: () otherlv_8= ColonEqualsSign ( (lv_body_9_0= ruleExpression ) ) { - // InternalSolverLanguageParser.g:317:5: () - // InternalSolverLanguageParser.g:318:6: + // InternalSolverLanguageParser.g:531:5: () + // InternalSolverLanguageParser.g:532:6: { current = forceCreateModelElementAndSet( - grammarAccess.getAssertionOrDefinitionAccess().getMetricDefinitionHeadAction_1_2_0(), + grammarAccess.getAssertionOrDefinitionAccess().getFunctionDefinitionHeadAction_1_2_0(), current); } - otherlv_8=(Token)match(input,EqualsSign,FOLLOW_6); + otherlv_8=(Token)match(input,ColonEqualsSign,FOLLOW_10); - newLeafNode(otherlv_8, grammarAccess.getAssertionOrDefinitionAccess().getEqualsSignKeyword_1_2_1()); + newLeafNode(otherlv_8, grammarAccess.getAssertionOrDefinitionAccess().getColonEqualsSignKeyword_1_2_1()); - // InternalSolverLanguageParser.g:328:5: ( (lv_body_9_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:329:6: (lv_body_9_0= ruleExpression ) + // InternalSolverLanguageParser.g:542:5: ( (lv_body_9_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:543:6: (lv_body_9_0= ruleExpression ) { - // InternalSolverLanguageParser.g:329:6: (lv_body_9_0= ruleExpression ) - // InternalSolverLanguageParser.g:330:7: lv_body_9_0= ruleExpression + // InternalSolverLanguageParser.g:543:6: (lv_body_9_0= ruleExpression ) + // InternalSolverLanguageParser.g:544:7: lv_body_9_0= ruleExpression { newCompositeNode(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_2_2_0()); - pushFollow(FOLLOW_2); + pushFollow(FOLLOW_4); lv_body_9_0=ruleExpression(); state._fsp--; @@ -853,6 +1422,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_10=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_10, grammarAccess.getAssertionOrDefinitionAccess().getFULL_STOPTerminalRuleCall_2()); + } @@ -876,7 +1449,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRulePredicateDefinition" - // InternalSolverLanguageParser.g:353:1: entryRulePredicateDefinition returns [EObject current=null] : iv_rulePredicateDefinition= rulePredicateDefinition EOF ; + // InternalSolverLanguageParser.g:571:1: entryRulePredicateDefinition returns [EObject current=null] : iv_rulePredicateDefinition= rulePredicateDefinition EOF ; public final EObject entryRulePredicateDefinition() throws RecognitionException { EObject current = null; @@ -884,8 +1457,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:353:60: (iv_rulePredicateDefinition= rulePredicateDefinition EOF ) - // InternalSolverLanguageParser.g:354:2: iv_rulePredicateDefinition= rulePredicateDefinition EOF + // InternalSolverLanguageParser.g:571:60: (iv_rulePredicateDefinition= rulePredicateDefinition EOF ) + // InternalSolverLanguageParser.g:572:2: iv_rulePredicateDefinition= rulePredicateDefinition EOF { newCompositeNode(grammarAccess.getPredicateDefinitionRule()); pushFollow(FOLLOW_1); @@ -912,7 +1485,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "rulePredicateDefinition" - // InternalSolverLanguageParser.g:360:1: rulePredicateDefinition returns [EObject current=null] : ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) ; + // InternalSolverLanguageParser.g:578:1: rulePredicateDefinition returns [EObject current=null] : ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) this_FULL_STOP_7= RULE_FULL_STOP ) ; public final EObject rulePredicateDefinition() throws RecognitionException { EObject current = null; @@ -921,6 +1494,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { Token lv_error_2_0=null; Token lv_functional_3_0=null; Token otherlv_5=null; + Token this_FULL_STOP_7=null; EObject lv_head_4_0 = null; EObject lv_body_6_0 = null; @@ -930,42 +1504,42 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:366:2: ( ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) ) - // InternalSolverLanguageParser.g:367:2: ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:584:2: ( ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) this_FULL_STOP_7= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:585:2: ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) this_FULL_STOP_7= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:367:2: ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:368:3: ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:585:2: ( ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) this_FULL_STOP_7= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:586:3: ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) ( (lv_head_4_0= ruleCall ) ) otherlv_5= ColonHyphenMinus ( (lv_body_6_0= ruleExpression ) ) this_FULL_STOP_7= RULE_FULL_STOP { - // InternalSolverLanguageParser.g:368:3: ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) - int alt6=2; - int LA6_0 = input.LA(1); + // InternalSolverLanguageParser.g:586:3: ( ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) | ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) ) + int alt10=2; + int LA10_0 = input.LA(1); - if ( (LA6_0==Functional) ) { - alt6=1; + if ( (LA10_0==Functional) ) { + alt10=1; } - else if ( (LA6_0==Error) ) { - alt6=2; + else if ( (LA10_0==Error) ) { + alt10=2; } else { NoViableAltException nvae = - new NoViableAltException("", 6, 0, input); + new NoViableAltException("", 10, 0, input); throw nvae; } - switch (alt6) { + switch (alt10) { case 1 : - // InternalSolverLanguageParser.g:369:4: ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) + // InternalSolverLanguageParser.g:587:4: ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) { - // InternalSolverLanguageParser.g:369:4: ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) - // InternalSolverLanguageParser.g:370:5: ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? + // InternalSolverLanguageParser.g:587:4: ( ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? ) + // InternalSolverLanguageParser.g:588:5: ( (lv_functional_0_0= Functional ) ) ( (lv_error_1_0= Error ) )? { - // InternalSolverLanguageParser.g:370:5: ( (lv_functional_0_0= Functional ) ) - // InternalSolverLanguageParser.g:371:6: (lv_functional_0_0= Functional ) + // InternalSolverLanguageParser.g:588:5: ( (lv_functional_0_0= Functional ) ) + // InternalSolverLanguageParser.g:589:6: (lv_functional_0_0= Functional ) { - // InternalSolverLanguageParser.g:371:6: (lv_functional_0_0= Functional ) - // InternalSolverLanguageParser.g:372:7: lv_functional_0_0= Functional + // InternalSolverLanguageParser.g:589:6: (lv_functional_0_0= Functional ) + // InternalSolverLanguageParser.g:590:7: lv_functional_0_0= Functional { - lv_functional_0_0=(Token)match(input,Functional,FOLLOW_7); + lv_functional_0_0=(Token)match(input,Functional,FOLLOW_11); newLeafNode(lv_functional_0_0, grammarAccess.getPredicateDefinitionAccess().getFunctionalFunctionalKeyword_0_0_0_0()); @@ -981,21 +1555,21 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:384:5: ( (lv_error_1_0= Error ) )? - int alt4=2; - int LA4_0 = input.LA(1); + // InternalSolverLanguageParser.g:602:5: ( (lv_error_1_0= Error ) )? + int alt8=2; + int LA8_0 = input.LA(1); - if ( (LA4_0==Error) ) { - alt4=1; + if ( (LA8_0==Error) ) { + alt8=1; } - switch (alt4) { + switch (alt8) { case 1 : - // InternalSolverLanguageParser.g:385:6: (lv_error_1_0= Error ) + // InternalSolverLanguageParser.g:603:6: (lv_error_1_0= Error ) { - // InternalSolverLanguageParser.g:385:6: (lv_error_1_0= Error ) - // InternalSolverLanguageParser.g:386:7: lv_error_1_0= Error + // InternalSolverLanguageParser.g:603:6: (lv_error_1_0= Error ) + // InternalSolverLanguageParser.g:604:7: lv_error_1_0= Error { - lv_error_1_0=(Token)match(input,Error,FOLLOW_8); + lv_error_1_0=(Token)match(input,Error,FOLLOW_12); newLeafNode(lv_error_1_0, grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_0_1_0()); @@ -1021,18 +1595,18 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:400:4: ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) + // InternalSolverLanguageParser.g:618:4: ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) { - // InternalSolverLanguageParser.g:400:4: ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) - // InternalSolverLanguageParser.g:401:5: ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? + // InternalSolverLanguageParser.g:618:4: ( ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? ) + // InternalSolverLanguageParser.g:619:5: ( (lv_error_2_0= Error ) ) ( (lv_functional_3_0= Functional ) )? { - // InternalSolverLanguageParser.g:401:5: ( (lv_error_2_0= Error ) ) - // InternalSolverLanguageParser.g:402:6: (lv_error_2_0= Error ) + // InternalSolverLanguageParser.g:619:5: ( (lv_error_2_0= Error ) ) + // InternalSolverLanguageParser.g:620:6: (lv_error_2_0= Error ) { - // InternalSolverLanguageParser.g:402:6: (lv_error_2_0= Error ) - // InternalSolverLanguageParser.g:403:7: lv_error_2_0= Error + // InternalSolverLanguageParser.g:620:6: (lv_error_2_0= Error ) + // InternalSolverLanguageParser.g:621:7: lv_error_2_0= Error { - lv_error_2_0=(Token)match(input,Error,FOLLOW_9); + lv_error_2_0=(Token)match(input,Error,FOLLOW_13); newLeafNode(lv_error_2_0, grammarAccess.getPredicateDefinitionAccess().getErrorErrorKeyword_0_1_0_0()); @@ -1048,71 +1622,226 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:415:5: ( (lv_functional_3_0= Functional ) )? - int alt5=2; - int LA5_0 = input.LA(1); + // InternalSolverLanguageParser.g:633:5: ( (lv_functional_3_0= Functional ) )? + int alt9=2; + int LA9_0 = input.LA(1); - if ( (LA5_0==Functional) ) { - alt5=1; + if ( (LA9_0==Functional) ) { + alt9=1; } - switch (alt5) { + switch (alt9) { case 1 : - // InternalSolverLanguageParser.g:416:6: (lv_functional_3_0= Functional ) + // InternalSolverLanguageParser.g:634:6: (lv_functional_3_0= Functional ) { - // InternalSolverLanguageParser.g:416:6: (lv_functional_3_0= Functional ) - // InternalSolverLanguageParser.g:417:7: lv_functional_3_0= Functional + // InternalSolverLanguageParser.g:634:6: (lv_functional_3_0= Functional ) + // InternalSolverLanguageParser.g:635:7: lv_functional_3_0= Functional { - lv_functional_3_0=(Token)match(input,Functional,FOLLOW_8); + lv_functional_3_0=(Token)match(input,Functional,FOLLOW_12); + + newLeafNode(lv_functional_3_0, grammarAccess.getPredicateDefinitionAccess().getFunctionalFunctionalKeyword_0_1_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getPredicateDefinitionRule()); + } + setWithLastConsumed(current, "functional", true, "functional"); + + + } + + + } + break; + + } + + + } + + + } + break; + + } + + // InternalSolverLanguageParser.g:649:3: ( (lv_head_4_0= ruleCall ) ) + // InternalSolverLanguageParser.g:650:4: (lv_head_4_0= ruleCall ) + { + // InternalSolverLanguageParser.g:650:4: (lv_head_4_0= ruleCall ) + // InternalSolverLanguageParser.g:651:5: lv_head_4_0= ruleCall + { + + newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0()); + + pushFollow(FOLLOW_14); + lv_head_4_0=ruleCall(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule()); + } + set( + current, + "head", + lv_head_4_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Call"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_5=(Token)match(input,ColonHyphenMinus,FOLLOW_10); + + newLeafNode(otherlv_5, grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); + + // InternalSolverLanguageParser.g:672:3: ( (lv_body_6_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:673:4: (lv_body_6_0= ruleExpression ) + { + // InternalSolverLanguageParser.g:673:4: (lv_body_6_0= ruleExpression ) + // InternalSolverLanguageParser.g:674:5: lv_body_6_0= ruleExpression + { + + newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + + pushFollow(FOLLOW_4); + lv_body_6_0=ruleExpression(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule()); + } + set( + current, + "body", + lv_body_6_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + afterParserOrEnumRuleCall(); + + + } + + + } + + this_FULL_STOP_7=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_7, grammarAccess.getPredicateDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "rulePredicateDefinition" + + + // $ANTLR start "entryRuleUnnamedErrorPredicateDefintion" + // InternalSolverLanguageParser.g:699:1: entryRuleUnnamedErrorPredicateDefintion returns [EObject current=null] : iv_ruleUnnamedErrorPredicateDefintion= ruleUnnamedErrorPredicateDefintion EOF ; + public final EObject entryRuleUnnamedErrorPredicateDefintion() throws RecognitionException { + EObject current = null; + + EObject iv_ruleUnnamedErrorPredicateDefintion = null; + + + try { + // InternalSolverLanguageParser.g:699:71: (iv_ruleUnnamedErrorPredicateDefintion= ruleUnnamedErrorPredicateDefintion EOF ) + // InternalSolverLanguageParser.g:700:2: iv_ruleUnnamedErrorPredicateDefintion= ruleUnnamedErrorPredicateDefintion EOF + { + newCompositeNode(grammarAccess.getUnnamedErrorPredicateDefintionRule()); + pushFollow(FOLLOW_1); + iv_ruleUnnamedErrorPredicateDefintion=ruleUnnamedErrorPredicateDefintion(); + + state._fsp--; + + current =iv_ruleUnnamedErrorPredicateDefintion; + match(input,EOF,FOLLOW_2); - newLeafNode(lv_functional_3_0, grammarAccess.getPredicateDefinitionAccess().getFunctionalFunctionalKeyword_0_1_1_0()); - + } - if (current==null) { - current = createModelElement(grammarAccess.getPredicateDefinitionRule()); - } - setWithLastConsumed(current, "functional", true, "functional"); - + } - } + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleUnnamedErrorPredicateDefintion" - } - break; + // $ANTLR start "ruleUnnamedErrorPredicateDefintion" + // InternalSolverLanguageParser.g:706:1: ruleUnnamedErrorPredicateDefintion returns [EObject current=null] : (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ; + public final EObject ruleUnnamedErrorPredicateDefintion() throws RecognitionException { + EObject current = null; - } + Token otherlv_0=null; + Token otherlv_2=null; + Token this_FULL_STOP_4=null; + EObject lv_argumentList_1_0 = null; + EObject lv_body_3_0 = null; - } - } - break; + enterRule(); - } + try { + // InternalSolverLanguageParser.g:712:2: ( (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:713:2: (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:713:2: (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:714:3: otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP + { + otherlv_0=(Token)match(input,Error,FOLLOW_15); - // InternalSolverLanguageParser.g:431:3: ( (lv_head_4_0= ruleCall ) ) - // InternalSolverLanguageParser.g:432:4: (lv_head_4_0= ruleCall ) + newLeafNode(otherlv_0, grammarAccess.getUnnamedErrorPredicateDefintionAccess().getErrorKeyword_0()); + + // InternalSolverLanguageParser.g:718:3: ( (lv_argumentList_1_0= ruleArgumentList ) ) + // InternalSolverLanguageParser.g:719:4: (lv_argumentList_1_0= ruleArgumentList ) { - // InternalSolverLanguageParser.g:432:4: (lv_head_4_0= ruleCall ) - // InternalSolverLanguageParser.g:433:5: lv_head_4_0= ruleCall + // InternalSolverLanguageParser.g:719:4: (lv_argumentList_1_0= ruleArgumentList ) + // InternalSolverLanguageParser.g:720:5: lv_argumentList_1_0= ruleArgumentList { - newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getHeadCallParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListArgumentListParserRuleCall_1_0()); - pushFollow(FOLLOW_10); - lv_head_4_0=ruleCall(); + pushFollow(FOLLOW_14); + lv_argumentList_1_0=ruleArgumentList(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule()); + current = createModelElementForParent(grammarAccess.getUnnamedErrorPredicateDefintionRule()); } set( current, - "head", - lv_head_4_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Call"); + "argumentList", + lv_argumentList_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); afterParserOrEnumRuleCall(); @@ -1121,32 +1850,32 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_5=(Token)match(input,ColonHyphenMinus,FOLLOW_6); + otherlv_2=(Token)match(input,ColonHyphenMinus,FOLLOW_10); - newLeafNode(otherlv_5, grammarAccess.getPredicateDefinitionAccess().getColonHyphenMinusKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getUnnamedErrorPredicateDefintionAccess().getColonHyphenMinusKeyword_2()); - // InternalSolverLanguageParser.g:454:3: ( (lv_body_6_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:455:4: (lv_body_6_0= ruleExpression ) + // InternalSolverLanguageParser.g:741:3: ( (lv_body_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:742:4: (lv_body_3_0= ruleExpression ) { - // InternalSolverLanguageParser.g:455:4: (lv_body_6_0= ruleExpression ) - // InternalSolverLanguageParser.g:456:5: lv_body_6_0= ruleExpression + // InternalSolverLanguageParser.g:742:4: (lv_body_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:743:5: lv_body_3_0= ruleExpression { - newCompositeNode(grammarAccess.getPredicateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyExpressionParserRuleCall_3_0()); - pushFollow(FOLLOW_2); - lv_body_6_0=ruleExpression(); + pushFollow(FOLLOW_4); + lv_body_3_0=ruleExpression(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getPredicateDefinitionRule()); + current = createModelElementForParent(grammarAccess.getUnnamedErrorPredicateDefintionRule()); } set( current, "body", - lv_body_6_0, + lv_body_3_0, "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); afterParserOrEnumRuleCall(); @@ -1156,6 +1885,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_4=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_4, grammarAccess.getUnnamedErrorPredicateDefintionAccess().getFULL_STOPTerminalRuleCall_4()); + } @@ -1175,28 +1908,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "rulePredicateDefinition" + // $ANTLR end "ruleUnnamedErrorPredicateDefintion" - // $ANTLR start "entryRuleUnnamedErrorPrediateDefinition" - // InternalSolverLanguageParser.g:477:1: entryRuleUnnamedErrorPrediateDefinition returns [EObject current=null] : iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF ; - public final EObject entryRuleUnnamedErrorPrediateDefinition() throws RecognitionException { + // $ANTLR start "entryRuleDefaultAssertion" + // InternalSolverLanguageParser.g:768:1: entryRuleDefaultAssertion returns [EObject current=null] : iv_ruleDefaultAssertion= ruleDefaultAssertion EOF ; + public final EObject entryRuleDefaultAssertion() throws RecognitionException { EObject current = null; - EObject iv_ruleUnnamedErrorPrediateDefinition = null; + EObject iv_ruleDefaultAssertion = null; try { - // InternalSolverLanguageParser.g:477:71: (iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF ) - // InternalSolverLanguageParser.g:478:2: iv_ruleUnnamedErrorPrediateDefinition= ruleUnnamedErrorPrediateDefinition EOF + // InternalSolverLanguageParser.g:768:57: (iv_ruleDefaultAssertion= ruleDefaultAssertion EOF ) + // InternalSolverLanguageParser.g:769:2: iv_ruleDefaultAssertion= ruleDefaultAssertion EOF { - newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); + newCompositeNode(grammarAccess.getDefaultAssertionRule()); pushFollow(FOLLOW_1); - iv_ruleUnnamedErrorPrediateDefinition=ruleUnnamedErrorPrediateDefinition(); + iv_ruleDefaultAssertion=ruleDefaultAssertion(); state._fsp--; - current =iv_ruleUnnamedErrorPrediateDefinition; + current =iv_ruleDefaultAssertion; match(input,EOF,FOLLOW_2); } @@ -1211,58 +1944,59 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleUnnamedErrorPrediateDefinition" + // $ANTLR end "entryRuleDefaultAssertion" - // $ANTLR start "ruleUnnamedErrorPrediateDefinition" - // InternalSolverLanguageParser.g:484:1: ruleUnnamedErrorPrediateDefinition returns [EObject current=null] : (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) ; - public final EObject ruleUnnamedErrorPrediateDefinition() throws RecognitionException { + // $ANTLR start "ruleDefaultAssertion" + // InternalSolverLanguageParser.g:775:1: ruleDefaultAssertion returns [EObject current=null] : (otherlv_0= Default ( (lv_expression_1_0= ruleCall ) ) (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? this_FULL_STOP_4= RULE_FULL_STOP ) ; + public final EObject ruleDefaultAssertion() throws RecognitionException { EObject current = null; Token otherlv_0=null; Token otherlv_2=null; - EObject lv_argumentList_1_0 = null; + Token this_FULL_STOP_4=null; + EObject lv_expression_1_0 = null; - EObject lv_body_3_0 = null; + EObject lv_range_3_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:490:2: ( (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) ) - // InternalSolverLanguageParser.g:491:2: (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:781:2: ( (otherlv_0= Default ( (lv_expression_1_0= ruleCall ) ) (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? this_FULL_STOP_4= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:782:2: (otherlv_0= Default ( (lv_expression_1_0= ruleCall ) ) (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? this_FULL_STOP_4= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:491:2: (otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:492:3: otherlv_0= Error ( (lv_argumentList_1_0= ruleArgumentList ) ) otherlv_2= ColonHyphenMinus ( (lv_body_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:782:2: (otherlv_0= Default ( (lv_expression_1_0= ruleCall ) ) (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? this_FULL_STOP_4= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:783:3: otherlv_0= Default ( (lv_expression_1_0= ruleCall ) ) (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? this_FULL_STOP_4= RULE_FULL_STOP { - otherlv_0=(Token)match(input,Error,FOLLOW_11); + otherlv_0=(Token)match(input,Default,FOLLOW_12); - newLeafNode(otherlv_0, grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getErrorKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getDefaultAssertionAccess().getDefaultKeyword_0()); - // InternalSolverLanguageParser.g:496:3: ( (lv_argumentList_1_0= ruleArgumentList ) ) - // InternalSolverLanguageParser.g:497:4: (lv_argumentList_1_0= ruleArgumentList ) + // InternalSolverLanguageParser.g:787:3: ( (lv_expression_1_0= ruleCall ) ) + // InternalSolverLanguageParser.g:788:4: (lv_expression_1_0= ruleCall ) { - // InternalSolverLanguageParser.g:497:4: (lv_argumentList_1_0= ruleArgumentList ) - // InternalSolverLanguageParser.g:498:5: lv_argumentList_1_0= ruleArgumentList + // InternalSolverLanguageParser.g:788:4: (lv_expression_1_0= ruleCall ) + // InternalSolverLanguageParser.g:789:5: lv_expression_1_0= ruleCall { - newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getDefaultAssertionAccess().getExpressionCallParserRuleCall_1_0()); - pushFollow(FOLLOW_10); - lv_argumentList_1_0=ruleArgumentList(); + pushFollow(FOLLOW_16); + lv_expression_1_0=ruleCall(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); + current = createModelElementForParent(grammarAccess.getDefaultAssertionRule()); } set( current, - "argumentList", - lv_argumentList_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); + "expression", + lv_expression_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Call"); afterParserOrEnumRuleCall(); @@ -1271,41 +2005,62 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,ColonHyphenMinus,FOLLOW_6); + // InternalSolverLanguageParser.g:806:3: (otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) )? + int alt11=2; + int LA11_0 = input.LA(1); - newLeafNode(otherlv_2, grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getColonHyphenMinusKeyword_2()); - - // InternalSolverLanguageParser.g:519:3: ( (lv_body_3_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:520:4: (lv_body_3_0= ruleExpression ) - { - // InternalSolverLanguageParser.g:520:4: (lv_body_3_0= ruleExpression ) - // InternalSolverLanguageParser.g:521:5: lv_body_3_0= ruleExpression - { + if ( (LA11_0==Colon) ) { + alt11=1; + } + switch (alt11) { + case 1 : + // InternalSolverLanguageParser.g:807:4: otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) + { + otherlv_2=(Token)match(input,Colon,FOLLOW_10); - newCompositeNode(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); - - pushFollow(FOLLOW_2); - lv_body_3_0=ruleExpression(); + newLeafNode(otherlv_2, grammarAccess.getDefaultAssertionAccess().getColonKeyword_2_0()); + + // InternalSolverLanguageParser.g:811:4: ( (lv_range_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:812:5: (lv_range_3_0= ruleExpression ) + { + // InternalSolverLanguageParser.g:812:5: (lv_range_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:813:6: lv_range_3_0= ruleExpression + { - state._fsp--; + newCompositeNode(grammarAccess.getDefaultAssertionAccess().getRangeExpressionParserRuleCall_2_1_0()); + + pushFollow(FOLLOW_4); + lv_range_3_0=ruleExpression(); + state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getUnnamedErrorPrediateDefinitionRule()); - } - set( - current, - "body", - lv_body_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); - afterParserOrEnumRuleCall(); - - } + if (current==null) { + current = createModelElementForParent(grammarAccess.getDefaultAssertionRule()); + } + set( + current, + "range", + lv_range_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + afterParserOrEnumRuleCall(); + + + } + + + } + + } + break; } + this_FULL_STOP_4=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_4, grammarAccess.getDefaultAssertionAccess().getFULL_STOPTerminalRuleCall_3()); + } @@ -1325,28 +2080,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleUnnamedErrorPrediateDefinition" + // $ANTLR end "ruleDefaultAssertion" - // $ANTLR start "entryRuleDefaultDefinition" - // InternalSolverLanguageParser.g:542:1: entryRuleDefaultDefinition returns [EObject current=null] : iv_ruleDefaultDefinition= ruleDefaultDefinition EOF ; - public final EObject entryRuleDefaultDefinition() throws RecognitionException { + // $ANTLR start "entryRuleFunctionDefinition" + // InternalSolverLanguageParser.g:839:1: entryRuleFunctionDefinition returns [EObject current=null] : iv_ruleFunctionDefinition= ruleFunctionDefinition EOF ; + public final EObject entryRuleFunctionDefinition() throws RecognitionException { EObject current = null; - EObject iv_ruleDefaultDefinition = null; + EObject iv_ruleFunctionDefinition = null; try { - // InternalSolverLanguageParser.g:542:58: (iv_ruleDefaultDefinition= ruleDefaultDefinition EOF ) - // InternalSolverLanguageParser.g:543:2: iv_ruleDefaultDefinition= ruleDefaultDefinition EOF + // InternalSolverLanguageParser.g:839:59: (iv_ruleFunctionDefinition= ruleFunctionDefinition EOF ) + // InternalSolverLanguageParser.g:840:2: iv_ruleFunctionDefinition= ruleFunctionDefinition EOF { - newCompositeNode(grammarAccess.getDefaultDefinitionRule()); + newCompositeNode(grammarAccess.getFunctionDefinitionRule()); pushFollow(FOLLOW_1); - iv_ruleDefaultDefinition=ruleDefaultDefinition(); + iv_ruleFunctionDefinition=ruleFunctionDefinition(); state._fsp--; - current =iv_ruleDefaultDefinition; + current =iv_ruleFunctionDefinition; match(input,EOF,FOLLOW_2); } @@ -1361,52 +2116,76 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleDefaultDefinition" + // $ANTLR end "entryRuleFunctionDefinition" - // $ANTLR start "ruleDefaultDefinition" - // InternalSolverLanguageParser.g:549:1: ruleDefaultDefinition returns [EObject current=null] : (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) ; - public final EObject ruleDefaultDefinition() throws RecognitionException { + // $ANTLR start "ruleFunctionDefinition" + // InternalSolverLanguageParser.g:846:1: ruleFunctionDefinition returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= ColonEqualsSign ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ; + public final EObject ruleFunctionDefinition() throws RecognitionException { EObject current = null; - Token otherlv_0=null; Token otherlv_2=null; + Token this_FULL_STOP_4=null; EObject lv_head_1_0 = null; - EObject lv_range_3_0 = null; + EObject lv_body_3_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:555:2: ( (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) ) - // InternalSolverLanguageParser.g:556:2: (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:852:2: ( ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= ColonEqualsSign ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:853:2: ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= ColonEqualsSign ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:556:2: (otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:557:3: otherlv_0= Default ( (lv_head_1_0= ruleCall ) ) otherlv_2= Colon ( (lv_range_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:853:2: ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= ColonEqualsSign ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:854:3: ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= ColonEqualsSign ( (lv_body_3_0= ruleExpression ) ) this_FULL_STOP_4= RULE_FULL_STOP { - otherlv_0=(Token)match(input,Default,FOLLOW_8); - - newLeafNode(otherlv_0, grammarAccess.getDefaultDefinitionAccess().getDefaultKeyword_0()); - - // InternalSolverLanguageParser.g:561:3: ( (lv_head_1_0= ruleCall ) ) - // InternalSolverLanguageParser.g:562:4: (lv_head_1_0= ruleCall ) + // InternalSolverLanguageParser.g:854:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:855:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:562:4: (lv_head_1_0= ruleCall ) - // InternalSolverLanguageParser.g:563:5: lv_head_1_0= ruleCall + // InternalSolverLanguageParser.g:855:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:856:5: ruleQualifiedName { - newCompositeNode(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0()); + if (current==null) { + current = createModelElement(grammarAccess.getFunctionDefinitionRule()); + } + + + newCompositeNode(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolCrossReference_0_0()); pushFollow(FOLLOW_12); + ruleQualifiedName(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalSolverLanguageParser.g:870:3: ( (lv_head_1_0= ruleCall ) ) + // InternalSolverLanguageParser.g:871:4: (lv_head_1_0= ruleCall ) + { + // InternalSolverLanguageParser.g:871:4: (lv_head_1_0= ruleCall ) + // InternalSolverLanguageParser.g:872:5: lv_head_1_0= ruleCall + { + + newCompositeNode(grammarAccess.getFunctionDefinitionAccess().getHeadCallParserRuleCall_1_0()); + + pushFollow(FOLLOW_17); lv_head_1_0=ruleCall(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getDefaultDefinitionRule()); + current = createModelElementForParent(grammarAccess.getFunctionDefinitionRule()); } set( current, @@ -1421,32 +2200,32 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,Colon,FOLLOW_6); + otherlv_2=(Token)match(input,ColonEqualsSign,FOLLOW_10); - newLeafNode(otherlv_2, grammarAccess.getDefaultDefinitionAccess().getColonKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getFunctionDefinitionAccess().getColonEqualsSignKeyword_2()); - // InternalSolverLanguageParser.g:584:3: ( (lv_range_3_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:585:4: (lv_range_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:893:3: ( (lv_body_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:894:4: (lv_body_3_0= ruleExpression ) { - // InternalSolverLanguageParser.g:585:4: (lv_range_3_0= ruleExpression ) - // InternalSolverLanguageParser.g:586:5: lv_range_3_0= ruleExpression + // InternalSolverLanguageParser.g:894:4: (lv_body_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:895:5: lv_body_3_0= ruleExpression { - newCompositeNode(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getFunctionDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); - pushFollow(FOLLOW_2); - lv_range_3_0=ruleExpression(); + pushFollow(FOLLOW_4); + lv_body_3_0=ruleExpression(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getDefaultDefinitionRule()); + current = createModelElementForParent(grammarAccess.getFunctionDefinitionRule()); } set( current, - "range", - lv_range_3_0, + "body", + lv_body_3_0, "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); afterParserOrEnumRuleCall(); @@ -1456,6 +2235,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_4=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_4, grammarAccess.getFunctionDefinitionAccess().getFULL_STOPTerminalRuleCall_4()); + } @@ -1475,28 +2258,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleDefaultDefinition" + // $ANTLR end "ruleFunctionDefinition" - // $ANTLR start "entryRuleMetricDefinition" - // InternalSolverLanguageParser.g:607:1: entryRuleMetricDefinition returns [EObject current=null] : iv_ruleMetricDefinition= ruleMetricDefinition EOF ; - public final EObject entryRuleMetricDefinition() throws RecognitionException { + // $ANTLR start "entryRuleTypeReference" + // InternalSolverLanguageParser.g:920:1: entryRuleTypeReference returns [EObject current=null] : iv_ruleTypeReference= ruleTypeReference EOF ; + public final EObject entryRuleTypeReference() throws RecognitionException { EObject current = null; - EObject iv_ruleMetricDefinition = null; + EObject iv_ruleTypeReference = null; try { - // InternalSolverLanguageParser.g:607:57: (iv_ruleMetricDefinition= ruleMetricDefinition EOF ) - // InternalSolverLanguageParser.g:608:2: iv_ruleMetricDefinition= ruleMetricDefinition EOF + // InternalSolverLanguageParser.g:920:54: (iv_ruleTypeReference= ruleTypeReference EOF ) + // InternalSolverLanguageParser.g:921:2: iv_ruleTypeReference= ruleTypeReference EOF { - newCompositeNode(grammarAccess.getMetricDefinitionRule()); + newCompositeNode(grammarAccess.getTypeReferenceRule()); pushFollow(FOLLOW_1); - iv_ruleMetricDefinition=ruleMetricDefinition(); + iv_ruleTypeReference=ruleTypeReference(); state._fsp--; - current =iv_ruleMetricDefinition; + current =iv_ruleTypeReference; match(input,EOF,FOLLOW_2); } @@ -1511,45 +2294,41 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleMetricDefinition" + // $ANTLR end "entryRuleTypeReference" - // $ANTLR start "ruleMetricDefinition" - // InternalSolverLanguageParser.g:614:1: ruleMetricDefinition returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) ; - public final EObject ruleMetricDefinition() throws RecognitionException { + // $ANTLR start "ruleTypeReference" + // InternalSolverLanguageParser.g:927:1: ruleTypeReference returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( (lv_forceObjectType_1_0= Object ) )? ) ; + public final EObject ruleTypeReference() throws RecognitionException { EObject current = null; - Token otherlv_2=null; - EObject lv_head_1_0 = null; - - EObject lv_body_3_0 = null; - + Token lv_forceObjectType_1_0=null; enterRule(); try { - // InternalSolverLanguageParser.g:620:2: ( ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) ) - // InternalSolverLanguageParser.g:621:2: ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:933:2: ( ( ( ( ruleQualifiedName ) ) ( (lv_forceObjectType_1_0= Object ) )? ) ) + // InternalSolverLanguageParser.g:934:2: ( ( ( ruleQualifiedName ) ) ( (lv_forceObjectType_1_0= Object ) )? ) { - // InternalSolverLanguageParser.g:621:2: ( ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:622:3: ( ( ruleQualifiedName ) ) ( (lv_head_1_0= ruleCall ) ) otherlv_2= EqualsSign ( (lv_body_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:934:2: ( ( ( ruleQualifiedName ) ) ( (lv_forceObjectType_1_0= Object ) )? ) + // InternalSolverLanguageParser.g:935:3: ( ( ruleQualifiedName ) ) ( (lv_forceObjectType_1_0= Object ) )? { - // InternalSolverLanguageParser.g:622:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:623:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:935:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:936:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:623:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:624:5: ruleQualifiedName + // InternalSolverLanguageParser.g:936:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:937:5: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getMetricDefinitionRule()); + current = createModelElement(grammarAccess.getTypeReferenceRule()); } - newCompositeNode(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementCrossReference_0_0()); + newCompositeNode(grammarAccess.getTypeReferenceAccess().getTypeSymbolCrossReference_0_0()); - pushFollow(FOLLOW_8); + pushFollow(FOLLOW_18); ruleQualifiedName(); state._fsp--; @@ -1563,29 +2342,139 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:638:3: ( (lv_head_1_0= ruleCall ) ) - // InternalSolverLanguageParser.g:639:4: (lv_head_1_0= ruleCall ) + // InternalSolverLanguageParser.g:951:3: ( (lv_forceObjectType_1_0= Object ) )? + int alt12=2; + int LA12_0 = input.LA(1); + + if ( (LA12_0==Object) ) { + alt12=1; + } + switch (alt12) { + case 1 : + // InternalSolverLanguageParser.g:952:4: (lv_forceObjectType_1_0= Object ) + { + // InternalSolverLanguageParser.g:952:4: (lv_forceObjectType_1_0= Object ) + // InternalSolverLanguageParser.g:953:5: lv_forceObjectType_1_0= Object + { + lv_forceObjectType_1_0=(Token)match(input,Object,FOLLOW_2); + + newLeafNode(lv_forceObjectType_1_0, grammarAccess.getTypeReferenceAccess().getForceObjectTypeObjectKeyword_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getTypeReferenceRule()); + } + setWithLastConsumed(current, "forceObjectType", true, "object"); + + + } + + + } + break; + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleTypeReference" + + + // $ANTLR start "entryRuleAttribute" + // InternalSolverLanguageParser.g:969:1: entryRuleAttribute returns [EObject current=null] : iv_ruleAttribute= ruleAttribute EOF ; + public final EObject entryRuleAttribute() throws RecognitionException { + EObject current = null; + + EObject iv_ruleAttribute = null; + + + try { + // InternalSolverLanguageParser.g:969:50: (iv_ruleAttribute= ruleAttribute EOF ) + // InternalSolverLanguageParser.g:970:2: iv_ruleAttribute= ruleAttribute EOF + { + newCompositeNode(grammarAccess.getAttributeRule()); + pushFollow(FOLLOW_1); + iv_ruleAttribute=ruleAttribute(); + + state._fsp--; + + current =iv_ruleAttribute; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleAttribute" + + + // $ANTLR start "ruleAttribute" + // InternalSolverLanguageParser.g:976:1: ruleAttribute returns [EObject current=null] : ( ( (lv_kind_0_0= ruleAttributeKind ) ) ( ( ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP ) ; + public final EObject ruleAttribute() throws RecognitionException { + EObject current = null; + + Token this_FULL_STOP_2=null; + Enumerator lv_kind_0_0 = null; + + + + enterRule(); + + try { + // InternalSolverLanguageParser.g:982:2: ( ( ( (lv_kind_0_0= ruleAttributeKind ) ) ( ( ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:983:2: ( ( (lv_kind_0_0= ruleAttributeKind ) ) ( ( ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP ) + { + // InternalSolverLanguageParser.g:983:2: ( ( (lv_kind_0_0= ruleAttributeKind ) ) ( ( ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:984:3: ( (lv_kind_0_0= ruleAttributeKind ) ) ( ( ruleQualifiedName ) ) this_FULL_STOP_2= RULE_FULL_STOP { - // InternalSolverLanguageParser.g:639:4: (lv_head_1_0= ruleCall ) - // InternalSolverLanguageParser.g:640:5: lv_head_1_0= ruleCall + // InternalSolverLanguageParser.g:984:3: ( (lv_kind_0_0= ruleAttributeKind ) ) + // InternalSolverLanguageParser.g:985:4: (lv_kind_0_0= ruleAttributeKind ) + { + // InternalSolverLanguageParser.g:985:4: (lv_kind_0_0= ruleAttributeKind ) + // InternalSolverLanguageParser.g:986:5: lv_kind_0_0= ruleAttributeKind { - newCompositeNode(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getAttributeAccess().getKindAttributeKindEnumRuleCall_0_0()); - pushFollow(FOLLOW_13); - lv_head_1_0=ruleCall(); + pushFollow(FOLLOW_3); + lv_kind_0_0=ruleAttributeKind(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getMetricDefinitionRule()); + current = createModelElementForParent(grammarAccess.getAttributeRule()); } set( current, - "head", - lv_head_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Call"); + "kind", + lv_kind_0_0, + "org.eclipse.viatra.solver.language.SolverLanguage.AttributeKind"); afterParserOrEnumRuleCall(); @@ -1594,33 +2483,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,EqualsSign,FOLLOW_6); - - newLeafNode(otherlv_2, grammarAccess.getMetricDefinitionAccess().getEqualsSignKeyword_2()); - - // InternalSolverLanguageParser.g:661:3: ( (lv_body_3_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:662:4: (lv_body_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:1003:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:1004:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:662:4: (lv_body_3_0= ruleExpression ) - // InternalSolverLanguageParser.g:663:5: lv_body_3_0= ruleExpression + // InternalSolverLanguageParser.g:1004:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1005:5: ruleQualifiedName { - newCompositeNode(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0()); + if (current==null) { + current = createModelElement(grammarAccess.getAttributeRule()); + } - pushFollow(FOLLOW_2); - lv_body_3_0=ruleExpression(); - state._fsp--; + newCompositeNode(grammarAccess.getAttributeAccess().getTargetSymbolCrossReference_1_0()); + + pushFollow(FOLLOW_4); + ruleQualifiedName(); + + state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getMetricDefinitionRule()); - } - set( - current, - "body", - lv_body_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); afterParserOrEnumRuleCall(); @@ -1629,6 +2511,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_2=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_2, grammarAccess.getAttributeAccess().getFULL_STOPTerminalRuleCall_2()); + } @@ -1648,28 +2534,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleMetricDefinition" + // $ANTLR end "ruleAttribute" - // $ANTLR start "entryRuleExternPredicateDefinition" - // InternalSolverLanguageParser.g:684:1: entryRuleExternPredicateDefinition returns [EObject current=null] : iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF ; - public final EObject entryRuleExternPredicateDefinition() throws RecognitionException { + // $ANTLR start "entryRuleExternDeclaration" + // InternalSolverLanguageParser.g:1027:1: entryRuleExternDeclaration returns [EObject current=null] : iv_ruleExternDeclaration= ruleExternDeclaration EOF ; + public final EObject entryRuleExternDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleExternPredicateDefinition = null; + EObject iv_ruleExternDeclaration = null; try { - // InternalSolverLanguageParser.g:684:66: (iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF ) - // InternalSolverLanguageParser.g:685:2: iv_ruleExternPredicateDefinition= ruleExternPredicateDefinition EOF + // InternalSolverLanguageParser.g:1027:58: (iv_ruleExternDeclaration= ruleExternDeclaration EOF ) + // InternalSolverLanguageParser.g:1028:2: iv_ruleExternDeclaration= ruleExternDeclaration EOF { - newCompositeNode(grammarAccess.getExternPredicateDefinitionRule()); + newCompositeNode(grammarAccess.getExternDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleExternPredicateDefinition=ruleExternPredicateDefinition(); + iv_ruleExternDeclaration=ruleExternDeclaration(); state._fsp--; - current =iv_ruleExternPredicateDefinition; + current =iv_ruleExternDeclaration; match(input,EOF,FOLLOW_2); } @@ -1684,97 +2570,107 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleExternPredicateDefinition" + // $ANTLR end "entryRuleExternDeclaration" - // $ANTLR start "ruleExternPredicateDefinition" - // InternalSolverLanguageParser.g:691:1: ruleExternPredicateDefinition returns [EObject current=null] : (otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) ) ; - public final EObject ruleExternPredicateDefinition() throws RecognitionException { + // $ANTLR start "ruleExternDeclaration" + // InternalSolverLanguageParser.g:1034:1: ruleExternDeclaration returns [EObject current=null] : (this_ExternPredicateDeclaration_0= ruleExternPredicateDeclaration | this_ExternFunctionDeclaration_1= ruleExternFunctionDeclaration | this_ExternAggregationOperatorDeclaration_2= ruleExternAggregationOperatorDeclaration | this_ExternDatatypeDeclaration_3= ruleExternDatatypeDeclaration ) ; + public final EObject ruleExternDeclaration() throws RecognitionException { EObject current = null; - Token otherlv_0=null; - AntlrDatatypeRuleToken lv_name_1_0 = null; + EObject this_ExternPredicateDeclaration_0 = null; + + EObject this_ExternFunctionDeclaration_1 = null; - EObject lv_argumentList_2_0 = null; + EObject this_ExternAggregationOperatorDeclaration_2 = null; + + EObject this_ExternDatatypeDeclaration_3 = null; enterRule(); try { - // InternalSolverLanguageParser.g:697:2: ( (otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) ) ) - // InternalSolverLanguageParser.g:698:2: (otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) ) - { - // InternalSolverLanguageParser.g:698:2: (otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) ) - // InternalSolverLanguageParser.g:699:3: otherlv_0= Extern ( (lv_name_1_0= ruleQualifiedName ) ) ( (lv_argumentList_2_0= ruleArgumentList ) ) + // InternalSolverLanguageParser.g:1040:2: ( (this_ExternPredicateDeclaration_0= ruleExternPredicateDeclaration | this_ExternFunctionDeclaration_1= ruleExternFunctionDeclaration | this_ExternAggregationOperatorDeclaration_2= ruleExternAggregationOperatorDeclaration | this_ExternDatatypeDeclaration_3= ruleExternDatatypeDeclaration ) ) + // InternalSolverLanguageParser.g:1041:2: (this_ExternPredicateDeclaration_0= ruleExternPredicateDeclaration | this_ExternFunctionDeclaration_1= ruleExternFunctionDeclaration | this_ExternAggregationOperatorDeclaration_2= ruleExternAggregationOperatorDeclaration | this_ExternDatatypeDeclaration_3= ruleExternDatatypeDeclaration ) { - otherlv_0=(Token)match(input,Extern,FOLLOW_8); + // InternalSolverLanguageParser.g:1041:2: (this_ExternPredicateDeclaration_0= ruleExternPredicateDeclaration | this_ExternFunctionDeclaration_1= ruleExternFunctionDeclaration | this_ExternAggregationOperatorDeclaration_2= ruleExternAggregationOperatorDeclaration | this_ExternDatatypeDeclaration_3= ruleExternDatatypeDeclaration ) + int alt13=4; + alt13 = dfa13.predict(input); + switch (alt13) { + case 1 : + // InternalSolverLanguageParser.g:1042:3: this_ExternPredicateDeclaration_0= ruleExternPredicateDeclaration + { - newLeafNode(otherlv_0, grammarAccess.getExternPredicateDefinitionAccess().getExternKeyword_0()); - - // InternalSolverLanguageParser.g:703:3: ( (lv_name_1_0= ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:704:4: (lv_name_1_0= ruleQualifiedName ) - { - // InternalSolverLanguageParser.g:704:4: (lv_name_1_0= ruleQualifiedName ) - // InternalSolverLanguageParser.g:705:5: lv_name_1_0= ruleQualifiedName - { + newCompositeNode(grammarAccess.getExternDeclarationAccess().getExternPredicateDeclarationParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_ExternPredicateDeclaration_0=ruleExternPredicateDeclaration(); - newCompositeNode(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0()); - - pushFollow(FOLLOW_11); - lv_name_1_0=ruleQualifiedName(); + state._fsp--; - state._fsp--; + current = this_ExternPredicateDeclaration_0; + afterParserOrEnumRuleCall(); + - if (current==null) { - current = createModelElementForParent(grammarAccess.getExternPredicateDefinitionRule()); - } - set( - current, - "name", - lv_name_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); - afterParserOrEnumRuleCall(); - + } + break; + case 2 : + // InternalSolverLanguageParser.g:1051:3: this_ExternFunctionDeclaration_1= ruleExternFunctionDeclaration + { - } + newCompositeNode(grammarAccess.getExternDeclarationAccess().getExternFunctionDeclarationParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_ExternFunctionDeclaration_1=ruleExternFunctionDeclaration(); + state._fsp--; - } - // InternalSolverLanguageParser.g:722:3: ( (lv_argumentList_2_0= ruleArgumentList ) ) - // InternalSolverLanguageParser.g:723:4: (lv_argumentList_2_0= ruleArgumentList ) - { - // InternalSolverLanguageParser.g:723:4: (lv_argumentList_2_0= ruleArgumentList ) - // InternalSolverLanguageParser.g:724:5: lv_argumentList_2_0= ruleArgumentList - { + current = this_ExternFunctionDeclaration_1; + afterParserOrEnumRuleCall(); + - newCompositeNode(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0()); - - pushFollow(FOLLOW_2); - lv_argumentList_2_0=ruleArgumentList(); + } + break; + case 3 : + // InternalSolverLanguageParser.g:1060:3: this_ExternAggregationOperatorDeclaration_2= ruleExternAggregationOperatorDeclaration + { - state._fsp--; + newCompositeNode(grammarAccess.getExternDeclarationAccess().getExternAggregationOperatorDeclarationParserRuleCall_2()); + + pushFollow(FOLLOW_2); + this_ExternAggregationOperatorDeclaration_2=ruleExternAggregationOperatorDeclaration(); + state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getExternPredicateDefinitionRule()); - } - set( - current, - "argumentList", - lv_argumentList_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); - afterParserOrEnumRuleCall(); - - } + current = this_ExternAggregationOperatorDeclaration_2; + afterParserOrEnumRuleCall(); + + + } + break; + case 4 : + // InternalSolverLanguageParser.g:1069:3: this_ExternDatatypeDeclaration_3= ruleExternDatatypeDeclaration + { + newCompositeNode(grammarAccess.getExternDeclarationAccess().getExternDatatypeDeclarationParserRuleCall_3()); + + pushFollow(FOLLOW_2); + this_ExternDatatypeDeclaration_3=ruleExternDatatypeDeclaration(); - } + state._fsp--; + current = this_ExternDatatypeDeclaration_3; + afterParserOrEnumRuleCall(); + + + } + break; + } @@ -1793,28 +2689,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleExternPredicateDefinition" + // $ANTLR end "ruleExternDeclaration" - // $ANTLR start "entryRuleExternMetricDefinition" - // InternalSolverLanguageParser.g:745:1: entryRuleExternMetricDefinition returns [EObject current=null] : iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF ; - public final EObject entryRuleExternMetricDefinition() throws RecognitionException { + // $ANTLR start "entryRuleExternPredicateDeclaration" + // InternalSolverLanguageParser.g:1081:1: entryRuleExternPredicateDeclaration returns [EObject current=null] : iv_ruleExternPredicateDeclaration= ruleExternPredicateDeclaration EOF ; + public final EObject entryRuleExternPredicateDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleExternMetricDefinition = null; + EObject iv_ruleExternPredicateDeclaration = null; try { - // InternalSolverLanguageParser.g:745:63: (iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF ) - // InternalSolverLanguageParser.g:746:2: iv_ruleExternMetricDefinition= ruleExternMetricDefinition EOF + // InternalSolverLanguageParser.g:1081:67: (iv_ruleExternPredicateDeclaration= ruleExternPredicateDeclaration EOF ) + // InternalSolverLanguageParser.g:1082:2: iv_ruleExternPredicateDeclaration= ruleExternPredicateDeclaration EOF { - newCompositeNode(grammarAccess.getExternMetricDefinitionRule()); + newCompositeNode(grammarAccess.getExternPredicateDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleExternMetricDefinition=ruleExternMetricDefinition(); + iv_ruleExternPredicateDeclaration=ruleExternPredicateDeclaration(); state._fsp--; - current =iv_ruleExternMetricDefinition; + current =iv_ruleExternPredicateDeclaration; match(input,EOF,FOLLOW_2); } @@ -1829,84 +2725,220 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleExternMetricDefinition" + // $ANTLR end "entryRuleExternPredicateDeclaration" - // $ANTLR start "ruleExternMetricDefinition" - // InternalSolverLanguageParser.g:752:1: ruleExternMetricDefinition returns [EObject current=null] : (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) ) ; - public final EObject ruleExternMetricDefinition() throws RecognitionException { + // $ANTLR start "ruleExternPredicateDeclaration" + // InternalSolverLanguageParser.g:1088:1: ruleExternPredicateDeclaration returns [EObject current=null] : (otherlv_0= Extern ( ( ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) ) ) ( (lv_name_4_0= ruleQualifiedName ) ) ( (lv_argumentList_5_0= ruleArgumentList ) ) this_FULL_STOP_6= RULE_FULL_STOP ) ; + public final EObject ruleExternPredicateDeclaration() throws RecognitionException { EObject current = null; Token otherlv_0=null; - AntlrDatatypeRuleToken lv_name_2_0 = null; + Token lv_functional_2_0=null; + Token lv_error_3_0=null; + Token this_FULL_STOP_6=null; + AntlrDatatypeRuleToken lv_name_4_0 = null; - EObject lv_argumentList_3_0 = null; + EObject lv_argumentList_5_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:758:2: ( (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) ) ) - // InternalSolverLanguageParser.g:759:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) ) + // InternalSolverLanguageParser.g:1094:2: ( (otherlv_0= Extern ( ( ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) ) ) ( (lv_name_4_0= ruleQualifiedName ) ) ( (lv_argumentList_5_0= ruleArgumentList ) ) this_FULL_STOP_6= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:1095:2: (otherlv_0= Extern ( ( ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) ) ) ( (lv_name_4_0= ruleQualifiedName ) ) ( (lv_argumentList_5_0= ruleArgumentList ) ) this_FULL_STOP_6= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:759:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) ) - // InternalSolverLanguageParser.g:760:3: otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) + // InternalSolverLanguageParser.g:1095:2: (otherlv_0= Extern ( ( ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) ) ) ( (lv_name_4_0= ruleQualifiedName ) ) ( (lv_argumentList_5_0= ruleArgumentList ) ) this_FULL_STOP_6= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:1096:3: otherlv_0= Extern ( ( ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) ) ) ( (lv_name_4_0= ruleQualifiedName ) ) ( (lv_argumentList_5_0= ruleArgumentList ) ) this_FULL_STOP_6= RULE_FULL_STOP { - otherlv_0=(Token)match(input,Extern,FOLLOW_8); + otherlv_0=(Token)match(input,Extern,FOLLOW_19); - newLeafNode(otherlv_0, grammarAccess.getExternMetricDefinitionAccess().getExternKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getExternPredicateDeclarationAccess().getExternKeyword_0()); - // InternalSolverLanguageParser.g:764:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:765:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1100:3: ( ( ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) ) ) + // InternalSolverLanguageParser.g:1101:4: ( ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) ) { - // InternalSolverLanguageParser.g:765:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:766:5: ruleQualifiedName + // InternalSolverLanguageParser.g:1101:4: ( ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) ) + // InternalSolverLanguageParser.g:1102:5: ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) { - - if (current==null) { - current = createModelElement(grammarAccess.getExternMetricDefinitionRule()); - } + + getUnorderedGroupHelper().enter(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + // InternalSolverLanguageParser.g:1105:5: ( ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* ) + // InternalSolverLanguageParser.g:1106:6: ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* + { + // InternalSolverLanguageParser.g:1106:6: ( ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) )* + loop14: + do { + int alt14=3; + int LA14_0 = input.LA(1); - newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementCrossReference_1_0()); - - pushFollow(FOLLOW_8); - ruleQualifiedName(); + if ( LA14_0 == Functional && getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0) ) { + alt14=1; + } + else if ( LA14_0 == Error && getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1) ) { + alt14=2; + } - state._fsp--; + switch (alt14) { + case 1 : + // InternalSolverLanguageParser.g:1107:4: ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) + { + // InternalSolverLanguageParser.g:1107:4: ({...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) ) + // InternalSolverLanguageParser.g:1108:5: {...}? => ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0) ) { + throw new FailedPredicateException(input, "ruleExternPredicateDeclaration", "getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0)"); + } + // InternalSolverLanguageParser.g:1108:123: ( ({...}? => ( (lv_functional_2_0= Functional ) ) ) ) + // InternalSolverLanguageParser.g:1109:6: ({...}? => ( (lv_functional_2_0= Functional ) ) ) + { + + getUnorderedGroupHelper().select(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 0); + + // InternalSolverLanguageParser.g:1112:9: ({...}? => ( (lv_functional_2_0= Functional ) ) ) + // InternalSolverLanguageParser.g:1112:10: {...}? => ( (lv_functional_2_0= Functional ) ) + { + if ( !((true)) ) { + throw new FailedPredicateException(input, "ruleExternPredicateDeclaration", "true"); + } + // InternalSolverLanguageParser.g:1112:19: ( (lv_functional_2_0= Functional ) ) + // InternalSolverLanguageParser.g:1112:20: (lv_functional_2_0= Functional ) + { + // InternalSolverLanguageParser.g:1112:20: (lv_functional_2_0= Functional ) + // InternalSolverLanguageParser.g:1113:10: lv_functional_2_0= Functional + { + lv_functional_2_0=(Token)match(input,Functional,FOLLOW_19); + + newLeafNode(lv_functional_2_0, grammarAccess.getExternPredicateDeclarationAccess().getFunctionalFunctionalKeyword_1_0_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getExternPredicateDeclarationRule()); + } + setWithLastConsumed(current, "functional", true, "functional"); + + + } + + + } + + + } + + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + + + } + + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:1130:4: ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) + { + // InternalSolverLanguageParser.g:1130:4: ({...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) ) + // InternalSolverLanguageParser.g:1131:5: {...}? => ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1) ) { + throw new FailedPredicateException(input, "ruleExternPredicateDeclaration", "getUnorderedGroupHelper().canSelect(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1)"); + } + // InternalSolverLanguageParser.g:1131:123: ( ({...}? => ( (lv_error_3_0= Error ) ) ) ) + // InternalSolverLanguageParser.g:1132:6: ({...}? => ( (lv_error_3_0= Error ) ) ) + { + + getUnorderedGroupHelper().select(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1(), 1); + + // InternalSolverLanguageParser.g:1135:9: ({...}? => ( (lv_error_3_0= Error ) ) ) + // InternalSolverLanguageParser.g:1135:10: {...}? => ( (lv_error_3_0= Error ) ) + { + if ( !((true)) ) { + throw new FailedPredicateException(input, "ruleExternPredicateDeclaration", "true"); + } + // InternalSolverLanguageParser.g:1135:19: ( (lv_error_3_0= Error ) ) + // InternalSolverLanguageParser.g:1135:20: (lv_error_3_0= Error ) + { + // InternalSolverLanguageParser.g:1135:20: (lv_error_3_0= Error ) + // InternalSolverLanguageParser.g:1136:10: lv_error_3_0= Error + { + lv_error_3_0=(Token)match(input,Error,FOLLOW_19); + + newLeafNode(lv_error_3_0, grammarAccess.getExternPredicateDeclarationAccess().getErrorErrorKeyword_1_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getExternPredicateDeclarationRule()); + } + setWithLastConsumed(current, "error", true, "error"); + + + } + + + } + + + } + + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + + + } + + + } + + + } + break; + + default : + break loop14; + } + } while (true); + + + } - afterParserOrEnumRuleCall(); - } + + getUnorderedGroupHelper().leave(grammarAccess.getExternPredicateDeclarationAccess().getUnorderedGroup_1()); + } - // InternalSolverLanguageParser.g:780:3: ( (lv_name_2_0= ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:781:4: (lv_name_2_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:1160:3: ( (lv_name_4_0= ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:1161:4: (lv_name_4_0= ruleQualifiedName ) { - // InternalSolverLanguageParser.g:781:4: (lv_name_2_0= ruleQualifiedName ) - // InternalSolverLanguageParser.g:782:5: lv_name_2_0= ruleQualifiedName + // InternalSolverLanguageParser.g:1161:4: (lv_name_4_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:1162:5: lv_name_4_0= ruleQualifiedName { - newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getExternPredicateDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); - pushFollow(FOLLOW_11); - lv_name_2_0=ruleQualifiedName(); + pushFollow(FOLLOW_15); + lv_name_4_0=ruleQualifiedName(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getExternMetricDefinitionRule()); + current = createModelElementForParent(grammarAccess.getExternPredicateDeclarationRule()); } set( current, "name", - lv_name_2_0, + lv_name_4_0, "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); afterParserOrEnumRuleCall(); @@ -1916,28 +2948,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:799:3: ( (lv_argumentList_3_0= ruleArgumentList ) ) - // InternalSolverLanguageParser.g:800:4: (lv_argumentList_3_0= ruleArgumentList ) + // InternalSolverLanguageParser.g:1179:3: ( (lv_argumentList_5_0= ruleArgumentList ) ) + // InternalSolverLanguageParser.g:1180:4: (lv_argumentList_5_0= ruleArgumentList ) { - // InternalSolverLanguageParser.g:800:4: (lv_argumentList_3_0= ruleArgumentList ) - // InternalSolverLanguageParser.g:801:5: lv_argumentList_3_0= ruleArgumentList + // InternalSolverLanguageParser.g:1180:4: (lv_argumentList_5_0= ruleArgumentList ) + // InternalSolverLanguageParser.g:1181:5: lv_argumentList_5_0= ruleArgumentList { - newCompositeNode(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getExternPredicateDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); - pushFollow(FOLLOW_2); - lv_argumentList_3_0=ruleArgumentList(); + pushFollow(FOLLOW_4); + lv_argumentList_5_0=ruleArgumentList(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getExternMetricDefinitionRule()); + current = createModelElementForParent(grammarAccess.getExternPredicateDeclarationRule()); } set( current, "argumentList", - lv_argumentList_3_0, + lv_argumentList_5_0, "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); afterParserOrEnumRuleCall(); @@ -1947,6 +2979,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_6=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_6, grammarAccess.getExternPredicateDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); + } @@ -1966,28 +3002,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleExternMetricDefinition" + // $ANTLR end "ruleExternPredicateDeclaration" - // $ANTLR start "entryRuleExternAggregatorDefinition" - // InternalSolverLanguageParser.g:822:1: entryRuleExternAggregatorDefinition returns [EObject current=null] : iv_ruleExternAggregatorDefinition= ruleExternAggregatorDefinition EOF ; - public final EObject entryRuleExternAggregatorDefinition() throws RecognitionException { + // $ANTLR start "entryRuleExternFunctionDeclaration" + // InternalSolverLanguageParser.g:1206:1: entryRuleExternFunctionDeclaration returns [EObject current=null] : iv_ruleExternFunctionDeclaration= ruleExternFunctionDeclaration EOF ; + public final EObject entryRuleExternFunctionDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleExternAggregatorDefinition = null; + EObject iv_ruleExternFunctionDeclaration = null; try { - // InternalSolverLanguageParser.g:822:67: (iv_ruleExternAggregatorDefinition= ruleExternAggregatorDefinition EOF ) - // InternalSolverLanguageParser.g:823:2: iv_ruleExternAggregatorDefinition= ruleExternAggregatorDefinition EOF + // InternalSolverLanguageParser.g:1206:66: (iv_ruleExternFunctionDeclaration= ruleExternFunctionDeclaration EOF ) + // InternalSolverLanguageParser.g:1207:2: iv_ruleExternFunctionDeclaration= ruleExternFunctionDeclaration EOF { - newCompositeNode(grammarAccess.getExternAggregatorDefinitionRule()); + newCompositeNode(grammarAccess.getExternFunctionDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleExternAggregatorDefinition=ruleExternAggregatorDefinition(); + iv_ruleExternFunctionDeclaration=ruleExternFunctionDeclaration(); state._fsp--; - current =iv_ruleExternAggregatorDefinition; + current =iv_ruleExternFunctionDeclaration; match(input,EOF,FOLLOW_2); } @@ -2002,50 +3038,50 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleExternAggregatorDefinition" + // $ANTLR end "entryRuleExternFunctionDeclaration" - // $ANTLR start "ruleExternAggregatorDefinition" - // InternalSolverLanguageParser.g:829:1: ruleExternAggregatorDefinition returns [EObject current=null] : (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket ) ; - public final EObject ruleExternAggregatorDefinition() throws RecognitionException { + // $ANTLR start "ruleExternFunctionDeclaration" + // InternalSolverLanguageParser.g:1213:1: ruleExternFunctionDeclaration returns [EObject current=null] : (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ; + public final EObject ruleExternFunctionDeclaration() throws RecognitionException { EObject current = null; Token otherlv_0=null; - Token otherlv_3=null; - Token otherlv_5=null; - Token otherlv_6=null; + Token this_FULL_STOP_4=null; AntlrDatatypeRuleToken lv_name_2_0 = null; + EObject lv_argumentList_3_0 = null; + enterRule(); try { - // InternalSolverLanguageParser.g:835:2: ( (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket ) ) - // InternalSolverLanguageParser.g:836:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket ) + // InternalSolverLanguageParser.g:1219:2: ( (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:1220:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) this_FULL_STOP_4= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:836:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket ) - // InternalSolverLanguageParser.g:837:3: otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket + // InternalSolverLanguageParser.g:1220:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:1221:3: otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) ( (lv_argumentList_3_0= ruleArgumentList ) ) this_FULL_STOP_4= RULE_FULL_STOP { - otherlv_0=(Token)match(input,Extern,FOLLOW_8); + otherlv_0=(Token)match(input,Extern,FOLLOW_3); - newLeafNode(otherlv_0, grammarAccess.getExternAggregatorDefinitionAccess().getExternKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getExternFunctionDeclarationAccess().getExternKeyword_0()); - // InternalSolverLanguageParser.g:841:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:842:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1225:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:1226:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:842:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:843:5: ruleQualifiedName + // InternalSolverLanguageParser.g:1226:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1227:5: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getExternAggregatorDefinitionRule()); + current = createModelElement(grammarAccess.getExternFunctionDeclarationRule()); } - newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + newCompositeNode(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); - pushFollow(FOLLOW_8); + pushFollow(FOLLOW_3); ruleQualifiedName(); state._fsp--; @@ -2059,23 +3095,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:857:3: ( (lv_name_2_0= ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:858:4: (lv_name_2_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:1241:3: ( (lv_name_2_0= ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:1242:4: (lv_name_2_0= ruleQualifiedName ) { - // InternalSolverLanguageParser.g:858:4: (lv_name_2_0= ruleQualifiedName ) - // InternalSolverLanguageParser.g:859:5: lv_name_2_0= ruleQualifiedName + // InternalSolverLanguageParser.g:1242:4: (lv_name_2_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:1243:5: lv_name_2_0= ruleQualifiedName { - newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getExternFunctionDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); - pushFollow(FOLLOW_14); + pushFollow(FOLLOW_15); lv_name_2_0=ruleQualifiedName(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getExternAggregatorDefinitionRule()); + current = createModelElementForParent(grammarAccess.getExternFunctionDeclarationRule()); } set( current, @@ -2090,30 +3126,29 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_3=(Token)match(input,LeftCurlyBracket,FOLLOW_8); - - newLeafNode(otherlv_3, grammarAccess.getExternAggregatorDefinitionAccess().getLeftCurlyBracketKeyword_3()); - - // InternalSolverLanguageParser.g:880:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:881:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1260:3: ( (lv_argumentList_3_0= ruleArgumentList ) ) + // InternalSolverLanguageParser.g:1261:4: (lv_argumentList_3_0= ruleArgumentList ) { - // InternalSolverLanguageParser.g:881:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:882:5: ruleQualifiedName + // InternalSolverLanguageParser.g:1261:4: (lv_argumentList_3_0= ruleArgumentList ) + // InternalSolverLanguageParser.g:1262:5: lv_argumentList_3_0= ruleArgumentList { - if (current==null) { - current = createModelElement(grammarAccess.getExternAggregatorDefinitionRule()); - } - - - newCompositeNode(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementCrossReference_4_0()); + newCompositeNode(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0()); - pushFollow(FOLLOW_15); - ruleQualifiedName(); + pushFollow(FOLLOW_4); + lv_argumentList_3_0=ruleArgumentList(); state._fsp--; + if (current==null) { + current = createModelElementForParent(grammarAccess.getExternFunctionDeclarationRule()); + } + set( + current, + "argumentList", + lv_argumentList_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); afterParserOrEnumRuleCall(); @@ -2122,13 +3157,9 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_5=(Token)match(input,FullStopFullStopFullStop,FOLLOW_16); - - newLeafNode(otherlv_5, grammarAccess.getExternAggregatorDefinitionAccess().getFullStopFullStopFullStopKeyword_5()); - - otherlv_6=(Token)match(input,RightCurlyBracket,FOLLOW_2); + this_FULL_STOP_4=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); - newLeafNode(otherlv_6, grammarAccess.getExternAggregatorDefinitionAccess().getRightCurlyBracketKeyword_6()); + newLeafNode(this_FULL_STOP_4, grammarAccess.getExternFunctionDeclarationAccess().getFULL_STOPTerminalRuleCall_4()); } @@ -2149,28 +3180,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleExternAggregatorDefinition" + // $ANTLR end "ruleExternFunctionDeclaration" - // $ANTLR start "entryRuleExternDatatypeDefinition" - // InternalSolverLanguageParser.g:908:1: entryRuleExternDatatypeDefinition returns [EObject current=null] : iv_ruleExternDatatypeDefinition= ruleExternDatatypeDefinition EOF ; - public final EObject entryRuleExternDatatypeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleExternAggregationOperatorDeclaration" + // InternalSolverLanguageParser.g:1287:1: entryRuleExternAggregationOperatorDeclaration returns [EObject current=null] : iv_ruleExternAggregationOperatorDeclaration= ruleExternAggregationOperatorDeclaration EOF ; + public final EObject entryRuleExternAggregationOperatorDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleExternDatatypeDefinition = null; + EObject iv_ruleExternAggregationOperatorDeclaration = null; try { - // InternalSolverLanguageParser.g:908:65: (iv_ruleExternDatatypeDefinition= ruleExternDatatypeDefinition EOF ) - // InternalSolverLanguageParser.g:909:2: iv_ruleExternDatatypeDefinition= ruleExternDatatypeDefinition EOF + // InternalSolverLanguageParser.g:1287:77: (iv_ruleExternAggregationOperatorDeclaration= ruleExternAggregationOperatorDeclaration EOF ) + // InternalSolverLanguageParser.g:1288:2: iv_ruleExternAggregationOperatorDeclaration= ruleExternAggregationOperatorDeclaration EOF { - newCompositeNode(grammarAccess.getExternDatatypeDefinitionRule()); + newCompositeNode(grammarAccess.getExternAggregationOperatorDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleExternDatatypeDefinition=ruleExternDatatypeDefinition(); + iv_ruleExternAggregationOperatorDeclaration=ruleExternAggregationOperatorDeclaration(); state._fsp--; - current =iv_ruleExternDatatypeDefinition; + current =iv_ruleExternAggregationOperatorDeclaration; match(input,EOF,FOLLOW_2); } @@ -2185,18 +3216,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleExternDatatypeDefinition" + // $ANTLR end "entryRuleExternAggregationOperatorDeclaration" - // $ANTLR start "ruleExternDatatypeDefinition" - // InternalSolverLanguageParser.g:915:1: ruleExternDatatypeDefinition returns [EObject current=null] : (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) ) ; - public final EObject ruleExternDatatypeDefinition() throws RecognitionException { + // $ANTLR start "ruleExternAggregationOperatorDeclaration" + // InternalSolverLanguageParser.g:1294:1: ruleExternAggregationOperatorDeclaration returns [EObject current=null] : (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket this_FULL_STOP_7= RULE_FULL_STOP ) ; + public final EObject ruleExternAggregationOperatorDeclaration() throws RecognitionException { EObject current = null; Token otherlv_0=null; - Token otherlv_1=null; Token otherlv_3=null; Token otherlv_5=null; + Token otherlv_6=null; + Token this_FULL_STOP_7=null; AntlrDatatypeRuleToken lv_name_2_0 = null; @@ -2204,43 +3236,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:921:2: ( (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) ) ) - // InternalSolverLanguageParser.g:922:2: (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) ) + // InternalSolverLanguageParser.g:1300:2: ( (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket this_FULL_STOP_7= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:1301:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket this_FULL_STOP_7= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:922:2: (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) ) - // InternalSolverLanguageParser.g:923:3: otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) + // InternalSolverLanguageParser.g:1301:2: (otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket this_FULL_STOP_7= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:1302:3: otherlv_0= Extern ( ( ruleQualifiedName ) ) ( (lv_name_2_0= ruleQualifiedName ) ) otherlv_3= LeftCurlyBracket ( ( ruleQualifiedName ) ) otherlv_5= FullStopFullStopFullStop otherlv_6= RightCurlyBracket this_FULL_STOP_7= RULE_FULL_STOP { - otherlv_0=(Token)match(input,Extern,FOLLOW_17); - - newLeafNode(otherlv_0, grammarAccess.getExternDatatypeDefinitionAccess().getExternKeyword_0()); - - otherlv_1=(Token)match(input,Datatype,FOLLOW_8); + otherlv_0=(Token)match(input,Extern,FOLLOW_3); - newLeafNode(otherlv_1, grammarAccess.getExternDatatypeDefinitionAccess().getDatatypeKeyword_1()); + newLeafNode(otherlv_0, grammarAccess.getExternAggregationOperatorDeclarationAccess().getExternKeyword_0()); - // InternalSolverLanguageParser.g:931:3: ( (lv_name_2_0= ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:932:4: (lv_name_2_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:1306:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:1307:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:932:4: (lv_name_2_0= ruleQualifiedName ) - // InternalSolverLanguageParser.g:933:5: lv_name_2_0= ruleQualifiedName + // InternalSolverLanguageParser.g:1307:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1308:5: ruleQualifiedName { - newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0()); + if (current==null) { + current = createModelElement(grammarAccess.getExternAggregationOperatorDeclarationRule()); + } - pushFollow(FOLLOW_18); - lv_name_2_0=ruleQualifiedName(); + + newCompositeNode(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolCrossReference_1_0()); + + pushFollow(FOLLOW_3); + ruleQualifiedName(); state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getExternDatatypeDefinitionRule()); - } - set( - current, - "name", - lv_name_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); afterParserOrEnumRuleCall(); @@ -2249,100 +3274,81 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:950:3: (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* ) - // InternalSolverLanguageParser.g:951:4: otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* - { - otherlv_3=(Token)match(input,Extends,FOLLOW_8); - - newLeafNode(otherlv_3, grammarAccess.getExternDatatypeDefinitionAccess().getExtendsKeyword_3_0()); - - // InternalSolverLanguageParser.g:955:4: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:956:5: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1322:3: ( (lv_name_2_0= ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:1323:4: (lv_name_2_0= ruleQualifiedName ) { - // InternalSolverLanguageParser.g:956:5: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:957:6: ruleQualifiedName + // InternalSolverLanguageParser.g:1323:4: (lv_name_2_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:1324:5: lv_name_2_0= ruleQualifiedName { - if (current==null) { - current = createModelElement(grammarAccess.getExternDatatypeDefinitionRule()); - } - - - newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_1_0()); - - pushFollow(FOLLOW_19); - ruleQualifiedName(); + newCompositeNode(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); + + pushFollow(FOLLOW_20); + lv_name_2_0=ruleQualifiedName(); state._fsp--; - afterParserOrEnumRuleCall(); - - - } - + if (current==null) { + current = createModelElementForParent(grammarAccess.getExternAggregationOperatorDeclarationRule()); + } + set( + current, + "name", + lv_name_2_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); + } - // InternalSolverLanguageParser.g:971:4: (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* - loop7: - do { - int alt7=2; - int LA7_0 = input.LA(1); - - if ( (LA7_0==Comma) ) { - alt7=1; - } - - - switch (alt7) { - case 1 : - // InternalSolverLanguageParser.g:972:5: otherlv_5= Comma ( ( ruleQualifiedName ) ) - { - otherlv_5=(Token)match(input,Comma,FOLLOW_8); - - newLeafNode(otherlv_5, grammarAccess.getExternDatatypeDefinitionAccess().getCommaKeyword_3_2_0()); - - // InternalSolverLanguageParser.g:976:5: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:977:6: ( ruleQualifiedName ) - { - // InternalSolverLanguageParser.g:977:6: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:978:7: ruleQualifiedName - { - - if (current==null) { - current = createModelElement(grammarAccess.getExternDatatypeDefinitionRule()); - } - - - newCompositeNode(grammarAccess.getExternDatatypeDefinitionAccess().getSupertypesNamedElementCrossReference_3_2_1_0()); - - pushFollow(FOLLOW_19); - ruleQualifiedName(); - state._fsp--; + } + otherlv_3=(Token)match(input,LeftCurlyBracket,FOLLOW_3); - afterParserOrEnumRuleCall(); - + newLeafNode(otherlv_3, grammarAccess.getExternAggregationOperatorDeclarationAccess().getLeftCurlyBracketKeyword_3()); + + // InternalSolverLanguageParser.g:1345:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:1346:4: ( ruleQualifiedName ) + { + // InternalSolverLanguageParser.g:1346:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1347:5: ruleQualifiedName + { - } + if (current==null) { + current = createModelElement(grammarAccess.getExternAggregationOperatorDeclarationRule()); + } + + newCompositeNode(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolCrossReference_4_0()); + + pushFollow(FOLLOW_21); + ruleQualifiedName(); - } + state._fsp--; - } - break; + afterParserOrEnumRuleCall(); + - default : - break loop7; - } - } while (true); + } } + otherlv_5=(Token)match(input,FullStopFullStopFullStop,FOLLOW_22); + + newLeafNode(otherlv_5, grammarAccess.getExternAggregationOperatorDeclarationAccess().getFullStopFullStopFullStopKeyword_5()); + + otherlv_6=(Token)match(input,RightCurlyBracket,FOLLOW_4); + + newLeafNode(otherlv_6, grammarAccess.getExternAggregationOperatorDeclarationAccess().getRightCurlyBracketKeyword_6()); + + this_FULL_STOP_7=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_7, grammarAccess.getExternAggregationOperatorDeclarationAccess().getFULL_STOPTerminalRuleCall_7()); + } @@ -2362,28 +3368,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleExternDatatypeDefinition" + // $ANTLR end "ruleExternAggregationOperatorDeclaration" - // $ANTLR start "entryRuleVariable" - // InternalSolverLanguageParser.g:998:1: entryRuleVariable returns [EObject current=null] : iv_ruleVariable= ruleVariable EOF ; - public final EObject entryRuleVariable() throws RecognitionException { + // $ANTLR start "entryRuleExternDatatypeDeclaration" + // InternalSolverLanguageParser.g:1377:1: entryRuleExternDatatypeDeclaration returns [EObject current=null] : iv_ruleExternDatatypeDeclaration= ruleExternDatatypeDeclaration EOF ; + public final EObject entryRuleExternDatatypeDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleVariable = null; + EObject iv_ruleExternDatatypeDeclaration = null; try { - // InternalSolverLanguageParser.g:998:49: (iv_ruleVariable= ruleVariable EOF ) - // InternalSolverLanguageParser.g:999:2: iv_ruleVariable= ruleVariable EOF + // InternalSolverLanguageParser.g:1377:66: (iv_ruleExternDatatypeDeclaration= ruleExternDatatypeDeclaration EOF ) + // InternalSolverLanguageParser.g:1378:2: iv_ruleExternDatatypeDeclaration= ruleExternDatatypeDeclaration EOF { - newCompositeNode(grammarAccess.getVariableRule()); + newCompositeNode(grammarAccess.getExternDatatypeDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleVariable=ruleVariable(); + iv_ruleExternDatatypeDeclaration=ruleExternDatatypeDeclaration(); state._fsp--; - current =iv_ruleVariable; + current =iv_ruleExternDatatypeDeclaration; match(input,EOF,FOLLOW_2); } @@ -2398,91 +3404,62 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleVariable" + // $ANTLR end "entryRuleExternDatatypeDeclaration" - // $ANTLR start "ruleVariable" - // InternalSolverLanguageParser.g:1005:1: ruleVariable returns [EObject current=null] : ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) ) ; - public final EObject ruleVariable() throws RecognitionException { + // $ANTLR start "ruleExternDatatypeDeclaration" + // InternalSolverLanguageParser.g:1384:1: ruleExternDatatypeDeclaration returns [EObject current=null] : (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) this_FULL_STOP_3= RULE_FULL_STOP ) ; + public final EObject ruleExternDatatypeDeclaration() throws RecognitionException { EObject current = null; - Token lv_name_1_0=null; + Token otherlv_0=null; + Token otherlv_1=null; + Token this_FULL_STOP_3=null; + AntlrDatatypeRuleToken lv_name_2_0 = null; + enterRule(); try { - // InternalSolverLanguageParser.g:1011:2: ( ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) ) ) - // InternalSolverLanguageParser.g:1012:2: ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) ) + // InternalSolverLanguageParser.g:1390:2: ( (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) this_FULL_STOP_3= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:1391:2: (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) this_FULL_STOP_3= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:1012:2: ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) ) - // InternalSolverLanguageParser.g:1013:3: ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) + // InternalSolverLanguageParser.g:1391:2: (otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) this_FULL_STOP_3= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:1392:3: otherlv_0= Extern otherlv_1= Datatype ( (lv_name_2_0= ruleQualifiedName ) ) this_FULL_STOP_3= RULE_FULL_STOP { - // InternalSolverLanguageParser.g:1013:3: ( ( ruleQualifiedName ) )? - int alt8=2; - int LA8_0 = input.LA(1); - - if ( (LA8_0==RULE_ID) ) { - int LA8_1 = input.LA(2); - - if ( (LA8_1==FullStop||LA8_1==RULE_ID) ) { - alt8=1; - } - } - else if ( (LA8_0==RULE_QUOTED_ID) ) { - alt8=1; - } - switch (alt8) { - case 1 : - // InternalSolverLanguageParser.g:1014:4: ( ruleQualifiedName ) - { - // InternalSolverLanguageParser.g:1014:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:1015:5: ruleQualifiedName - { - - if (current==null) { - current = createModelElement(grammarAccess.getVariableRule()); - } - - - newCompositeNode(grammarAccess.getVariableAccess().getTypeNamedElementCrossReference_0_0()); - - pushFollow(FOLLOW_20); - ruleQualifiedName(); + otherlv_0=(Token)match(input,Extern,FOLLOW_23); - state._fsp--; - - - afterParserOrEnumRuleCall(); - - - } - - - } - break; - - } + newLeafNode(otherlv_0, grammarAccess.getExternDatatypeDeclarationAccess().getExternKeyword_0()); + + otherlv_1=(Token)match(input,Datatype,FOLLOW_3); - // InternalSolverLanguageParser.g:1029:3: ( (lv_name_1_0= RULE_ID ) ) - // InternalSolverLanguageParser.g:1030:4: (lv_name_1_0= RULE_ID ) + newLeafNode(otherlv_1, grammarAccess.getExternDatatypeDeclarationAccess().getDatatypeKeyword_1()); + + // InternalSolverLanguageParser.g:1400:3: ( (lv_name_2_0= ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:1401:4: (lv_name_2_0= ruleQualifiedName ) { - // InternalSolverLanguageParser.g:1030:4: (lv_name_1_0= RULE_ID ) - // InternalSolverLanguageParser.g:1031:5: lv_name_1_0= RULE_ID + // InternalSolverLanguageParser.g:1401:4: (lv_name_2_0= ruleQualifiedName ) + // InternalSolverLanguageParser.g:1402:5: lv_name_2_0= ruleQualifiedName { - lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_2); - newLeafNode(lv_name_1_0, grammarAccess.getVariableAccess().getNameIDTerminalRuleCall_1_0()); + newCompositeNode(grammarAccess.getExternDatatypeDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0()); + pushFollow(FOLLOW_4); + lv_name_2_0=ruleQualifiedName(); + + state._fsp--; + if (current==null) { - current = createModelElement(grammarAccess.getVariableRule()); + current = createModelElementForParent(grammarAccess.getExternDatatypeDeclarationRule()); } - setWithLastConsumed( + set( current, "name", - lv_name_1_0, - "org.eclipse.xtext.common.Terminals.ID"); + lv_name_2_0, + "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + afterParserOrEnumRuleCall(); } @@ -2490,6 +3467,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_3=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_3, grammarAccess.getExternDatatypeDeclarationAccess().getFULL_STOPTerminalRuleCall_3()); + } @@ -2509,11 +3490,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleVariable" + // $ANTLR end "ruleExternDatatypeDeclaration" // $ANTLR start "entryRuleExpression" - // InternalSolverLanguageParser.g:1051:1: entryRuleExpression returns [EObject current=null] : iv_ruleExpression= ruleExpression EOF ; + // InternalSolverLanguageParser.g:1427:1: entryRuleExpression returns [EObject current=null] : iv_ruleExpression= ruleExpression EOF ; public final EObject entryRuleExpression() throws RecognitionException { EObject current = null; @@ -2521,8 +3502,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1051:51: (iv_ruleExpression= ruleExpression EOF ) - // InternalSolverLanguageParser.g:1052:2: iv_ruleExpression= ruleExpression EOF + // InternalSolverLanguageParser.g:1427:51: (iv_ruleExpression= ruleExpression EOF ) + // InternalSolverLanguageParser.g:1428:2: iv_ruleExpression= ruleExpression EOF { newCompositeNode(grammarAccess.getExpressionRule()); pushFollow(FOLLOW_1); @@ -2549,121 +3530,191 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleExpression" - // InternalSolverLanguageParser.g:1058:1: ruleExpression returns [EObject current=null] : (this_IfElse_0= ruleIfElse | this_Let_1= ruleLet | this_ImplicationExpression_2= ruleImplicationExpression ) ; + // InternalSolverLanguageParser.g:1434:1: ruleExpression returns [EObject current=null] : (this_ConditionalExpression_0= ruleConditionalExpression | this_LetExpression_1= ruleLetExpression | (this_DisjunctiveExpression_2= ruleDisjunctiveExpression ( () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) )? ) ) ; public final EObject ruleExpression() throws RecognitionException { EObject current = null; - EObject this_IfElse_0 = null; + Token otherlv_4=null; + EObject this_ConditionalExpression_0 = null; + + EObject this_LetExpression_1 = null; - EObject this_Let_1 = null; + EObject this_DisjunctiveExpression_2 = null; - EObject this_ImplicationExpression_2 = null; + EObject lv_body_5_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:1064:2: ( (this_IfElse_0= ruleIfElse | this_Let_1= ruleLet | this_ImplicationExpression_2= ruleImplicationExpression ) ) - // InternalSolverLanguageParser.g:1065:2: (this_IfElse_0= ruleIfElse | this_Let_1= ruleLet | this_ImplicationExpression_2= ruleImplicationExpression ) + // InternalSolverLanguageParser.g:1440:2: ( (this_ConditionalExpression_0= ruleConditionalExpression | this_LetExpression_1= ruleLetExpression | (this_DisjunctiveExpression_2= ruleDisjunctiveExpression ( () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) )? ) ) ) + // InternalSolverLanguageParser.g:1441:2: (this_ConditionalExpression_0= ruleConditionalExpression | this_LetExpression_1= ruleLetExpression | (this_DisjunctiveExpression_2= ruleDisjunctiveExpression ( () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) )? ) ) { - // InternalSolverLanguageParser.g:1065:2: (this_IfElse_0= ruleIfElse | this_Let_1= ruleLet | this_ImplicationExpression_2= ruleImplicationExpression ) - int alt9=3; + // InternalSolverLanguageParser.g:1441:2: (this_ConditionalExpression_0= ruleConditionalExpression | this_LetExpression_1= ruleLetExpression | (this_DisjunctiveExpression_2= ruleDisjunctiveExpression ( () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) )? ) ) + int alt16=3; switch ( input.LA(1) ) { case If: { - alt9=1; + alt16=1; } break; case Let: { - alt9=2; + alt16=2; } break; - case Current: case Unknown: - case Exists: - case Forall: + case Object: case Count: case Empty: case Error: case False: - case Must: case True: case Inf: - case May: case ExclamationMark: case LeftParenthesis: case PlusSign: case HyphenMinus: + case QuestionMark: case LeftSquareBracket: + case Tilde: case RULE_STRING: case RULE_QUOTED_ID: case RULE_ID: case RULE_INT: { - alt9=3; + alt16=3; } break; default: NoViableAltException nvae = - new NoViableAltException("", 9, 0, input); + new NoViableAltException("", 16, 0, input); throw nvae; } - switch (alt9) { + switch (alt16) { case 1 : - // InternalSolverLanguageParser.g:1066:3: this_IfElse_0= ruleIfElse + // InternalSolverLanguageParser.g:1442:3: this_ConditionalExpression_0= ruleConditionalExpression { - newCompositeNode(grammarAccess.getExpressionAccess().getIfElseParserRuleCall_0()); + newCompositeNode(grammarAccess.getExpressionAccess().getConditionalExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - this_IfElse_0=ruleIfElse(); + this_ConditionalExpression_0=ruleConditionalExpression(); state._fsp--; - current = this_IfElse_0; + current = this_ConditionalExpression_0; afterParserOrEnumRuleCall(); } break; case 2 : - // InternalSolverLanguageParser.g:1075:3: this_Let_1= ruleLet + // InternalSolverLanguageParser.g:1451:3: this_LetExpression_1= ruleLetExpression { - newCompositeNode(grammarAccess.getExpressionAccess().getLetParserRuleCall_1()); + newCompositeNode(grammarAccess.getExpressionAccess().getLetExpressionParserRuleCall_1()); pushFollow(FOLLOW_2); - this_Let_1=ruleLet(); + this_LetExpression_1=ruleLetExpression(); state._fsp--; - current = this_Let_1; + current = this_LetExpression_1; afterParserOrEnumRuleCall(); } break; case 3 : - // InternalSolverLanguageParser.g:1084:3: this_ImplicationExpression_2= ruleImplicationExpression + // InternalSolverLanguageParser.g:1460:3: (this_DisjunctiveExpression_2= ruleDisjunctiveExpression ( () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) )? ) + { + // InternalSolverLanguageParser.g:1460:3: (this_DisjunctiveExpression_2= ruleDisjunctiveExpression ( () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) )? ) + // InternalSolverLanguageParser.g:1461:4: this_DisjunctiveExpression_2= ruleDisjunctiveExpression ( () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) )? { - newCompositeNode(grammarAccess.getExpressionAccess().getImplicationExpressionParserRuleCall_2()); - - pushFollow(FOLLOW_2); - this_ImplicationExpression_2=ruleImplicationExpression(); + newCompositeNode(grammarAccess.getExpressionAccess().getDisjunctiveExpressionParserRuleCall_2_0()); + + pushFollow(FOLLOW_24); + this_DisjunctiveExpression_2=ruleDisjunctiveExpression(); state._fsp--; - current = this_ImplicationExpression_2; - afterParserOrEnumRuleCall(); - + current = this_DisjunctiveExpression_2; + afterParserOrEnumRuleCall(); + + // InternalSolverLanguageParser.g:1469:4: ( () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) )? + int alt15=2; + int LA15_0 = input.LA(1); + + if ( (LA15_0==EqualsSignGreaterThanSign) ) { + alt15=1; + } + switch (alt15) { + case 1 : + // InternalSolverLanguageParser.g:1470:5: () otherlv_4= EqualsSignGreaterThanSign ( (lv_body_5_0= ruleDisjunctiveExpression ) ) + { + // InternalSolverLanguageParser.g:1470:5: () + // InternalSolverLanguageParser.g:1471:6: + { + + current = forceCreateModelElementAndSet( + grammarAccess.getExpressionAccess().getForallConditionAction_2_1_0(), + current); + + + } + + otherlv_4=(Token)match(input,EqualsSignGreaterThanSign,FOLLOW_10); + + newLeafNode(otherlv_4, grammarAccess.getExpressionAccess().getEqualsSignGreaterThanSignKeyword_2_1_1()); + + // InternalSolverLanguageParser.g:1481:5: ( (lv_body_5_0= ruleDisjunctiveExpression ) ) + // InternalSolverLanguageParser.g:1482:6: (lv_body_5_0= ruleDisjunctiveExpression ) + { + // InternalSolverLanguageParser.g:1482:6: (lv_body_5_0= ruleDisjunctiveExpression ) + // InternalSolverLanguageParser.g:1483:7: lv_body_5_0= ruleDisjunctiveExpression + { + + newCompositeNode(grammarAccess.getExpressionAccess().getBodyDisjunctiveExpressionParserRuleCall_2_1_2_0()); + + pushFollow(FOLLOW_2); + lv_body_5_0=ruleDisjunctiveExpression(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getExpressionRule()); + } + set( + current, + "body", + lv_body_5_0, + "org.eclipse.viatra.solver.language.SolverLanguage.DisjunctiveExpression"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + } + + + } + } break; @@ -2689,25 +3740,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleExpression" - // $ANTLR start "entryRuleIfElse" - // InternalSolverLanguageParser.g:1096:1: entryRuleIfElse returns [EObject current=null] : iv_ruleIfElse= ruleIfElse EOF ; - public final EObject entryRuleIfElse() throws RecognitionException { + // $ANTLR start "entryRuleConditionalExpression" + // InternalSolverLanguageParser.g:1506:1: entryRuleConditionalExpression returns [EObject current=null] : iv_ruleConditionalExpression= ruleConditionalExpression EOF ; + public final EObject entryRuleConditionalExpression() throws RecognitionException { EObject current = null; - EObject iv_ruleIfElse = null; + EObject iv_ruleConditionalExpression = null; try { - // InternalSolverLanguageParser.g:1096:47: (iv_ruleIfElse= ruleIfElse EOF ) - // InternalSolverLanguageParser.g:1097:2: iv_ruleIfElse= ruleIfElse EOF + // InternalSolverLanguageParser.g:1506:62: (iv_ruleConditionalExpression= ruleConditionalExpression EOF ) + // InternalSolverLanguageParser.g:1507:2: iv_ruleConditionalExpression= ruleConditionalExpression EOF { - newCompositeNode(grammarAccess.getIfElseRule()); + newCompositeNode(grammarAccess.getConditionalExpressionRule()); pushFollow(FOLLOW_1); - iv_ruleIfElse=ruleIfElse(); + iv_ruleConditionalExpression=ruleConditionalExpression(); state._fsp--; - current =iv_ruleIfElse; + current =iv_ruleConditionalExpression; match(input,EOF,FOLLOW_2); } @@ -2722,12 +3773,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleIfElse" + // $ANTLR end "entryRuleConditionalExpression" - // $ANTLR start "ruleIfElse" - // InternalSolverLanguageParser.g:1103:1: ruleIfElse returns [EObject current=null] : (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) ; - public final EObject ruleIfElse() throws RecognitionException { + // $ANTLR start "ruleConditionalExpression" + // InternalSolverLanguageParser.g:1513:1: ruleConditionalExpression returns [EObject current=null] : (otherlv_0= If ( (lv_condition_1_0= ruleDisjunctiveExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) ; + public final EObject ruleConditionalExpression() throws RecognitionException { EObject current = null; Token otherlv_0=null; @@ -2744,39 +3795,39 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1109:2: ( (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) ) - // InternalSolverLanguageParser.g:1110:2: (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:1519:2: ( (otherlv_0= If ( (lv_condition_1_0= ruleDisjunctiveExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) ) + // InternalSolverLanguageParser.g:1520:2: (otherlv_0= If ( (lv_condition_1_0= ruleDisjunctiveExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) { - // InternalSolverLanguageParser.g:1110:2: (otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:1111:3: otherlv_0= If ( (lv_condition_1_0= ruleExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:1520:2: (otherlv_0= If ( (lv_condition_1_0= ruleDisjunctiveExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:1521:3: otherlv_0= If ( (lv_condition_1_0= ruleDisjunctiveExpression ) ) otherlv_2= Then ( (lv_then_3_0= ruleExpression ) ) otherlv_4= Else ( (lv_else_5_0= ruleExpression ) ) { - otherlv_0=(Token)match(input,If,FOLLOW_6); + otherlv_0=(Token)match(input,If,FOLLOW_10); - newLeafNode(otherlv_0, grammarAccess.getIfElseAccess().getIfKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getConditionalExpressionAccess().getIfKeyword_0()); - // InternalSolverLanguageParser.g:1115:3: ( (lv_condition_1_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:1116:4: (lv_condition_1_0= ruleExpression ) + // InternalSolverLanguageParser.g:1525:3: ( (lv_condition_1_0= ruleDisjunctiveExpression ) ) + // InternalSolverLanguageParser.g:1526:4: (lv_condition_1_0= ruleDisjunctiveExpression ) { - // InternalSolverLanguageParser.g:1116:4: (lv_condition_1_0= ruleExpression ) - // InternalSolverLanguageParser.g:1117:5: lv_condition_1_0= ruleExpression + // InternalSolverLanguageParser.g:1526:4: (lv_condition_1_0= ruleDisjunctiveExpression ) + // InternalSolverLanguageParser.g:1527:5: lv_condition_1_0= ruleDisjunctiveExpression { - newCompositeNode(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getConditionalExpressionAccess().getConditionDisjunctiveExpressionParserRuleCall_1_0()); - pushFollow(FOLLOW_21); - lv_condition_1_0=ruleExpression(); + pushFollow(FOLLOW_25); + lv_condition_1_0=ruleDisjunctiveExpression(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getIfElseRule()); + current = createModelElementForParent(grammarAccess.getConditionalExpressionRule()); } set( current, "condition", lv_condition_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + "org.eclipse.viatra.solver.language.SolverLanguage.DisjunctiveExpression"); afterParserOrEnumRuleCall(); @@ -2785,27 +3836,27 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,Then,FOLLOW_6); + otherlv_2=(Token)match(input,Then,FOLLOW_10); - newLeafNode(otherlv_2, grammarAccess.getIfElseAccess().getThenKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getConditionalExpressionAccess().getThenKeyword_2()); - // InternalSolverLanguageParser.g:1138:3: ( (lv_then_3_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:1139:4: (lv_then_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:1548:3: ( (lv_then_3_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:1549:4: (lv_then_3_0= ruleExpression ) { - // InternalSolverLanguageParser.g:1139:4: (lv_then_3_0= ruleExpression ) - // InternalSolverLanguageParser.g:1140:5: lv_then_3_0= ruleExpression + // InternalSolverLanguageParser.g:1549:4: (lv_then_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:1550:5: lv_then_3_0= ruleExpression { - newCompositeNode(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getConditionalExpressionAccess().getThenExpressionParserRuleCall_3_0()); - pushFollow(FOLLOW_22); + pushFollow(FOLLOW_26); lv_then_3_0=ruleExpression(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getIfElseRule()); + current = createModelElementForParent(grammarAccess.getConditionalExpressionRule()); } set( current, @@ -2820,18 +3871,18 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_4=(Token)match(input,Else,FOLLOW_6); + otherlv_4=(Token)match(input,Else,FOLLOW_10); - newLeafNode(otherlv_4, grammarAccess.getIfElseAccess().getElseKeyword_4()); + newLeafNode(otherlv_4, grammarAccess.getConditionalExpressionAccess().getElseKeyword_4()); - // InternalSolverLanguageParser.g:1161:3: ( (lv_else_5_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:1162:4: (lv_else_5_0= ruleExpression ) + // InternalSolverLanguageParser.g:1571:3: ( (lv_else_5_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:1572:4: (lv_else_5_0= ruleExpression ) { - // InternalSolverLanguageParser.g:1162:4: (lv_else_5_0= ruleExpression ) - // InternalSolverLanguageParser.g:1163:5: lv_else_5_0= ruleExpression + // InternalSolverLanguageParser.g:1572:4: (lv_else_5_0= ruleExpression ) + // InternalSolverLanguageParser.g:1573:5: lv_else_5_0= ruleExpression { - newCompositeNode(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0()); + newCompositeNode(grammarAccess.getConditionalExpressionAccess().getElseExpressionParserRuleCall_5_0()); pushFollow(FOLLOW_2); lv_else_5_0=ruleExpression(); @@ -2840,7 +3891,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { if (current==null) { - current = createModelElementForParent(grammarAccess.getIfElseRule()); + current = createModelElementForParent(grammarAccess.getConditionalExpressionRule()); } set( current, @@ -2874,28 +3925,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleIfElse" + // $ANTLR end "ruleConditionalExpression" - // $ANTLR start "entryRuleLet" - // InternalSolverLanguageParser.g:1184:1: entryRuleLet returns [EObject current=null] : iv_ruleLet= ruleLet EOF ; - public final EObject entryRuleLet() throws RecognitionException { + // $ANTLR start "entryRuleLetExpression" + // InternalSolverLanguageParser.g:1594:1: entryRuleLetExpression returns [EObject current=null] : iv_ruleLetExpression= ruleLetExpression EOF ; + public final EObject entryRuleLetExpression() throws RecognitionException { EObject current = null; - EObject iv_ruleLet = null; + EObject iv_ruleLetExpression = null; try { - // InternalSolverLanguageParser.g:1184:44: (iv_ruleLet= ruleLet EOF ) - // InternalSolverLanguageParser.g:1185:2: iv_ruleLet= ruleLet EOF + // InternalSolverLanguageParser.g:1594:54: (iv_ruleLetExpression= ruleLetExpression EOF ) + // InternalSolverLanguageParser.g:1595:2: iv_ruleLetExpression= ruleLetExpression EOF { - newCompositeNode(grammarAccess.getLetRule()); + newCompositeNode(grammarAccess.getLetExpressionRule()); pushFollow(FOLLOW_1); - iv_ruleLet=ruleLet(); + iv_ruleLetExpression=ruleLetExpression(); state._fsp--; - current =iv_ruleLet; + current =iv_ruleLetExpression; match(input,EOF,FOLLOW_2); } @@ -2910,12 +3961,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleLet" + // $ANTLR end "entryRuleLetExpression" - // $ANTLR start "ruleLet" - // InternalSolverLanguageParser.g:1191:1: ruleLet returns [EObject current=null] : (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) ; - public final EObject ruleLet() throws RecognitionException { + // $ANTLR start "ruleLetExpression" + // InternalSolverLanguageParser.g:1601:1: ruleLetExpression returns [EObject current=null] : (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) ; + public final EObject ruleLetExpression() throws RecognitionException { EObject current = null; Token otherlv_0=null; @@ -2932,33 +3983,33 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1197:2: ( (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) ) - // InternalSolverLanguageParser.g:1198:2: (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:1607:2: ( (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) ) + // InternalSolverLanguageParser.g:1608:2: (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) { - // InternalSolverLanguageParser.g:1198:2: (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:1199:3: otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:1608:2: (otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:1609:3: otherlv_0= Let ( (lv_bindings_1_0= ruleLetBinding ) ) (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* otherlv_4= In ( (lv_body_5_0= ruleExpression ) ) { - otherlv_0=(Token)match(input,Let,FOLLOW_8); + otherlv_0=(Token)match(input,Let,FOLLOW_3); - newLeafNode(otherlv_0, grammarAccess.getLetAccess().getLetKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getLetExpressionAccess().getLetKeyword_0()); - // InternalSolverLanguageParser.g:1203:3: ( (lv_bindings_1_0= ruleLetBinding ) ) - // InternalSolverLanguageParser.g:1204:4: (lv_bindings_1_0= ruleLetBinding ) + // InternalSolverLanguageParser.g:1613:3: ( (lv_bindings_1_0= ruleLetBinding ) ) + // InternalSolverLanguageParser.g:1614:4: (lv_bindings_1_0= ruleLetBinding ) { - // InternalSolverLanguageParser.g:1204:4: (lv_bindings_1_0= ruleLetBinding ) - // InternalSolverLanguageParser.g:1205:5: lv_bindings_1_0= ruleLetBinding + // InternalSolverLanguageParser.g:1614:4: (lv_bindings_1_0= ruleLetBinding ) + // InternalSolverLanguageParser.g:1615:5: lv_bindings_1_0= ruleLetBinding { - newCompositeNode(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_1_0()); - pushFollow(FOLLOW_23); + pushFollow(FOLLOW_27); lv_bindings_1_0=ruleLetBinding(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getLetRule()); + current = createModelElementForParent(grammarAccess.getLetExpressionRule()); } add( current, @@ -2973,42 +4024,42 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1222:3: (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* - loop10: + // InternalSolverLanguageParser.g:1632:3: (otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) )* + loop17: do { - int alt10=2; - int LA10_0 = input.LA(1); + int alt17=2; + int LA17_0 = input.LA(1); - if ( (LA10_0==Comma) ) { - alt10=1; + if ( (LA17_0==Comma) ) { + alt17=1; } - switch (alt10) { + switch (alt17) { case 1 : - // InternalSolverLanguageParser.g:1223:4: otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) + // InternalSolverLanguageParser.g:1633:4: otherlv_2= Comma ( (lv_bindings_3_0= ruleLetBinding ) ) { - otherlv_2=(Token)match(input,Comma,FOLLOW_8); + otherlv_2=(Token)match(input,Comma,FOLLOW_3); - newLeafNode(otherlv_2, grammarAccess.getLetAccess().getCommaKeyword_2_0()); + newLeafNode(otherlv_2, grammarAccess.getLetExpressionAccess().getCommaKeyword_2_0()); - // InternalSolverLanguageParser.g:1227:4: ( (lv_bindings_3_0= ruleLetBinding ) ) - // InternalSolverLanguageParser.g:1228:5: (lv_bindings_3_0= ruleLetBinding ) + // InternalSolverLanguageParser.g:1637:4: ( (lv_bindings_3_0= ruleLetBinding ) ) + // InternalSolverLanguageParser.g:1638:5: (lv_bindings_3_0= ruleLetBinding ) { - // InternalSolverLanguageParser.g:1228:5: (lv_bindings_3_0= ruleLetBinding ) - // InternalSolverLanguageParser.g:1229:6: lv_bindings_3_0= ruleLetBinding + // InternalSolverLanguageParser.g:1638:5: (lv_bindings_3_0= ruleLetBinding ) + // InternalSolverLanguageParser.g:1639:6: lv_bindings_3_0= ruleLetBinding { - newCompositeNode(grammarAccess.getLetAccess().getBindingsLetBindingParserRuleCall_2_1_0()); + newCompositeNode(grammarAccess.getLetExpressionAccess().getBindingsLetBindingParserRuleCall_2_1_0()); - pushFollow(FOLLOW_23); + pushFollow(FOLLOW_27); lv_bindings_3_0=ruleLetBinding(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getLetRule()); + current = createModelElementForParent(grammarAccess.getLetExpressionRule()); } add( current, @@ -3028,22 +4079,22 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - break loop10; + break loop17; } } while (true); - otherlv_4=(Token)match(input,In,FOLLOW_6); + otherlv_4=(Token)match(input,In,FOLLOW_10); - newLeafNode(otherlv_4, grammarAccess.getLetAccess().getInKeyword_3()); + newLeafNode(otherlv_4, grammarAccess.getLetExpressionAccess().getInKeyword_3()); - // InternalSolverLanguageParser.g:1251:3: ( (lv_body_5_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:1252:4: (lv_body_5_0= ruleExpression ) + // InternalSolverLanguageParser.g:1661:3: ( (lv_body_5_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:1662:4: (lv_body_5_0= ruleExpression ) { - // InternalSolverLanguageParser.g:1252:4: (lv_body_5_0= ruleExpression ) - // InternalSolverLanguageParser.g:1253:5: lv_body_5_0= ruleExpression + // InternalSolverLanguageParser.g:1662:4: (lv_body_5_0= ruleExpression ) + // InternalSolverLanguageParser.g:1663:5: lv_body_5_0= ruleExpression { - newCompositeNode(grammarAccess.getLetAccess().getBodyExpressionParserRuleCall_4_0()); + newCompositeNode(grammarAccess.getLetExpressionAccess().getBodyExpressionParserRuleCall_4_0()); pushFollow(FOLLOW_2); lv_body_5_0=ruleExpression(); @@ -3052,7 +4103,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { if (current==null) { - current = createModelElementForParent(grammarAccess.getLetRule()); + current = createModelElementForParent(grammarAccess.getLetExpressionRule()); } set( current, @@ -3086,11 +4137,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleLet" + // $ANTLR end "ruleLetExpression" // $ANTLR start "entryRuleLetBinding" - // InternalSolverLanguageParser.g:1274:1: entryRuleLetBinding returns [EObject current=null] : iv_ruleLetBinding= ruleLetBinding EOF ; + // InternalSolverLanguageParser.g:1684:1: entryRuleLetBinding returns [EObject current=null] : iv_ruleLetBinding= ruleLetBinding EOF ; public final EObject entryRuleLetBinding() throws RecognitionException { EObject current = null; @@ -3098,8 +4149,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1274:51: (iv_ruleLetBinding= ruleLetBinding EOF ) - // InternalSolverLanguageParser.g:1275:2: iv_ruleLetBinding= ruleLetBinding EOF + // InternalSolverLanguageParser.g:1684:51: (iv_ruleLetBinding= ruleLetBinding EOF ) + // InternalSolverLanguageParser.g:1685:2: iv_ruleLetBinding= ruleLetBinding EOF { newCompositeNode(grammarAccess.getLetBindingRule()); pushFollow(FOLLOW_1); @@ -3126,271 +4177,129 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleLetBinding" - // InternalSolverLanguageParser.g:1281:1: ruleLetBinding returns [EObject current=null] : ( ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) ) ; + // InternalSolverLanguageParser.g:1691:1: ruleLetBinding returns [EObject current=null] : ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) otherlv_2= EqualsSign ( (lv_value_3_0= ruleAdditiveExpression ) ) ) ; public final EObject ruleLetBinding() throws RecognitionException { EObject current = null; - Token otherlv_1=null; - EObject lv_variable_0_0 = null; - - EObject lv_value_2_0 = null; - - - - enterRule(); - - try { - // InternalSolverLanguageParser.g:1287:2: ( ( ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) ) ) - // InternalSolverLanguageParser.g:1288:2: ( ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) ) - { - // InternalSolverLanguageParser.g:1288:2: ( ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) ) - // InternalSolverLanguageParser.g:1289:3: ( (lv_variable_0_0= ruleVariable ) ) otherlv_1= EqualsSign ( (lv_value_2_0= ruleAdditiveExpression ) ) - { - // InternalSolverLanguageParser.g:1289:3: ( (lv_variable_0_0= ruleVariable ) ) - // InternalSolverLanguageParser.g:1290:4: (lv_variable_0_0= ruleVariable ) - { - // InternalSolverLanguageParser.g:1290:4: (lv_variable_0_0= ruleVariable ) - // InternalSolverLanguageParser.g:1291:5: lv_variable_0_0= ruleVariable - { - - newCompositeNode(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0()); - - pushFollow(FOLLOW_13); - lv_variable_0_0=ruleVariable(); - - state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getLetBindingRule()); - } - set( - current, - "variable", - lv_variable_0_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Variable"); - afterParserOrEnumRuleCall(); - - - } - - - } - - otherlv_1=(Token)match(input,EqualsSign,FOLLOW_6); - - newLeafNode(otherlv_1, grammarAccess.getLetBindingAccess().getEqualsSignKeyword_1()); - - // InternalSolverLanguageParser.g:1312:3: ( (lv_value_2_0= ruleAdditiveExpression ) ) - // InternalSolverLanguageParser.g:1313:4: (lv_value_2_0= ruleAdditiveExpression ) - { - // InternalSolverLanguageParser.g:1313:4: (lv_value_2_0= ruleAdditiveExpression ) - // InternalSolverLanguageParser.g:1314:5: lv_value_2_0= ruleAdditiveExpression - { - - newCompositeNode(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0()); - - pushFollow(FOLLOW_2); - lv_value_2_0=ruleAdditiveExpression(); - - state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getLetBindingRule()); - } - set( - current, - "value", - lv_value_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveExpression"); - afterParserOrEnumRuleCall(); - - - } - - - } - - - } - - - } - - - leaveRule(); - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end "ruleLetBinding" - - - // $ANTLR start "entryRuleImplicationExpression" - // InternalSolverLanguageParser.g:1335:1: entryRuleImplicationExpression returns [EObject current=null] : iv_ruleImplicationExpression= ruleImplicationExpression EOF ; - public final EObject entryRuleImplicationExpression() throws RecognitionException { - EObject current = null; - - EObject iv_ruleImplicationExpression = null; - - - try { - // InternalSolverLanguageParser.g:1335:62: (iv_ruleImplicationExpression= ruleImplicationExpression EOF ) - // InternalSolverLanguageParser.g:1336:2: iv_ruleImplicationExpression= ruleImplicationExpression EOF - { - newCompositeNode(grammarAccess.getImplicationExpressionRule()); - pushFollow(FOLLOW_1); - iv_ruleImplicationExpression=ruleImplicationExpression(); - - state._fsp--; - - current =iv_ruleImplicationExpression; - match(input,EOF,FOLLOW_2); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end "entryRuleImplicationExpression" - - - // $ANTLR start "ruleImplicationExpression" - // InternalSolverLanguageParser.g:1342:1: ruleImplicationExpression returns [EObject current=null] : (this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? ) ; - public final EObject ruleImplicationExpression() throws RecognitionException { - EObject current = null; - - EObject this_DisjunctiveExpression_0 = null; - - Enumerator lv_op_2_0 = null; - - EObject lv_right_3_0 = null; + Token lv_name_1_0=null; + Token otherlv_2=null; + EObject lv_value_3_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:1348:2: ( (this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? ) ) - // InternalSolverLanguageParser.g:1349:2: (this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? ) + // InternalSolverLanguageParser.g:1697:2: ( ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) otherlv_2= EqualsSign ( (lv_value_3_0= ruleAdditiveExpression ) ) ) ) + // InternalSolverLanguageParser.g:1698:2: ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) otherlv_2= EqualsSign ( (lv_value_3_0= ruleAdditiveExpression ) ) ) { - // InternalSolverLanguageParser.g:1349:2: (this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? ) - // InternalSolverLanguageParser.g:1350:3: this_DisjunctiveExpression_0= ruleDisjunctiveExpression ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? + // InternalSolverLanguageParser.g:1698:2: ( ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) otherlv_2= EqualsSign ( (lv_value_3_0= ruleAdditiveExpression ) ) ) + // InternalSolverLanguageParser.g:1699:3: ( ( ruleQualifiedName ) )? ( (lv_name_1_0= RULE_ID ) ) otherlv_2= EqualsSign ( (lv_value_3_0= ruleAdditiveExpression ) ) { + // InternalSolverLanguageParser.g:1699:3: ( ( ruleQualifiedName ) )? + int alt18=2; + int LA18_0 = input.LA(1); - newCompositeNode(grammarAccess.getImplicationExpressionAccess().getDisjunctiveExpressionParserRuleCall_0()); - - pushFollow(FOLLOW_24); - this_DisjunctiveExpression_0=ruleDisjunctiveExpression(); - - state._fsp--; - - - current = this_DisjunctiveExpression_0; - afterParserOrEnumRuleCall(); - - // InternalSolverLanguageParser.g:1358:3: ( () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) )? - int alt11=2; - int LA11_0 = input.LA(1); - - if ( (LA11_0==EqualsSignGreaterThanSign) ) { - alt11=1; + if ( (LA18_0==RULE_ID) ) { + int LA18_1 = input.LA(2); + + if ( (LA18_1==ColonColon||LA18_1==RULE_ID) ) { + alt18=1; + } } - switch (alt11) { + else if ( (LA18_0==Object||LA18_0==RULE_QUOTED_ID) ) { + alt18=1; + } + switch (alt18) { case 1 : - // InternalSolverLanguageParser.g:1359:4: () ( (lv_op_2_0= ruleImplicationOperator ) ) ( (lv_right_3_0= ruleImplicationExpression ) ) + // InternalSolverLanguageParser.g:1700:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:1359:4: () - // InternalSolverLanguageParser.g:1360:5: + // InternalSolverLanguageParser.g:1700:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:1701:5: ruleQualifiedName { - current = forceCreateModelElementAndSet( - grammarAccess.getImplicationExpressionAccess().getBinaryExpressionLeftAction_1_0(), - current); + if (current==null) { + current = createModelElement(grammarAccess.getLetBindingRule()); + } - } - - // InternalSolverLanguageParser.g:1366:4: ( (lv_op_2_0= ruleImplicationOperator ) ) - // InternalSolverLanguageParser.g:1367:5: (lv_op_2_0= ruleImplicationOperator ) - { - // InternalSolverLanguageParser.g:1367:5: (lv_op_2_0= ruleImplicationOperator ) - // InternalSolverLanguageParser.g:1368:6: lv_op_2_0= ruleImplicationOperator - { - - newCompositeNode(grammarAccess.getImplicationExpressionAccess().getOpImplicationOperatorEnumRuleCall_1_1_0()); - - pushFollow(FOLLOW_6); - lv_op_2_0=ruleImplicationOperator(); + newCompositeNode(grammarAccess.getLetBindingAccess().getTypeSymbolCrossReference_0_0()); + + pushFollow(FOLLOW_28); + ruleQualifiedName(); state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getImplicationExpressionRule()); - } - set( - current, - "op", - lv_op_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.ImplicationOperator"); - afterParserOrEnumRuleCall(); - + afterParserOrEnumRuleCall(); + } } + break; - // InternalSolverLanguageParser.g:1385:4: ( (lv_right_3_0= ruleImplicationExpression ) ) - // InternalSolverLanguageParser.g:1386:5: (lv_right_3_0= ruleImplicationExpression ) - { - // InternalSolverLanguageParser.g:1386:5: (lv_right_3_0= ruleImplicationExpression ) - // InternalSolverLanguageParser.g:1387:6: lv_right_3_0= ruleImplicationExpression - { + } - newCompositeNode(grammarAccess.getImplicationExpressionAccess().getRightImplicationExpressionParserRuleCall_1_2_0()); - - pushFollow(FOLLOW_2); - lv_right_3_0=ruleImplicationExpression(); + // InternalSolverLanguageParser.g:1715:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalSolverLanguageParser.g:1716:4: (lv_name_1_0= RULE_ID ) + { + // InternalSolverLanguageParser.g:1716:4: (lv_name_1_0= RULE_ID ) + // InternalSolverLanguageParser.g:1717:5: lv_name_1_0= RULE_ID + { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_29); - state._fsp--; + newLeafNode(lv_name_1_0, grammarAccess.getLetBindingAccess().getNameIDTerminalRuleCall_1_0()); + + if (current==null) { + current = createModelElement(grammarAccess.getLetBindingRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); + - if (current==null) { - current = createModelElementForParent(grammarAccess.getImplicationExpressionRule()); - } - set( - current, - "right", - lv_right_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.ImplicationExpression"); - afterParserOrEnumRuleCall(); - + } - } + } - } + otherlv_2=(Token)match(input,EqualsSign,FOLLOW_10); + newLeafNode(otherlv_2, grammarAccess.getLetBindingAccess().getEqualsSignKeyword_2()); + + // InternalSolverLanguageParser.g:1737:3: ( (lv_value_3_0= ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:1738:4: (lv_value_3_0= ruleAdditiveExpression ) + { + // InternalSolverLanguageParser.g:1738:4: (lv_value_3_0= ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:1739:5: lv_value_3_0= ruleAdditiveExpression + { + + newCompositeNode(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_3_0()); + + pushFollow(FOLLOW_2); + lv_value_3_0=ruleAdditiveExpression(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getLetBindingRule()); + } + set( + current, + "value", + lv_value_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveExpression"); + afterParserOrEnumRuleCall(); + + + } - } - break; } @@ -3413,11 +4322,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleImplicationExpression" + // $ANTLR end "ruleLetBinding" // $ANTLR start "entryRuleDisjunctiveExpression" - // InternalSolverLanguageParser.g:1409:1: entryRuleDisjunctiveExpression returns [EObject current=null] : iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF ; + // InternalSolverLanguageParser.g:1760:1: entryRuleDisjunctiveExpression returns [EObject current=null] : iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF ; public final EObject entryRuleDisjunctiveExpression() throws RecognitionException { EObject current = null; @@ -3425,8 +4334,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1409:62: (iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF ) - // InternalSolverLanguageParser.g:1410:2: iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF + // InternalSolverLanguageParser.g:1760:62: (iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF ) + // InternalSolverLanguageParser.g:1761:2: iv_ruleDisjunctiveExpression= ruleDisjunctiveExpression EOF { newCompositeNode(grammarAccess.getDisjunctiveExpressionRule()); pushFollow(FOLLOW_1); @@ -3453,7 +4362,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleDisjunctiveExpression" - // InternalSolverLanguageParser.g:1416:1: ruleDisjunctiveExpression returns [EObject current=null] : (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) ; + // InternalSolverLanguageParser.g:1767:1: ruleDisjunctiveExpression returns [EObject current=null] : (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) ; public final EObject ruleDisjunctiveExpression() throws RecognitionException { EObject current = null; @@ -3473,16 +4382,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1422:2: ( (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) ) - // InternalSolverLanguageParser.g:1423:2: (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) + // InternalSolverLanguageParser.g:1773:2: ( (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) ) + // InternalSolverLanguageParser.g:1774:2: (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) { - // InternalSolverLanguageParser.g:1423:2: (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) - // InternalSolverLanguageParser.g:1424:3: this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? + // InternalSolverLanguageParser.g:1774:2: (this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? ) + // InternalSolverLanguageParser.g:1775:3: this_ConjunctiveExpression_0= ruleConjunctiveExpression ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? { newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getConjunctiveExpressionParserRuleCall_0()); - pushFollow(FOLLOW_25); + pushFollow(FOLLOW_30); this_ConjunctiveExpression_0=ruleConjunctiveExpression(); state._fsp--; @@ -3491,25 +4400,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current = this_ConjunctiveExpression_0; afterParserOrEnumRuleCall(); - // InternalSolverLanguageParser.g:1432:3: ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? - int alt14=3; - int LA14_0 = input.LA(1); + // InternalSolverLanguageParser.g:1783:3: ( ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) | ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) )? + int alt21=3; + int LA21_0 = input.LA(1); - if ( (LA14_0==Semicolon) ) { - alt14=1; + if ( (LA21_0==Semicolon) ) { + alt21=1; } - else if ( (LA14_0==HyphenMinusGreaterThanSign) ) { - alt14=2; + else if ( (LA21_0==HyphenMinusGreaterThanSign) ) { + alt21=2; } - switch (alt14) { + switch (alt21) { case 1 : - // InternalSolverLanguageParser.g:1433:4: ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) + // InternalSolverLanguageParser.g:1784:4: ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) { - // InternalSolverLanguageParser.g:1433:4: ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) - // InternalSolverLanguageParser.g:1434:5: () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ + // InternalSolverLanguageParser.g:1784:4: ( () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ ) + // InternalSolverLanguageParser.g:1785:5: () (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ { - // InternalSolverLanguageParser.g:1434:5: () - // InternalSolverLanguageParser.g:1435:6: + // InternalSolverLanguageParser.g:1785:5: () + // InternalSolverLanguageParser.g:1786:6: { current = forceCreateModelElementAndAdd( @@ -3519,36 +4428,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1441:5: (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ - int cnt12=0; - loop12: + // InternalSolverLanguageParser.g:1792:5: (otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) )+ + int cnt19=0; + loop19: do { - int alt12=2; - int LA12_0 = input.LA(1); + int alt19=2; + int LA19_0 = input.LA(1); - if ( (LA12_0==Semicolon) ) { - alt12=1; + if ( (LA19_0==Semicolon) ) { + alt19=1; } - switch (alt12) { + switch (alt19) { case 1 : - // InternalSolverLanguageParser.g:1442:6: otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:1793:6: otherlv_2= Semicolon ( (lv_children_3_0= ruleConjunctiveExpression ) ) { - otherlv_2=(Token)match(input,Semicolon,FOLLOW_6); + otherlv_2=(Token)match(input,Semicolon,FOLLOW_10); newLeafNode(otherlv_2, grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_0_1_0()); - // InternalSolverLanguageParser.g:1446:6: ( (lv_children_3_0= ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:1447:7: (lv_children_3_0= ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:1797:6: ( (lv_children_3_0= ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:1798:7: (lv_children_3_0= ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:1447:7: (lv_children_3_0= ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:1448:8: lv_children_3_0= ruleConjunctiveExpression + // InternalSolverLanguageParser.g:1798:7: (lv_children_3_0= ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:1799:8: lv_children_3_0= ruleConjunctiveExpression { newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getChildrenConjunctiveExpressionParserRuleCall_1_0_1_1_0()); - pushFollow(FOLLOW_26); + pushFollow(FOLLOW_31); lv_children_3_0=ruleConjunctiveExpression(); state._fsp--; @@ -3575,12 +4484,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - if ( cnt12 >= 1 ) break loop12; + if ( cnt19 >= 1 ) break loop19; EarlyExitException eee = - new EarlyExitException(12, input); + new EarlyExitException(19, input); throw eee; } - cnt12++; + cnt19++; } while (true); @@ -3590,13 +4499,13 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:1468:4: ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) + // InternalSolverLanguageParser.g:1819:4: ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) { - // InternalSolverLanguageParser.g:1468:4: ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) - // InternalSolverLanguageParser.g:1469:5: () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* + // InternalSolverLanguageParser.g:1819:4: ( () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* ) + // InternalSolverLanguageParser.g:1820:5: () otherlv_5= HyphenMinusGreaterThanSign ( (lv_body_6_0= ruleConjunctiveExpression ) ) () (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* { - // InternalSolverLanguageParser.g:1469:5: () - // InternalSolverLanguageParser.g:1470:6: + // InternalSolverLanguageParser.g:1820:5: () + // InternalSolverLanguageParser.g:1821:6: { current = forceCreateModelElementAndSet( @@ -3606,20 +4515,20 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_5=(Token)match(input,HyphenMinusGreaterThanSign,FOLLOW_6); + otherlv_5=(Token)match(input,HyphenMinusGreaterThanSign,FOLLOW_10); newLeafNode(otherlv_5, grammarAccess.getDisjunctiveExpressionAccess().getHyphenMinusGreaterThanSignKeyword_1_1_1()); - // InternalSolverLanguageParser.g:1480:5: ( (lv_body_6_0= ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:1481:6: (lv_body_6_0= ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:1831:5: ( (lv_body_6_0= ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:1832:6: (lv_body_6_0= ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:1481:6: (lv_body_6_0= ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:1482:7: lv_body_6_0= ruleConjunctiveExpression + // InternalSolverLanguageParser.g:1832:6: (lv_body_6_0= ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:1833:7: lv_body_6_0= ruleConjunctiveExpression { newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getBodyConjunctiveExpressionParserRuleCall_1_1_2_0()); - pushFollow(FOLLOW_26); + pushFollow(FOLLOW_31); lv_body_6_0=ruleConjunctiveExpression(); state._fsp--; @@ -3641,8 +4550,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1499:5: () - // InternalSolverLanguageParser.g:1500:6: + // InternalSolverLanguageParser.g:1850:5: () + // InternalSolverLanguageParser.g:1851:6: { current = forceCreateModelElementAndAdd( @@ -3652,35 +4561,35 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1506:5: (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* - loop13: + // InternalSolverLanguageParser.g:1857:5: (otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) )* + loop20: do { - int alt13=2; - int LA13_0 = input.LA(1); + int alt20=2; + int LA20_0 = input.LA(1); - if ( (LA13_0==Semicolon) ) { - alt13=1; + if ( (LA20_0==Semicolon) ) { + alt20=1; } - switch (alt13) { + switch (alt20) { case 1 : - // InternalSolverLanguageParser.g:1507:6: otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) + // InternalSolverLanguageParser.g:1858:6: otherlv_8= Semicolon ( (lv_cases_9_0= ruleCase ) ) { - otherlv_8=(Token)match(input,Semicolon,FOLLOW_6); + otherlv_8=(Token)match(input,Semicolon,FOLLOW_10); newLeafNode(otherlv_8, grammarAccess.getDisjunctiveExpressionAccess().getSemicolonKeyword_1_1_4_0()); - // InternalSolverLanguageParser.g:1511:6: ( (lv_cases_9_0= ruleCase ) ) - // InternalSolverLanguageParser.g:1512:7: (lv_cases_9_0= ruleCase ) + // InternalSolverLanguageParser.g:1862:6: ( (lv_cases_9_0= ruleCase ) ) + // InternalSolverLanguageParser.g:1863:7: (lv_cases_9_0= ruleCase ) { - // InternalSolverLanguageParser.g:1512:7: (lv_cases_9_0= ruleCase ) - // InternalSolverLanguageParser.g:1513:8: lv_cases_9_0= ruleCase + // InternalSolverLanguageParser.g:1863:7: (lv_cases_9_0= ruleCase ) + // InternalSolverLanguageParser.g:1864:8: lv_cases_9_0= ruleCase { newCompositeNode(grammarAccess.getDisjunctiveExpressionAccess().getCasesCaseParserRuleCall_1_1_4_1_0()); - pushFollow(FOLLOW_26); + pushFollow(FOLLOW_31); lv_cases_9_0=ruleCase(); state._fsp--; @@ -3707,7 +4616,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - break loop13; + break loop20; } } while (true); @@ -3743,7 +4652,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleCase" - // InternalSolverLanguageParser.g:1537:1: entryRuleCase returns [EObject current=null] : iv_ruleCase= ruleCase EOF ; + // InternalSolverLanguageParser.g:1888:1: entryRuleCase returns [EObject current=null] : iv_ruleCase= ruleCase EOF ; public final EObject entryRuleCase() throws RecognitionException { EObject current = null; @@ -3751,8 +4660,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1537:45: (iv_ruleCase= ruleCase EOF ) - // InternalSolverLanguageParser.g:1538:2: iv_ruleCase= ruleCase EOF + // InternalSolverLanguageParser.g:1888:45: (iv_ruleCase= ruleCase EOF ) + // InternalSolverLanguageParser.g:1889:2: iv_ruleCase= ruleCase EOF { newCompositeNode(grammarAccess.getCaseRule()); pushFollow(FOLLOW_1); @@ -3779,7 +4688,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleCase" - // InternalSolverLanguageParser.g:1544:1: ruleCase returns [EObject current=null] : ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) ; + // InternalSolverLanguageParser.g:1895:1: ruleCase returns [EObject current=null] : ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) ; public final EObject ruleCase() throws RecognitionException { EObject current = null; @@ -3793,22 +4702,22 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1550:2: ( ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) ) - // InternalSolverLanguageParser.g:1551:2: ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) + // InternalSolverLanguageParser.g:1901:2: ( ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) ) + // InternalSolverLanguageParser.g:1902:2: ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) { - // InternalSolverLanguageParser.g:1551:2: ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) - // InternalSolverLanguageParser.g:1552:3: ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:1902:2: ( ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) ) + // InternalSolverLanguageParser.g:1903:3: ( (lv_condition_0_0= ruleConjunctiveExpression ) ) otherlv_1= HyphenMinusGreaterThanSign ( (lv_body_2_0= ruleConjunctiveExpression ) ) { - // InternalSolverLanguageParser.g:1552:3: ( (lv_condition_0_0= ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:1553:4: (lv_condition_0_0= ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:1903:3: ( (lv_condition_0_0= ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:1904:4: (lv_condition_0_0= ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:1553:4: (lv_condition_0_0= ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:1554:5: lv_condition_0_0= ruleConjunctiveExpression + // InternalSolverLanguageParser.g:1904:4: (lv_condition_0_0= ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:1905:5: lv_condition_0_0= ruleConjunctiveExpression { newCompositeNode(grammarAccess.getCaseAccess().getConditionConjunctiveExpressionParserRuleCall_0_0()); - pushFollow(FOLLOW_27); + pushFollow(FOLLOW_32); lv_condition_0_0=ruleConjunctiveExpression(); state._fsp--; @@ -3830,15 +4739,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_1=(Token)match(input,HyphenMinusGreaterThanSign,FOLLOW_6); + otherlv_1=(Token)match(input,HyphenMinusGreaterThanSign,FOLLOW_10); newLeafNode(otherlv_1, grammarAccess.getCaseAccess().getHyphenMinusGreaterThanSignKeyword_1()); - // InternalSolverLanguageParser.g:1575:3: ( (lv_body_2_0= ruleConjunctiveExpression ) ) - // InternalSolverLanguageParser.g:1576:4: (lv_body_2_0= ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:1926:3: ( (lv_body_2_0= ruleConjunctiveExpression ) ) + // InternalSolverLanguageParser.g:1927:4: (lv_body_2_0= ruleConjunctiveExpression ) { - // InternalSolverLanguageParser.g:1576:4: (lv_body_2_0= ruleConjunctiveExpression ) - // InternalSolverLanguageParser.g:1577:5: lv_body_2_0= ruleConjunctiveExpression + // InternalSolverLanguageParser.g:1927:4: (lv_body_2_0= ruleConjunctiveExpression ) + // InternalSolverLanguageParser.g:1928:5: lv_body_2_0= ruleConjunctiveExpression { newCompositeNode(grammarAccess.getCaseAccess().getBodyConjunctiveExpressionParserRuleCall_2_0()); @@ -3888,7 +4797,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleConjunctiveExpression" - // InternalSolverLanguageParser.g:1598:1: entryRuleConjunctiveExpression returns [EObject current=null] : iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF ; + // InternalSolverLanguageParser.g:1949:1: entryRuleConjunctiveExpression returns [EObject current=null] : iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF ; public final EObject entryRuleConjunctiveExpression() throws RecognitionException { EObject current = null; @@ -3896,8 +4805,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1598:62: (iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF ) - // InternalSolverLanguageParser.g:1599:2: iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF + // InternalSolverLanguageParser.g:1949:62: (iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF ) + // InternalSolverLanguageParser.g:1950:2: iv_ruleConjunctiveExpression= ruleConjunctiveExpression EOF { newCompositeNode(grammarAccess.getConjunctiveExpressionRule()); pushFollow(FOLLOW_1); @@ -3924,7 +4833,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleConjunctiveExpression" - // InternalSolverLanguageParser.g:1605:1: ruleConjunctiveExpression returns [EObject current=null] : (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) ; + // InternalSolverLanguageParser.g:1956:1: ruleConjunctiveExpression returns [EObject current=null] : (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) ; public final EObject ruleConjunctiveExpression() throws RecognitionException { EObject current = null; @@ -3938,16 +4847,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1611:2: ( (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) ) - // InternalSolverLanguageParser.g:1612:2: (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) + // InternalSolverLanguageParser.g:1962:2: ( (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) ) + // InternalSolverLanguageParser.g:1963:2: (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) { - // InternalSolverLanguageParser.g:1612:2: (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) - // InternalSolverLanguageParser.g:1613:3: this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? + // InternalSolverLanguageParser.g:1963:2: (this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? ) + // InternalSolverLanguageParser.g:1964:3: this_ComparisonExpression_0= ruleComparisonExpression ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? { newCompositeNode(grammarAccess.getConjunctiveExpressionAccess().getComparisonExpressionParserRuleCall_0()); - pushFollow(FOLLOW_19); + pushFollow(FOLLOW_33); this_ComparisonExpression_0=ruleComparisonExpression(); state._fsp--; @@ -3956,19 +4865,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current = this_ComparisonExpression_0; afterParserOrEnumRuleCall(); - // InternalSolverLanguageParser.g:1621:3: ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? - int alt16=2; - int LA16_0 = input.LA(1); + // InternalSolverLanguageParser.g:1972:3: ( () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ )? + int alt23=2; + int LA23_0 = input.LA(1); - if ( (LA16_0==Comma) ) { - alt16=1; + if ( (LA23_0==Comma) ) { + alt23=1; } - switch (alt16) { + switch (alt23) { case 1 : - // InternalSolverLanguageParser.g:1622:4: () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ + // InternalSolverLanguageParser.g:1973:4: () (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ { - // InternalSolverLanguageParser.g:1622:4: () - // InternalSolverLanguageParser.g:1623:5: + // InternalSolverLanguageParser.g:1973:4: () + // InternalSolverLanguageParser.g:1974:5: { current = forceCreateModelElementAndAdd( @@ -3978,36 +4887,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1629:4: (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ - int cnt15=0; - loop15: + // InternalSolverLanguageParser.g:1980:4: (otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) )+ + int cnt22=0; + loop22: do { - int alt15=2; - int LA15_0 = input.LA(1); + int alt22=2; + int LA22_0 = input.LA(1); - if ( (LA15_0==Comma) ) { - alt15=1; + if ( (LA22_0==Comma) ) { + alt22=1; } - switch (alt15) { + switch (alt22) { case 1 : - // InternalSolverLanguageParser.g:1630:5: otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) + // InternalSolverLanguageParser.g:1981:5: otherlv_2= Comma ( (lv_children_3_0= ruleComparisonExpression ) ) { - otherlv_2=(Token)match(input,Comma,FOLLOW_6); + otherlv_2=(Token)match(input,Comma,FOLLOW_10); newLeafNode(otherlv_2, grammarAccess.getConjunctiveExpressionAccess().getCommaKeyword_1_1_0()); - // InternalSolverLanguageParser.g:1634:5: ( (lv_children_3_0= ruleComparisonExpression ) ) - // InternalSolverLanguageParser.g:1635:6: (lv_children_3_0= ruleComparisonExpression ) + // InternalSolverLanguageParser.g:1985:5: ( (lv_children_3_0= ruleComparisonExpression ) ) + // InternalSolverLanguageParser.g:1986:6: (lv_children_3_0= ruleComparisonExpression ) { - // InternalSolverLanguageParser.g:1635:6: (lv_children_3_0= ruleComparisonExpression ) - // InternalSolverLanguageParser.g:1636:7: lv_children_3_0= ruleComparisonExpression + // InternalSolverLanguageParser.g:1986:6: (lv_children_3_0= ruleComparisonExpression ) + // InternalSolverLanguageParser.g:1987:7: lv_children_3_0= ruleComparisonExpression { newCompositeNode(grammarAccess.getConjunctiveExpressionAccess().getChildrenComparisonExpressionParserRuleCall_1_1_1_0()); - pushFollow(FOLLOW_19); + pushFollow(FOLLOW_33); lv_children_3_0=ruleComparisonExpression(); state._fsp--; @@ -4034,12 +4943,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - if ( cnt15 >= 1 ) break loop15; + if ( cnt22 >= 1 ) break loop22; EarlyExitException eee = - new EarlyExitException(15, input); + new EarlyExitException(22, input); throw eee; } - cnt15++; + cnt22++; } while (true); @@ -4071,7 +4980,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleComparisonExpression" - // InternalSolverLanguageParser.g:1659:1: entryRuleComparisonExpression returns [EObject current=null] : iv_ruleComparisonExpression= ruleComparisonExpression EOF ; + // InternalSolverLanguageParser.g:2010:1: entryRuleComparisonExpression returns [EObject current=null] : iv_ruleComparisonExpression= ruleComparisonExpression EOF ; public final EObject entryRuleComparisonExpression() throws RecognitionException { EObject current = null; @@ -4079,8 +4988,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1659:61: (iv_ruleComparisonExpression= ruleComparisonExpression EOF ) - // InternalSolverLanguageParser.g:1660:2: iv_ruleComparisonExpression= ruleComparisonExpression EOF + // InternalSolverLanguageParser.g:2010:61: (iv_ruleComparisonExpression= ruleComparisonExpression EOF ) + // InternalSolverLanguageParser.g:2011:2: iv_ruleComparisonExpression= ruleComparisonExpression EOF { newCompositeNode(grammarAccess.getComparisonExpressionRule()); pushFollow(FOLLOW_1); @@ -4107,7 +5016,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleComparisonExpression" - // InternalSolverLanguageParser.g:1666:1: ruleComparisonExpression returns [EObject current=null] : (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) ; + // InternalSolverLanguageParser.g:2017:1: ruleComparisonExpression returns [EObject current=null] : (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) ; public final EObject ruleComparisonExpression() throws RecognitionException { EObject current = null; @@ -4122,16 +5031,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1672:2: ( (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) ) - // InternalSolverLanguageParser.g:1673:2: (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) + // InternalSolverLanguageParser.g:2023:2: ( (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) ) + // InternalSolverLanguageParser.g:2024:2: (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) { - // InternalSolverLanguageParser.g:1673:2: (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) - // InternalSolverLanguageParser.g:1674:3: this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? + // InternalSolverLanguageParser.g:2024:2: (this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? ) + // InternalSolverLanguageParser.g:2025:3: this_AdditiveExpression_0= ruleAdditiveExpression ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? { newCompositeNode(grammarAccess.getComparisonExpressionAccess().getAdditiveExpressionParserRuleCall_0()); - pushFollow(FOLLOW_28); + pushFollow(FOLLOW_34); this_AdditiveExpression_0=ruleAdditiveExpression(); state._fsp--; @@ -4140,38 +5049,38 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current = this_AdditiveExpression_0; afterParserOrEnumRuleCall(); - // InternalSolverLanguageParser.g:1682:3: ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? - int alt17=2; - int LA17_0 = input.LA(1); + // InternalSolverLanguageParser.g:2033:3: ( () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) )? + int alt24=2; + int LA24_0 = input.LA(1); - if ( (LA17_0==ExclamationMarkEqualsSign||(LA17_0>=LessThanSignEqualsSign && LA17_0<=EqualsSignEqualsSign)||LA17_0==GreaterThanSignEqualsSign||LA17_0==In||LA17_0==LessThanSign||LA17_0==GreaterThanSign) ) { - alt17=1; + if ( (LA24_0==ExclamationMarkEqualsSign||(LA24_0>=LessThanSignEqualsSign && LA24_0<=EqualsSignEqualsSign)||LA24_0==GreaterThanSignEqualsSign||LA24_0==In||LA24_0==LessThanSign||LA24_0==GreaterThanSign) ) { + alt24=1; } - switch (alt17) { + switch (alt24) { case 1 : - // InternalSolverLanguageParser.g:1683:4: () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:2034:4: () ( (lv_op_2_0= ruleComparisonOperator ) ) ( (lv_right_3_0= ruleAdditiveExpression ) ) { - // InternalSolverLanguageParser.g:1683:4: () - // InternalSolverLanguageParser.g:1684:5: + // InternalSolverLanguageParser.g:2034:4: () + // InternalSolverLanguageParser.g:2035:5: { current = forceCreateModelElementAndSet( - grammarAccess.getComparisonExpressionAccess().getComparisonLeftAction_1_0(), + grammarAccess.getComparisonExpressionAccess().getBinaryExpressionLeftAction_1_0(), current); } - // InternalSolverLanguageParser.g:1690:4: ( (lv_op_2_0= ruleComparisonOperator ) ) - // InternalSolverLanguageParser.g:1691:5: (lv_op_2_0= ruleComparisonOperator ) + // InternalSolverLanguageParser.g:2041:4: ( (lv_op_2_0= ruleComparisonOperator ) ) + // InternalSolverLanguageParser.g:2042:5: (lv_op_2_0= ruleComparisonOperator ) { - // InternalSolverLanguageParser.g:1691:5: (lv_op_2_0= ruleComparisonOperator ) - // InternalSolverLanguageParser.g:1692:6: lv_op_2_0= ruleComparisonOperator + // InternalSolverLanguageParser.g:2042:5: (lv_op_2_0= ruleComparisonOperator ) + // InternalSolverLanguageParser.g:2043:6: lv_op_2_0= ruleComparisonOperator { newCompositeNode(grammarAccess.getComparisonExpressionAccess().getOpComparisonOperatorEnumRuleCall_1_1_0()); - pushFollow(FOLLOW_6); + pushFollow(FOLLOW_10); lv_op_2_0=ruleComparisonOperator(); state._fsp--; @@ -4193,11 +5102,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1709:4: ( (lv_right_3_0= ruleAdditiveExpression ) ) - // InternalSolverLanguageParser.g:1710:5: (lv_right_3_0= ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:2060:4: ( (lv_right_3_0= ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:2061:5: (lv_right_3_0= ruleAdditiveExpression ) { - // InternalSolverLanguageParser.g:1710:5: (lv_right_3_0= ruleAdditiveExpression ) - // InternalSolverLanguageParser.g:1711:6: lv_right_3_0= ruleAdditiveExpression + // InternalSolverLanguageParser.g:2061:5: (lv_right_3_0= ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:2062:6: lv_right_3_0= ruleAdditiveExpression { newCompositeNode(grammarAccess.getComparisonExpressionAccess().getRightAdditiveExpressionParserRuleCall_1_2_0()); @@ -4253,7 +5162,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleAdditiveExpression" - // InternalSolverLanguageParser.g:1733:1: entryRuleAdditiveExpression returns [EObject current=null] : iv_ruleAdditiveExpression= ruleAdditiveExpression EOF ; + // InternalSolverLanguageParser.g:2084:1: entryRuleAdditiveExpression returns [EObject current=null] : iv_ruleAdditiveExpression= ruleAdditiveExpression EOF ; public final EObject entryRuleAdditiveExpression() throws RecognitionException { EObject current = null; @@ -4261,8 +5170,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1733:59: (iv_ruleAdditiveExpression= ruleAdditiveExpression EOF ) - // InternalSolverLanguageParser.g:1734:2: iv_ruleAdditiveExpression= ruleAdditiveExpression EOF + // InternalSolverLanguageParser.g:2084:59: (iv_ruleAdditiveExpression= ruleAdditiveExpression EOF ) + // InternalSolverLanguageParser.g:2085:2: iv_ruleAdditiveExpression= ruleAdditiveExpression EOF { newCompositeNode(grammarAccess.getAdditiveExpressionRule()); pushFollow(FOLLOW_1); @@ -4289,7 +5198,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleAdditiveExpression" - // InternalSolverLanguageParser.g:1740:1: ruleAdditiveExpression returns [EObject current=null] : (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) ; + // InternalSolverLanguageParser.g:2091:1: ruleAdditiveExpression returns [EObject current=null] : (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) ; public final EObject ruleAdditiveExpression() throws RecognitionException { EObject current = null; @@ -4304,16 +5213,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1746:2: ( (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) ) - // InternalSolverLanguageParser.g:1747:2: (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) + // InternalSolverLanguageParser.g:2097:2: ( (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) ) + // InternalSolverLanguageParser.g:2098:2: (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) { - // InternalSolverLanguageParser.g:1747:2: (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) - // InternalSolverLanguageParser.g:1748:3: this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* + // InternalSolverLanguageParser.g:2098:2: (this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* ) + // InternalSolverLanguageParser.g:2099:3: this_MultiplicativeExpression_0= ruleMultiplicativeExpression ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* { newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getMultiplicativeExpressionParserRuleCall_0()); - pushFollow(FOLLOW_29); + pushFollow(FOLLOW_35); this_MultiplicativeExpression_0=ruleMultiplicativeExpression(); state._fsp--; @@ -4322,23 +5231,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current = this_MultiplicativeExpression_0; afterParserOrEnumRuleCall(); - // InternalSolverLanguageParser.g:1756:3: ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* - loop18: + // InternalSolverLanguageParser.g:2107:3: ( () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) )* + loop25: do { - int alt18=2; - int LA18_0 = input.LA(1); + int alt25=2; + int LA25_0 = input.LA(1); - if ( (LA18_0==PlusSign||LA18_0==HyphenMinus) ) { - alt18=1; + if ( (LA25_0==PlusSign||LA25_0==HyphenMinus) ) { + alt25=1; } - switch (alt18) { + switch (alt25) { case 1 : - // InternalSolverLanguageParser.g:1757:4: () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) + // InternalSolverLanguageParser.g:2108:4: () ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) ( (lv_right_3_0= ruleMultiplicativeExpression ) ) { - // InternalSolverLanguageParser.g:1757:4: () - // InternalSolverLanguageParser.g:1758:5: + // InternalSolverLanguageParser.g:2108:4: () + // InternalSolverLanguageParser.g:2109:5: { current = forceCreateModelElementAndSet( @@ -4348,16 +5257,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1764:4: ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) - // InternalSolverLanguageParser.g:1765:5: (lv_op_2_0= ruleAdditiveBinaryOperator ) + // InternalSolverLanguageParser.g:2115:4: ( (lv_op_2_0= ruleAdditiveBinaryOperator ) ) + // InternalSolverLanguageParser.g:2116:5: (lv_op_2_0= ruleAdditiveBinaryOperator ) { - // InternalSolverLanguageParser.g:1765:5: (lv_op_2_0= ruleAdditiveBinaryOperator ) - // InternalSolverLanguageParser.g:1766:6: lv_op_2_0= ruleAdditiveBinaryOperator + // InternalSolverLanguageParser.g:2116:5: (lv_op_2_0= ruleAdditiveBinaryOperator ) + // InternalSolverLanguageParser.g:2117:6: lv_op_2_0= ruleAdditiveBinaryOperator { newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getOpAdditiveBinaryOperatorEnumRuleCall_1_1_0()); - pushFollow(FOLLOW_6); + pushFollow(FOLLOW_10); lv_op_2_0=ruleAdditiveBinaryOperator(); state._fsp--; @@ -4379,16 +5288,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1783:4: ( (lv_right_3_0= ruleMultiplicativeExpression ) ) - // InternalSolverLanguageParser.g:1784:5: (lv_right_3_0= ruleMultiplicativeExpression ) + // InternalSolverLanguageParser.g:2134:4: ( (lv_right_3_0= ruleMultiplicativeExpression ) ) + // InternalSolverLanguageParser.g:2135:5: (lv_right_3_0= ruleMultiplicativeExpression ) { - // InternalSolverLanguageParser.g:1784:5: (lv_right_3_0= ruleMultiplicativeExpression ) - // InternalSolverLanguageParser.g:1785:6: lv_right_3_0= ruleMultiplicativeExpression + // InternalSolverLanguageParser.g:2135:5: (lv_right_3_0= ruleMultiplicativeExpression ) + // InternalSolverLanguageParser.g:2136:6: lv_right_3_0= ruleMultiplicativeExpression { newCompositeNode(grammarAccess.getAdditiveExpressionAccess().getRightMultiplicativeExpressionParserRuleCall_1_2_0()); - pushFollow(FOLLOW_29); + pushFollow(FOLLOW_35); lv_right_3_0=ruleMultiplicativeExpression(); state._fsp--; @@ -4415,7 +5324,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - break loop18; + break loop25; } } while (true); @@ -4442,7 +5351,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleMultiplicativeExpression" - // InternalSolverLanguageParser.g:1807:1: entryRuleMultiplicativeExpression returns [EObject current=null] : iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF ; + // InternalSolverLanguageParser.g:2158:1: entryRuleMultiplicativeExpression returns [EObject current=null] : iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF ; public final EObject entryRuleMultiplicativeExpression() throws RecognitionException { EObject current = null; @@ -4450,8 +5359,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1807:65: (iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF ) - // InternalSolverLanguageParser.g:1808:2: iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF + // InternalSolverLanguageParser.g:2158:65: (iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF ) + // InternalSolverLanguageParser.g:2159:2: iv_ruleMultiplicativeExpression= ruleMultiplicativeExpression EOF { newCompositeNode(grammarAccess.getMultiplicativeExpressionRule()); pushFollow(FOLLOW_1); @@ -4478,7 +5387,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleMultiplicativeExpression" - // InternalSolverLanguageParser.g:1814:1: ruleMultiplicativeExpression returns [EObject current=null] : (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) ; + // InternalSolverLanguageParser.g:2165:1: ruleMultiplicativeExpression returns [EObject current=null] : (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) ; public final EObject ruleMultiplicativeExpression() throws RecognitionException { EObject current = null; @@ -4493,16 +5402,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1820:2: ( (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) ) - // InternalSolverLanguageParser.g:1821:2: (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) + // InternalSolverLanguageParser.g:2171:2: ( (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) ) + // InternalSolverLanguageParser.g:2172:2: (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) { - // InternalSolverLanguageParser.g:1821:2: (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) - // InternalSolverLanguageParser.g:1822:3: this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* + // InternalSolverLanguageParser.g:2172:2: (this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* ) + // InternalSolverLanguageParser.g:2173:3: this_ExponentialExpression_0= ruleExponentialExpression ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* { newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getExponentialExpressionParserRuleCall_0()); - pushFollow(FOLLOW_30); + pushFollow(FOLLOW_36); this_ExponentialExpression_0=ruleExponentialExpression(); state._fsp--; @@ -4511,23 +5420,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current = this_ExponentialExpression_0; afterParserOrEnumRuleCall(); - // InternalSolverLanguageParser.g:1830:3: ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* - loop19: + // InternalSolverLanguageParser.g:2181:3: ( () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) )* + loop26: do { - int alt19=2; - int LA19_0 = input.LA(1); + int alt26=2; + int LA26_0 = input.LA(1); - if ( (LA19_0==Asterisk||LA19_0==Solidus) ) { - alt19=1; + if ( (LA26_0==Asterisk||LA26_0==Solidus) ) { + alt26=1; } - switch (alt19) { + switch (alt26) { case 1 : - // InternalSolverLanguageParser.g:1831:4: () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) + // InternalSolverLanguageParser.g:2182:4: () ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) ( (lv_right_3_0= ruleExponentialExpression ) ) { - // InternalSolverLanguageParser.g:1831:4: () - // InternalSolverLanguageParser.g:1832:5: + // InternalSolverLanguageParser.g:2182:4: () + // InternalSolverLanguageParser.g:2183:5: { current = forceCreateModelElementAndSet( @@ -4537,16 +5446,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1838:4: ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) - // InternalSolverLanguageParser.g:1839:5: (lv_op_2_0= ruleMultiplicativeBinaryOperator ) + // InternalSolverLanguageParser.g:2189:4: ( (lv_op_2_0= ruleMultiplicativeBinaryOperator ) ) + // InternalSolverLanguageParser.g:2190:5: (lv_op_2_0= ruleMultiplicativeBinaryOperator ) { - // InternalSolverLanguageParser.g:1839:5: (lv_op_2_0= ruleMultiplicativeBinaryOperator ) - // InternalSolverLanguageParser.g:1840:6: lv_op_2_0= ruleMultiplicativeBinaryOperator + // InternalSolverLanguageParser.g:2190:5: (lv_op_2_0= ruleMultiplicativeBinaryOperator ) + // InternalSolverLanguageParser.g:2191:6: lv_op_2_0= ruleMultiplicativeBinaryOperator { newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getOpMultiplicativeBinaryOperatorEnumRuleCall_1_1_0()); - pushFollow(FOLLOW_6); + pushFollow(FOLLOW_10); lv_op_2_0=ruleMultiplicativeBinaryOperator(); state._fsp--; @@ -4568,16 +5477,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1857:4: ( (lv_right_3_0= ruleExponentialExpression ) ) - // InternalSolverLanguageParser.g:1858:5: (lv_right_3_0= ruleExponentialExpression ) + // InternalSolverLanguageParser.g:2208:4: ( (lv_right_3_0= ruleExponentialExpression ) ) + // InternalSolverLanguageParser.g:2209:5: (lv_right_3_0= ruleExponentialExpression ) { - // InternalSolverLanguageParser.g:1858:5: (lv_right_3_0= ruleExponentialExpression ) - // InternalSolverLanguageParser.g:1859:6: lv_right_3_0= ruleExponentialExpression + // InternalSolverLanguageParser.g:2209:5: (lv_right_3_0= ruleExponentialExpression ) + // InternalSolverLanguageParser.g:2210:6: lv_right_3_0= ruleExponentialExpression { newCompositeNode(grammarAccess.getMultiplicativeExpressionAccess().getRightExponentialExpressionParserRuleCall_1_2_0()); - pushFollow(FOLLOW_30); + pushFollow(FOLLOW_36); lv_right_3_0=ruleExponentialExpression(); state._fsp--; @@ -4604,7 +5513,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - break loop19; + break loop26; } } while (true); @@ -4631,7 +5540,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleExponentialExpression" - // InternalSolverLanguageParser.g:1881:1: entryRuleExponentialExpression returns [EObject current=null] : iv_ruleExponentialExpression= ruleExponentialExpression EOF ; + // InternalSolverLanguageParser.g:2232:1: entryRuleExponentialExpression returns [EObject current=null] : iv_ruleExponentialExpression= ruleExponentialExpression EOF ; public final EObject entryRuleExponentialExpression() throws RecognitionException { EObject current = null; @@ -4639,8 +5548,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1881:62: (iv_ruleExponentialExpression= ruleExponentialExpression EOF ) - // InternalSolverLanguageParser.g:1882:2: iv_ruleExponentialExpression= ruleExponentialExpression EOF + // InternalSolverLanguageParser.g:2232:62: (iv_ruleExponentialExpression= ruleExponentialExpression EOF ) + // InternalSolverLanguageParser.g:2233:2: iv_ruleExponentialExpression= ruleExponentialExpression EOF { newCompositeNode(grammarAccess.getExponentialExpressionRule()); pushFollow(FOLLOW_1); @@ -4667,7 +5576,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleExponentialExpression" - // InternalSolverLanguageParser.g:1888:1: ruleExponentialExpression returns [EObject current=null] : (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) ; + // InternalSolverLanguageParser.g:2239:1: ruleExponentialExpression returns [EObject current=null] : (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) ; public final EObject ruleExponentialExpression() throws RecognitionException { EObject current = null; @@ -4682,16 +5591,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1894:2: ( (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) ) - // InternalSolverLanguageParser.g:1895:2: (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) + // InternalSolverLanguageParser.g:2245:2: ( (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) ) + // InternalSolverLanguageParser.g:2246:2: (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) { - // InternalSolverLanguageParser.g:1895:2: (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) - // InternalSolverLanguageParser.g:1896:3: this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? + // InternalSolverLanguageParser.g:2246:2: (this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? ) + // InternalSolverLanguageParser.g:2247:3: this_CastExpression_0= ruleCastExpression ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? { newCompositeNode(grammarAccess.getExponentialExpressionAccess().getCastExpressionParserRuleCall_0()); - pushFollow(FOLLOW_31); + pushFollow(FOLLOW_37); this_CastExpression_0=ruleCastExpression(); state._fsp--; @@ -4700,19 +5609,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current = this_CastExpression_0; afterParserOrEnumRuleCall(); - // InternalSolverLanguageParser.g:1904:3: ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? - int alt20=2; - int LA20_0 = input.LA(1); + // InternalSolverLanguageParser.g:2255:3: ( () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) )? + int alt27=2; + int LA27_0 = input.LA(1); - if ( (LA20_0==CircumflexAccent) ) { - alt20=1; + if ( (LA27_0==CircumflexAccent) ) { + alt27=1; } - switch (alt20) { + switch (alt27) { case 1 : - // InternalSolverLanguageParser.g:1905:4: () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) + // InternalSolverLanguageParser.g:2256:4: () ( (lv_op_2_0= ruleExponentialOp ) ) ( (lv_right_3_0= ruleCastExpression ) ) { - // InternalSolverLanguageParser.g:1905:4: () - // InternalSolverLanguageParser.g:1906:5: + // InternalSolverLanguageParser.g:2256:4: () + // InternalSolverLanguageParser.g:2257:5: { current = forceCreateModelElementAndSet( @@ -4722,16 +5631,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1912:4: ( (lv_op_2_0= ruleExponentialOp ) ) - // InternalSolverLanguageParser.g:1913:5: (lv_op_2_0= ruleExponentialOp ) + // InternalSolverLanguageParser.g:2263:4: ( (lv_op_2_0= ruleExponentialOp ) ) + // InternalSolverLanguageParser.g:2264:5: (lv_op_2_0= ruleExponentialOp ) { - // InternalSolverLanguageParser.g:1913:5: (lv_op_2_0= ruleExponentialOp ) - // InternalSolverLanguageParser.g:1914:6: lv_op_2_0= ruleExponentialOp + // InternalSolverLanguageParser.g:2264:5: (lv_op_2_0= ruleExponentialOp ) + // InternalSolverLanguageParser.g:2265:6: lv_op_2_0= ruleExponentialOp { newCompositeNode(grammarAccess.getExponentialExpressionAccess().getOpExponentialOpEnumRuleCall_1_1_0()); - pushFollow(FOLLOW_6); + pushFollow(FOLLOW_10); lv_op_2_0=ruleExponentialOp(); state._fsp--; @@ -4753,11 +5662,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:1931:4: ( (lv_right_3_0= ruleCastExpression ) ) - // InternalSolverLanguageParser.g:1932:5: (lv_right_3_0= ruleCastExpression ) + // InternalSolverLanguageParser.g:2282:4: ( (lv_right_3_0= ruleCastExpression ) ) + // InternalSolverLanguageParser.g:2283:5: (lv_right_3_0= ruleCastExpression ) { - // InternalSolverLanguageParser.g:1932:5: (lv_right_3_0= ruleCastExpression ) - // InternalSolverLanguageParser.g:1933:6: lv_right_3_0= ruleCastExpression + // InternalSolverLanguageParser.g:2283:5: (lv_right_3_0= ruleCastExpression ) + // InternalSolverLanguageParser.g:2284:6: lv_right_3_0= ruleCastExpression { newCompositeNode(grammarAccess.getExponentialExpressionAccess().getRightCastExpressionParserRuleCall_1_2_0()); @@ -4813,7 +5722,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleCastExpression" - // InternalSolverLanguageParser.g:1955:1: entryRuleCastExpression returns [EObject current=null] : iv_ruleCastExpression= ruleCastExpression EOF ; + // InternalSolverLanguageParser.g:2306:1: entryRuleCastExpression returns [EObject current=null] : iv_ruleCastExpression= ruleCastExpression EOF ; public final EObject entryRuleCastExpression() throws RecognitionException { EObject current = null; @@ -4821,8 +5730,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:1955:55: (iv_ruleCastExpression= ruleCastExpression EOF ) - // InternalSolverLanguageParser.g:1956:2: iv_ruleCastExpression= ruleCastExpression EOF + // InternalSolverLanguageParser.g:2306:55: (iv_ruleCastExpression= ruleCastExpression EOF ) + // InternalSolverLanguageParser.g:2307:2: iv_ruleCastExpression= ruleCastExpression EOF { newCompositeNode(grammarAccess.getCastExpressionRule()); pushFollow(FOLLOW_1); @@ -4849,7 +5758,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleCastExpression" - // InternalSolverLanguageParser.g:1962:1: ruleCastExpression returns [EObject current=null] : (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) ; + // InternalSolverLanguageParser.g:2313:1: ruleCastExpression returns [EObject current=null] : (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) ; public final EObject ruleCastExpression() throws RecognitionException { EObject current = null; @@ -4861,16 +5770,16 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:1968:2: ( (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) ) - // InternalSolverLanguageParser.g:1969:2: (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) + // InternalSolverLanguageParser.g:2319:2: ( (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) ) + // InternalSolverLanguageParser.g:2320:2: (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) { - // InternalSolverLanguageParser.g:1969:2: (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) - // InternalSolverLanguageParser.g:1970:3: this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? + // InternalSolverLanguageParser.g:2320:2: (this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? ) + // InternalSolverLanguageParser.g:2321:3: this_UnaryExpression_0= ruleUnaryExpression ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? { newCompositeNode(grammarAccess.getCastExpressionAccess().getUnaryExpressionParserRuleCall_0()); - pushFollow(FOLLOW_32); + pushFollow(FOLLOW_38); this_UnaryExpression_0=ruleUnaryExpression(); state._fsp--; @@ -4879,19 +5788,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current = this_UnaryExpression_0; afterParserOrEnumRuleCall(); - // InternalSolverLanguageParser.g:1978:3: ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? - int alt21=2; - int LA21_0 = input.LA(1); + // InternalSolverLanguageParser.g:2329:3: ( () otherlv_2= As ( ( ruleQualifiedName ) ) )? + int alt28=2; + int LA28_0 = input.LA(1); - if ( (LA21_0==As) ) { - alt21=1; + if ( (LA28_0==As) ) { + alt28=1; } - switch (alt21) { + switch (alt28) { case 1 : - // InternalSolverLanguageParser.g:1979:4: () otherlv_2= As ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:2330:4: () otherlv_2= As ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:1979:4: () - // InternalSolverLanguageParser.g:1980:5: + // InternalSolverLanguageParser.g:2330:4: () + // InternalSolverLanguageParser.g:2331:5: { current = forceCreateModelElementAndSet( @@ -4901,15 +5810,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,As,FOLLOW_8); + otherlv_2=(Token)match(input,As,FOLLOW_3); newLeafNode(otherlv_2, grammarAccess.getCastExpressionAccess().getAsKeyword_1_1()); - // InternalSolverLanguageParser.g:1990:4: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:1991:5: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:2341:4: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:2342:5: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:1991:5: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:1992:6: ruleQualifiedName + // InternalSolverLanguageParser.g:2342:5: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:2343:6: ruleQualifiedName { if (current==null) { @@ -4917,7 +5826,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - newCompositeNode(grammarAccess.getCastExpressionAccess().getTypeNamedElementCrossReference_1_2_0()); + newCompositeNode(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolCrossReference_1_2_0()); pushFollow(FOLLOW_2); ruleQualifiedName(); @@ -4962,7 +5871,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleUnaryExpression" - // InternalSolverLanguageParser.g:2011:1: entryRuleUnaryExpression returns [EObject current=null] : iv_ruleUnaryExpression= ruleUnaryExpression EOF ; + // InternalSolverLanguageParser.g:2362:1: entryRuleUnaryExpression returns [EObject current=null] : iv_ruleUnaryExpression= ruleUnaryExpression EOF ; public final EObject entryRuleUnaryExpression() throws RecognitionException { EObject current = null; @@ -4970,8 +5879,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2011:56: (iv_ruleUnaryExpression= ruleUnaryExpression EOF ) - // InternalSolverLanguageParser.g:2012:2: iv_ruleUnaryExpression= ruleUnaryExpression EOF + // InternalSolverLanguageParser.g:2362:56: (iv_ruleUnaryExpression= ruleUnaryExpression EOF ) + // InternalSolverLanguageParser.g:2363:2: iv_ruleUnaryExpression= ruleUnaryExpression EOF { newCompositeNode(grammarAccess.getUnaryExpressionRule()); pushFollow(FOLLOW_1); @@ -4998,11 +5907,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleUnaryExpression" - // InternalSolverLanguageParser.g:2018:1: ruleUnaryExpression returns [EObject current=null] : (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) ; + // InternalSolverLanguageParser.g:2369:1: ruleUnaryExpression returns [EObject current=null] : (this_BracedAggregateExpression_0= ruleBracedAggregateExpression | ( () ( (lv_op_2_0= ruleUnaryOperator ) ) ( (lv_body_3_0= ruleBracedAggregateExpression ) ) ) ) ; public final EObject ruleUnaryExpression() throws RecognitionException { EObject current = null; - EObject this_AggregationExpression_0 = null; + EObject this_BracedAggregateExpression_0 = null; Enumerator lv_op_2_0 = null; @@ -5013,52 +5922,52 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:2024:2: ( (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) ) - // InternalSolverLanguageParser.g:2025:2: (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) + // InternalSolverLanguageParser.g:2375:2: ( (this_BracedAggregateExpression_0= ruleBracedAggregateExpression | ( () ( (lv_op_2_0= ruleUnaryOperator ) ) ( (lv_body_3_0= ruleBracedAggregateExpression ) ) ) ) ) + // InternalSolverLanguageParser.g:2376:2: (this_BracedAggregateExpression_0= ruleBracedAggregateExpression | ( () ( (lv_op_2_0= ruleUnaryOperator ) ) ( (lv_body_3_0= ruleBracedAggregateExpression ) ) ) ) { - // InternalSolverLanguageParser.g:2025:2: (this_AggregationExpression_0= ruleAggregationExpression | ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) ) - int alt22=2; - int LA22_0 = input.LA(1); + // InternalSolverLanguageParser.g:2376:2: (this_BracedAggregateExpression_0= ruleBracedAggregateExpression | ( () ( (lv_op_2_0= ruleUnaryOperator ) ) ( (lv_body_3_0= ruleBracedAggregateExpression ) ) ) ) + int alt29=2; + int LA29_0 = input.LA(1); - if ( ((LA22_0>=Unknown && LA22_0<=Exists)||LA22_0==Forall||(LA22_0>=Count && LA22_0<=False)||LA22_0==True||LA22_0==Inf||LA22_0==LeftParenthesis||LA22_0==LeftSquareBracket||(LA22_0>=RULE_STRING && LA22_0<=RULE_QUOTED_ID)||(LA22_0>=RULE_ID && LA22_0<=RULE_INT)) ) { - alt22=1; + if ( (LA29_0==Unknown||LA29_0==Object||(LA29_0>=Count && LA29_0<=False)||LA29_0==True||LA29_0==Inf||LA29_0==LeftParenthesis||LA29_0==LeftSquareBracket||(LA29_0>=Tilde && LA29_0<=RULE_QUOTED_ID)||(LA29_0>=RULE_ID && LA29_0<=RULE_INT)) ) { + alt29=1; } - else if ( (LA22_0==Current||LA22_0==Must||LA22_0==May||LA22_0==ExclamationMark||LA22_0==PlusSign||LA22_0==HyphenMinus) ) { - alt22=2; + else if ( (LA29_0==ExclamationMark||LA29_0==PlusSign||LA29_0==HyphenMinus||LA29_0==QuestionMark) ) { + alt29=2; } else { NoViableAltException nvae = - new NoViableAltException("", 22, 0, input); + new NoViableAltException("", 29, 0, input); throw nvae; } - switch (alt22) { + switch (alt29) { case 1 : - // InternalSolverLanguageParser.g:2026:3: this_AggregationExpression_0= ruleAggregationExpression + // InternalSolverLanguageParser.g:2377:3: this_BracedAggregateExpression_0= ruleBracedAggregateExpression { - newCompositeNode(grammarAccess.getUnaryExpressionAccess().getAggregationExpressionParserRuleCall_0()); + newCompositeNode(grammarAccess.getUnaryExpressionAccess().getBracedAggregateExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - this_AggregationExpression_0=ruleAggregationExpression(); + this_BracedAggregateExpression_0=ruleBracedAggregateExpression(); state._fsp--; - current = this_AggregationExpression_0; + current = this_BracedAggregateExpression_0; afterParserOrEnumRuleCall(); } break; case 2 : - // InternalSolverLanguageParser.g:2035:3: ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) + // InternalSolverLanguageParser.g:2386:3: ( () ( (lv_op_2_0= ruleUnaryOperator ) ) ( (lv_body_3_0= ruleBracedAggregateExpression ) ) ) { - // InternalSolverLanguageParser.g:2035:3: ( () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) ) - // InternalSolverLanguageParser.g:2036:4: () ( (lv_op_2_0= ruleUnaryOp ) ) ( (lv_body_3_0= ruleAggregationExpression ) ) + // InternalSolverLanguageParser.g:2386:3: ( () ( (lv_op_2_0= ruleUnaryOperator ) ) ( (lv_body_3_0= ruleBracedAggregateExpression ) ) ) + // InternalSolverLanguageParser.g:2387:4: () ( (lv_op_2_0= ruleUnaryOperator ) ) ( (lv_body_3_0= ruleBracedAggregateExpression ) ) { - // InternalSolverLanguageParser.g:2036:4: () - // InternalSolverLanguageParser.g:2037:5: + // InternalSolverLanguageParser.g:2387:4: () + // InternalSolverLanguageParser.g:2388:5: { current = forceCreateModelElement( @@ -5068,17 +5977,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:2043:4: ( (lv_op_2_0= ruleUnaryOp ) ) - // InternalSolverLanguageParser.g:2044:5: (lv_op_2_0= ruleUnaryOp ) + // InternalSolverLanguageParser.g:2394:4: ( (lv_op_2_0= ruleUnaryOperator ) ) + // InternalSolverLanguageParser.g:2395:5: (lv_op_2_0= ruleUnaryOperator ) { - // InternalSolverLanguageParser.g:2044:5: (lv_op_2_0= ruleUnaryOp ) - // InternalSolverLanguageParser.g:2045:6: lv_op_2_0= ruleUnaryOp + // InternalSolverLanguageParser.g:2395:5: (lv_op_2_0= ruleUnaryOperator ) + // InternalSolverLanguageParser.g:2396:6: lv_op_2_0= ruleUnaryOperator { - newCompositeNode(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0()); + newCompositeNode(grammarAccess.getUnaryExpressionAccess().getOpUnaryOperatorEnumRuleCall_1_1_0()); - pushFollow(FOLLOW_33); - lv_op_2_0=ruleUnaryOp(); + pushFollow(FOLLOW_39); + lv_op_2_0=ruleUnaryOperator(); state._fsp--; @@ -5090,7 +5999,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current, "op", lv_op_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.UnaryOp"); + "org.eclipse.viatra.solver.language.SolverLanguage.UnaryOperator"); afterParserOrEnumRuleCall(); @@ -5099,17 +6008,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:2062:4: ( (lv_body_3_0= ruleAggregationExpression ) ) - // InternalSolverLanguageParser.g:2063:5: (lv_body_3_0= ruleAggregationExpression ) + // InternalSolverLanguageParser.g:2413:4: ( (lv_body_3_0= ruleBracedAggregateExpression ) ) + // InternalSolverLanguageParser.g:2414:5: (lv_body_3_0= ruleBracedAggregateExpression ) { - // InternalSolverLanguageParser.g:2063:5: (lv_body_3_0= ruleAggregationExpression ) - // InternalSolverLanguageParser.g:2064:6: lv_body_3_0= ruleAggregationExpression + // InternalSolverLanguageParser.g:2414:5: (lv_body_3_0= ruleBracedAggregateExpression ) + // InternalSolverLanguageParser.g:2415:6: lv_body_3_0= ruleBracedAggregateExpression { - newCompositeNode(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0()); + newCompositeNode(grammarAccess.getUnaryExpressionAccess().getBodyBracedAggregateExpressionParserRuleCall_1_2_0()); pushFollow(FOLLOW_2); - lv_body_3_0=ruleAggregationExpression(); + lv_body_3_0=ruleBracedAggregateExpression(); state._fsp--; @@ -5121,7 +6030,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current, "body", lv_body_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.AggregationExpression"); + "org.eclipse.viatra.solver.language.SolverLanguage.BracedAggregateExpression"); afterParserOrEnumRuleCall(); @@ -5158,25 +6067,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleUnaryExpression" - // $ANTLR start "entryRuleAggregationExpression" - // InternalSolverLanguageParser.g:2086:1: entryRuleAggregationExpression returns [EObject current=null] : iv_ruleAggregationExpression= ruleAggregationExpression EOF ; - public final EObject entryRuleAggregationExpression() throws RecognitionException { + // $ANTLR start "entryRuleBracedAggregateExpression" + // InternalSolverLanguageParser.g:2437:1: entryRuleBracedAggregateExpression returns [EObject current=null] : iv_ruleBracedAggregateExpression= ruleBracedAggregateExpression EOF ; + public final EObject entryRuleBracedAggregateExpression() throws RecognitionException { EObject current = null; - EObject iv_ruleAggregationExpression = null; + EObject iv_ruleBracedAggregateExpression = null; try { - // InternalSolverLanguageParser.g:2086:62: (iv_ruleAggregationExpression= ruleAggregationExpression EOF ) - // InternalSolverLanguageParser.g:2087:2: iv_ruleAggregationExpression= ruleAggregationExpression EOF + // InternalSolverLanguageParser.g:2437:66: (iv_ruleBracedAggregateExpression= ruleBracedAggregateExpression EOF ) + // InternalSolverLanguageParser.g:2438:2: iv_ruleBracedAggregateExpression= ruleBracedAggregateExpression EOF { - newCompositeNode(grammarAccess.getAggregationExpressionRule()); + newCompositeNode(grammarAccess.getBracedAggregateExpressionRule()); pushFollow(FOLLOW_1); - iv_ruleAggregationExpression=ruleAggregationExpression(); + iv_ruleBracedAggregateExpression=ruleBracedAggregateExpression(); state._fsp--; - current =iv_ruleAggregationExpression; + current =iv_ruleBracedAggregateExpression; match(input,EOF,FOLLOW_2); } @@ -5191,37 +6100,37 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleAggregationExpression" + // $ANTLR end "entryRuleBracedAggregateExpression" - // $ANTLR start "ruleAggregationExpression" - // InternalSolverLanguageParser.g:2093:1: ruleAggregationExpression returns [EObject current=null] : (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation ) ; - public final EObject ruleAggregationExpression() throws RecognitionException { + // $ANTLR start "ruleBracedAggregateExpression" + // InternalSolverLanguageParser.g:2444:1: ruleBracedAggregateExpression returns [EObject current=null] : (this_AtomicExpression_0= ruleAtomicExpression | this_Aggregation_1= ruleAggregation | this_Count_2= ruleCount ) ; + public final EObject ruleBracedAggregateExpression() throws RecognitionException { EObject current = null; EObject this_AtomicExpression_0 = null; - EObject this_QuantifiedExpression_1 = null; + EObject this_Aggregation_1 = null; - EObject this_Aggregation_2 = null; + EObject this_Count_2 = null; enterRule(); try { - // InternalSolverLanguageParser.g:2099:2: ( (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation ) ) - // InternalSolverLanguageParser.g:2100:2: (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation ) + // InternalSolverLanguageParser.g:2450:2: ( (this_AtomicExpression_0= ruleAtomicExpression | this_Aggregation_1= ruleAggregation | this_Count_2= ruleCount ) ) + // InternalSolverLanguageParser.g:2451:2: (this_AtomicExpression_0= ruleAtomicExpression | this_Aggregation_1= ruleAggregation | this_Count_2= ruleCount ) { - // InternalSolverLanguageParser.g:2100:2: (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation ) - int alt23=3; - alt23 = dfa23.predict(input); - switch (alt23) { + // InternalSolverLanguageParser.g:2451:2: (this_AtomicExpression_0= ruleAtomicExpression | this_Aggregation_1= ruleAggregation | this_Count_2= ruleCount ) + int alt30=3; + alt30 = dfa30.predict(input); + switch (alt30) { case 1 : - // InternalSolverLanguageParser.g:2101:3: this_AtomicExpression_0= ruleAtomicExpression + // InternalSolverLanguageParser.g:2452:3: this_AtomicExpression_0= ruleAtomicExpression { - newCompositeNode(grammarAccess.getAggregationExpressionAccess().getAtomicExpressionParserRuleCall_0()); + newCompositeNode(grammarAccess.getBracedAggregateExpressionAccess().getAtomicExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); this_AtomicExpression_0=ruleAtomicExpression(); @@ -5236,248 +6145,41 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:2110:3: this_QuantifiedExpression_1= ruleQuantifiedExpression + // InternalSolverLanguageParser.g:2461:3: this_Aggregation_1= ruleAggregation { - newCompositeNode(grammarAccess.getAggregationExpressionAccess().getQuantifiedExpressionParserRuleCall_1()); + newCompositeNode(grammarAccess.getBracedAggregateExpressionAccess().getAggregationParserRuleCall_1()); pushFollow(FOLLOW_2); - this_QuantifiedExpression_1=ruleQuantifiedExpression(); + this_Aggregation_1=ruleAggregation(); state._fsp--; - current = this_QuantifiedExpression_1; + current = this_Aggregation_1; afterParserOrEnumRuleCall(); } break; case 3 : - // InternalSolverLanguageParser.g:2119:3: this_Aggregation_2= ruleAggregation + // InternalSolverLanguageParser.g:2470:3: this_Count_2= ruleCount { - newCompositeNode(grammarAccess.getAggregationExpressionAccess().getAggregationParserRuleCall_2()); + newCompositeNode(grammarAccess.getBracedAggregateExpressionAccess().getCountParserRuleCall_2()); pushFollow(FOLLOW_2); - this_Aggregation_2=ruleAggregation(); - - state._fsp--; - - - current = this_Aggregation_2; - afterParserOrEnumRuleCall(); - - - } - break; - - } - - - } - - - leaveRule(); - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end "ruleAggregationExpression" - - - // $ANTLR start "entryRuleLocalVariables" - // InternalSolverLanguageParser.g:2131:1: entryRuleLocalVariables returns [EObject current=null] : iv_ruleLocalVariables= ruleLocalVariables EOF ; - public final EObject entryRuleLocalVariables() throws RecognitionException { - EObject current = null; - - EObject iv_ruleLocalVariables = null; - - - try { - // InternalSolverLanguageParser.g:2131:55: (iv_ruleLocalVariables= ruleLocalVariables EOF ) - // InternalSolverLanguageParser.g:2132:2: iv_ruleLocalVariables= ruleLocalVariables EOF - { - newCompositeNode(grammarAccess.getLocalVariablesRule()); - pushFollow(FOLLOW_1); - iv_ruleLocalVariables=ruleLocalVariables(); - - state._fsp--; - - current =iv_ruleLocalVariables; - match(input,EOF,FOLLOW_2); - - } - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end "entryRuleLocalVariables" - - - // $ANTLR start "ruleLocalVariables" - // InternalSolverLanguageParser.g:2138:1: ruleLocalVariables returns [EObject current=null] : ( () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket ) ; - public final EObject ruleLocalVariables() throws RecognitionException { - EObject current = null; - - Token otherlv_1=null; - Token otherlv_3=null; - Token otherlv_5=null; - EObject lv_variables_2_0 = null; - - EObject lv_variables_4_0 = null; - - - - enterRule(); - - try { - // InternalSolverLanguageParser.g:2144:2: ( ( () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket ) ) - // InternalSolverLanguageParser.g:2145:2: ( () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket ) - { - // InternalSolverLanguageParser.g:2145:2: ( () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket ) - // InternalSolverLanguageParser.g:2146:3: () otherlv_1= LeftSquareBracket ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? otherlv_5= RightSquareBracket - { - // InternalSolverLanguageParser.g:2146:3: () - // InternalSolverLanguageParser.g:2147:4: - { - - current = forceCreateModelElement( - grammarAccess.getLocalVariablesAccess().getLocalVariablesAction_0(), - current); - - - } - - otherlv_1=(Token)match(input,LeftSquareBracket,FOLLOW_34); - - newLeafNode(otherlv_1, grammarAccess.getLocalVariablesAccess().getLeftSquareBracketKeyword_1()); - - // InternalSolverLanguageParser.g:2157:3: ( ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* )? - int alt25=2; - int LA25_0 = input.LA(1); - - if ( (LA25_0==RULE_QUOTED_ID||LA25_0==RULE_ID) ) { - alt25=1; - } - switch (alt25) { - case 1 : - // InternalSolverLanguageParser.g:2158:4: ( (lv_variables_2_0= ruleVariable ) ) (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* - { - // InternalSolverLanguageParser.g:2158:4: ( (lv_variables_2_0= ruleVariable ) ) - // InternalSolverLanguageParser.g:2159:5: (lv_variables_2_0= ruleVariable ) - { - // InternalSolverLanguageParser.g:2159:5: (lv_variables_2_0= ruleVariable ) - // InternalSolverLanguageParser.g:2160:6: lv_variables_2_0= ruleVariable - { - - newCompositeNode(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_0_0()); - - pushFollow(FOLLOW_35); - lv_variables_2_0=ruleVariable(); - - state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getLocalVariablesRule()); - } - add( - current, - "variables", - lv_variables_2_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Variable"); - afterParserOrEnumRuleCall(); - - - } - - - } - - // InternalSolverLanguageParser.g:2177:4: (otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) )* - loop24: - do { - int alt24=2; - int LA24_0 = input.LA(1); - - if ( (LA24_0==Comma) ) { - alt24=1; - } - - - switch (alt24) { - case 1 : - // InternalSolverLanguageParser.g:2178:5: otherlv_3= Comma ( (lv_variables_4_0= ruleVariable ) ) - { - otherlv_3=(Token)match(input,Comma,FOLLOW_8); - - newLeafNode(otherlv_3, grammarAccess.getLocalVariablesAccess().getCommaKeyword_2_1_0()); - - // InternalSolverLanguageParser.g:2182:5: ( (lv_variables_4_0= ruleVariable ) ) - // InternalSolverLanguageParser.g:2183:6: (lv_variables_4_0= ruleVariable ) - { - // InternalSolverLanguageParser.g:2183:6: (lv_variables_4_0= ruleVariable ) - // InternalSolverLanguageParser.g:2184:7: lv_variables_4_0= ruleVariable - { - - newCompositeNode(grammarAccess.getLocalVariablesAccess().getVariablesVariableParserRuleCall_2_1_1_0()); - - pushFollow(FOLLOW_35); - lv_variables_4_0=ruleVariable(); - - state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getLocalVariablesRule()); - } - add( - current, - "variables", - lv_variables_4_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Variable"); - afterParserOrEnumRuleCall(); - - - } - - - } - - - } - break; - - default : - break loop24; - } - } while (true); - + this_Count_2=ruleCount(); - } - break; + state._fsp--; - } - otherlv_5=(Token)match(input,RightSquareBracket,FOLLOW_2); + current = this_Count_2; + afterParserOrEnumRuleCall(); + - newLeafNode(otherlv_5, grammarAccess.getLocalVariablesAccess().getRightSquareBracketKeyword_3()); - + } + break; } @@ -5497,28 +6199,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleLocalVariables" + // $ANTLR end "ruleBracedAggregateExpression" - // $ANTLR start "entryRuleQuantifiedExpression" - // InternalSolverLanguageParser.g:2211:1: entryRuleQuantifiedExpression returns [EObject current=null] : iv_ruleQuantifiedExpression= ruleQuantifiedExpression EOF ; - public final EObject entryRuleQuantifiedExpression() throws RecognitionException { + // $ANTLR start "entryRuleAggregation" + // InternalSolverLanguageParser.g:2482:1: entryRuleAggregation returns [EObject current=null] : iv_ruleAggregation= ruleAggregation EOF ; + public final EObject entryRuleAggregation() throws RecognitionException { EObject current = null; - EObject iv_ruleQuantifiedExpression = null; + EObject iv_ruleAggregation = null; try { - // InternalSolverLanguageParser.g:2211:61: (iv_ruleQuantifiedExpression= ruleQuantifiedExpression EOF ) - // InternalSolverLanguageParser.g:2212:2: iv_ruleQuantifiedExpression= ruleQuantifiedExpression EOF + // InternalSolverLanguageParser.g:2482:52: (iv_ruleAggregation= ruleAggregation EOF ) + // InternalSolverLanguageParser.g:2483:2: iv_ruleAggregation= ruleAggregation EOF { - newCompositeNode(grammarAccess.getQuantifiedExpressionRule()); + newCompositeNode(grammarAccess.getAggregationRule()); pushFollow(FOLLOW_1); - iv_ruleQuantifiedExpression=ruleQuantifiedExpression(); + iv_ruleAggregation=ruleAggregation(); state._fsp--; - current =iv_ruleQuantifiedExpression; + current =iv_ruleAggregation; match(input,EOF,FOLLOW_2); } @@ -5533,56 +6235,52 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleQuantifiedExpression" + // $ANTLR end "entryRuleAggregation" - // $ANTLR start "ruleQuantifiedExpression" - // InternalSolverLanguageParser.g:2218:1: ruleQuantifiedExpression returns [EObject current=null] : ( ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket ) ; - public final EObject ruleQuantifiedExpression() throws RecognitionException { + // $ANTLR start "ruleAggregation" + // InternalSolverLanguageParser.g:2489:1: ruleAggregation returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) otherlv_1= LeftCurlyBracket ( (lv_value_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket ) ; + public final EObject ruleAggregation() throws RecognitionException { EObject current = null; - Token otherlv_2=null; - Token otherlv_4=null; - Enumerator lv_quantifier_0_0 = null; - - EObject lv_localVariables_1_0 = null; + Token otherlv_1=null; + Token otherlv_3=null; + Token otherlv_5=null; + EObject lv_value_2_0 = null; - EObject lv_body_3_0 = null; + EObject lv_condition_4_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:2224:2: ( ( ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket ) ) - // InternalSolverLanguageParser.g:2225:2: ( ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket ) + // InternalSolverLanguageParser.g:2495:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= LeftCurlyBracket ( (lv_value_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket ) ) + // InternalSolverLanguageParser.g:2496:2: ( ( ( ruleQualifiedName ) ) otherlv_1= LeftCurlyBracket ( (lv_value_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket ) { - // InternalSolverLanguageParser.g:2225:2: ( ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket ) - // InternalSolverLanguageParser.g:2226:3: ( (lv_quantifier_0_0= ruleQuantifier ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) otherlv_4= RightCurlyBracket + // InternalSolverLanguageParser.g:2496:2: ( ( ( ruleQualifiedName ) ) otherlv_1= LeftCurlyBracket ( (lv_value_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket ) + // InternalSolverLanguageParser.g:2497:3: ( ( ruleQualifiedName ) ) otherlv_1= LeftCurlyBracket ( (lv_value_2_0= ruleExpression ) ) otherlv_3= VerticalLine ( (lv_condition_4_0= ruleExpression ) ) otherlv_5= RightCurlyBracket { - // InternalSolverLanguageParser.g:2226:3: ( (lv_quantifier_0_0= ruleQuantifier ) ) - // InternalSolverLanguageParser.g:2227:4: (lv_quantifier_0_0= ruleQuantifier ) + // InternalSolverLanguageParser.g:2497:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:2498:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:2227:4: (lv_quantifier_0_0= ruleQuantifier ) - // InternalSolverLanguageParser.g:2228:5: lv_quantifier_0_0= ruleQuantifier + // InternalSolverLanguageParser.g:2498:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:2499:5: ruleQualifiedName { - newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getQuantifierQuantifierEnumRuleCall_0_0()); + if (current==null) { + current = createModelElement(grammarAccess.getAggregationRule()); + } + + + newCompositeNode(grammarAccess.getAggregationAccess().getOpSymbolCrossReference_0_0()); - pushFollow(FOLLOW_36); - lv_quantifier_0_0=ruleQuantifier(); + pushFollow(FOLLOW_20); + ruleQualifiedName(); state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule()); - } - set( - current, - "quantifier", - lv_quantifier_0_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Quantifier"); afterParserOrEnumRuleCall(); @@ -5591,74 +6289,67 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:2245:3: ( (lv_localVariables_1_0= ruleLocalVariables ) )? - int alt26=2; - int LA26_0 = input.LA(1); - - if ( (LA26_0==LeftSquareBracket) ) { - alt26=1; - } - switch (alt26) { - case 1 : - // InternalSolverLanguageParser.g:2246:4: (lv_localVariables_1_0= ruleLocalVariables ) - { - // InternalSolverLanguageParser.g:2246:4: (lv_localVariables_1_0= ruleLocalVariables ) - // InternalSolverLanguageParser.g:2247:5: lv_localVariables_1_0= ruleLocalVariables - { + otherlv_1=(Token)match(input,LeftCurlyBracket,FOLLOW_10); - newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); - - pushFollow(FOLLOW_14); - lv_localVariables_1_0=ruleLocalVariables(); + newLeafNode(otherlv_1, grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_1()); + + // InternalSolverLanguageParser.g:2517:3: ( (lv_value_2_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:2518:4: (lv_value_2_0= ruleExpression ) + { + // InternalSolverLanguageParser.g:2518:4: (lv_value_2_0= ruleExpression ) + // InternalSolverLanguageParser.g:2519:5: lv_value_2_0= ruleExpression + { - state._fsp--; + newCompositeNode(grammarAccess.getAggregationAccess().getValueExpressionParserRuleCall_2_0()); + + pushFollow(FOLLOW_40); + lv_value_2_0=ruleExpression(); + state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule()); - } - set( - current, - "localVariables", - lv_localVariables_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.LocalVariables"); - afterParserOrEnumRuleCall(); - - } + if (current==null) { + current = createModelElementForParent(grammarAccess.getAggregationRule()); + } + set( + current, + "value", + lv_value_2_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + afterParserOrEnumRuleCall(); + + } - } - break; } - otherlv_2=(Token)match(input,LeftCurlyBracket,FOLLOW_6); + otherlv_3=(Token)match(input,VerticalLine,FOLLOW_10); - newLeafNode(otherlv_2, grammarAccess.getQuantifiedExpressionAccess().getLeftCurlyBracketKeyword_2()); + newLeafNode(otherlv_3, grammarAccess.getAggregationAccess().getVerticalLineKeyword_3()); - // InternalSolverLanguageParser.g:2268:3: ( (lv_body_3_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:2269:4: (lv_body_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:2540:3: ( (lv_condition_4_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:2541:4: (lv_condition_4_0= ruleExpression ) { - // InternalSolverLanguageParser.g:2269:4: (lv_body_3_0= ruleExpression ) - // InternalSolverLanguageParser.g:2270:5: lv_body_3_0= ruleExpression + // InternalSolverLanguageParser.g:2541:4: (lv_condition_4_0= ruleExpression ) + // InternalSolverLanguageParser.g:2542:5: lv_condition_4_0= ruleExpression { - newCompositeNode(grammarAccess.getQuantifiedExpressionAccess().getBodyExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0()); - pushFollow(FOLLOW_16); - lv_body_3_0=ruleExpression(); + pushFollow(FOLLOW_22); + lv_condition_4_0=ruleExpression(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getQuantifiedExpressionRule()); + current = createModelElementForParent(grammarAccess.getAggregationRule()); } set( current, - "body", - lv_body_3_0, + "condition", + lv_condition_4_0, "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); afterParserOrEnumRuleCall(); @@ -5668,9 +6359,9 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_4=(Token)match(input,RightCurlyBracket,FOLLOW_2); + otherlv_5=(Token)match(input,RightCurlyBracket,FOLLOW_2); - newLeafNode(otherlv_4, grammarAccess.getQuantifiedExpressionAccess().getRightCurlyBracketKeyword_4()); + newLeafNode(otherlv_5, grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); } @@ -5691,28 +6382,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleQuantifiedExpression" + // $ANTLR end "ruleAggregation" - // $ANTLR start "entryRuleAggregation" - // InternalSolverLanguageParser.g:2295:1: entryRuleAggregation returns [EObject current=null] : iv_ruleAggregation= ruleAggregation EOF ; - public final EObject entryRuleAggregation() throws RecognitionException { + // $ANTLR start "entryRuleCount" + // InternalSolverLanguageParser.g:2567:1: entryRuleCount returns [EObject current=null] : iv_ruleCount= ruleCount EOF ; + public final EObject entryRuleCount() throws RecognitionException { EObject current = null; - EObject iv_ruleAggregation = null; + EObject iv_ruleCount = null; try { - // InternalSolverLanguageParser.g:2295:52: (iv_ruleAggregation= ruleAggregation EOF ) - // InternalSolverLanguageParser.g:2296:2: iv_ruleAggregation= ruleAggregation EOF + // InternalSolverLanguageParser.g:2567:46: (iv_ruleCount= ruleCount EOF ) + // InternalSolverLanguageParser.g:2568:2: iv_ruleCount= ruleCount EOF { - newCompositeNode(grammarAccess.getAggregationRule()); + newCompositeNode(grammarAccess.getCountRule()); pushFollow(FOLLOW_1); - iv_ruleAggregation=ruleAggregation(); + iv_ruleCount=ruleCount(); state._fsp--; - current =iv_ruleAggregation; + current =iv_ruleCount; match(input,EOF,FOLLOW_2); } @@ -5727,130 +6418,60 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleAggregation" + // $ANTLR end "entryRuleCount" - // $ANTLR start "ruleAggregation" - // InternalSolverLanguageParser.g:2302:1: ruleAggregation returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket ) ; - public final EObject ruleAggregation() throws RecognitionException { + // $ANTLR start "ruleCount" + // InternalSolverLanguageParser.g:2574:1: ruleCount returns [EObject current=null] : (otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_condition_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket ) ; + public final EObject ruleCount() throws RecognitionException { EObject current = null; - Token otherlv_2=null; - Token otherlv_4=null; - Token otherlv_6=null; - EObject lv_localVariables_1_0 = null; - - EObject lv_body_3_0 = null; - - EObject lv_condition_5_0 = null; + Token otherlv_0=null; + Token otherlv_1=null; + Token otherlv_3=null; + EObject lv_condition_2_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:2308:2: ( ( ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket ) ) - // InternalSolverLanguageParser.g:2309:2: ( ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket ) - { - // InternalSolverLanguageParser.g:2309:2: ( ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket ) - // InternalSolverLanguageParser.g:2310:3: ( ( ruleQualifiedName ) ) ( (lv_localVariables_1_0= ruleLocalVariables ) )? otherlv_2= LeftCurlyBracket ( (lv_body_3_0= ruleExpression ) ) (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? otherlv_6= RightCurlyBracket + // InternalSolverLanguageParser.g:2580:2: ( (otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_condition_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket ) ) + // InternalSolverLanguageParser.g:2581:2: (otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_condition_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket ) { - // InternalSolverLanguageParser.g:2310:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:2311:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:2581:2: (otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_condition_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket ) + // InternalSolverLanguageParser.g:2582:3: otherlv_0= Count otherlv_1= LeftCurlyBracket ( (lv_condition_2_0= ruleExpression ) ) otherlv_3= RightCurlyBracket { - // InternalSolverLanguageParser.g:2311:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:2312:5: ruleQualifiedName - { - - if (current==null) { - current = createModelElement(grammarAccess.getAggregationRule()); - } - - - newCompositeNode(grammarAccess.getAggregationAccess().getOpNamedElementCrossReference_0_0()); - - pushFollow(FOLLOW_36); - ruleQualifiedName(); - - state._fsp--; - - - afterParserOrEnumRuleCall(); - - - } - - - } - - // InternalSolverLanguageParser.g:2326:3: ( (lv_localVariables_1_0= ruleLocalVariables ) )? - int alt27=2; - int LA27_0 = input.LA(1); - - if ( (LA27_0==LeftSquareBracket) ) { - alt27=1; - } - switch (alt27) { - case 1 : - // InternalSolverLanguageParser.g:2327:4: (lv_localVariables_1_0= ruleLocalVariables ) - { - // InternalSolverLanguageParser.g:2327:4: (lv_localVariables_1_0= ruleLocalVariables ) - // InternalSolverLanguageParser.g:2328:5: lv_localVariables_1_0= ruleLocalVariables - { - - newCompositeNode(grammarAccess.getAggregationAccess().getLocalVariablesLocalVariablesParserRuleCall_1_0()); - - pushFollow(FOLLOW_14); - lv_localVariables_1_0=ruleLocalVariables(); - - state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getAggregationRule()); - } - set( - current, - "localVariables", - lv_localVariables_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.LocalVariables"); - afterParserOrEnumRuleCall(); - - - } - - - } - break; - - } + otherlv_0=(Token)match(input,Count,FOLLOW_20); - otherlv_2=(Token)match(input,LeftCurlyBracket,FOLLOW_6); + newLeafNode(otherlv_0, grammarAccess.getCountAccess().getCountKeyword_0()); + + otherlv_1=(Token)match(input,LeftCurlyBracket,FOLLOW_10); - newLeafNode(otherlv_2, grammarAccess.getAggregationAccess().getLeftCurlyBracketKeyword_2()); + newLeafNode(otherlv_1, grammarAccess.getCountAccess().getLeftCurlyBracketKeyword_1()); - // InternalSolverLanguageParser.g:2349:3: ( (lv_body_3_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:2350:4: (lv_body_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:2590:3: ( (lv_condition_2_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:2591:4: (lv_condition_2_0= ruleExpression ) { - // InternalSolverLanguageParser.g:2350:4: (lv_body_3_0= ruleExpression ) - // InternalSolverLanguageParser.g:2351:5: lv_body_3_0= ruleExpression + // InternalSolverLanguageParser.g:2591:4: (lv_condition_2_0= ruleExpression ) + // InternalSolverLanguageParser.g:2592:5: lv_condition_2_0= ruleExpression { - newCompositeNode(grammarAccess.getAggregationAccess().getBodyExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getCountAccess().getConditionExpressionParserRuleCall_2_0()); - pushFollow(FOLLOW_37); - lv_body_3_0=ruleExpression(); + pushFollow(FOLLOW_22); + lv_condition_2_0=ruleExpression(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getAggregationRule()); + current = createModelElementForParent(grammarAccess.getCountRule()); } set( current, - "body", - lv_body_3_0, + "condition", + lv_condition_2_0, "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); afterParserOrEnumRuleCall(); @@ -5860,61 +6481,9 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:2368:3: (otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) )? - int alt28=2; - int LA28_0 = input.LA(1); - - if ( (LA28_0==VerticalLine) ) { - alt28=1; - } - switch (alt28) { - case 1 : - // InternalSolverLanguageParser.g:2369:4: otherlv_4= VerticalLine ( (lv_condition_5_0= ruleExpression ) ) - { - otherlv_4=(Token)match(input,VerticalLine,FOLLOW_6); - - newLeafNode(otherlv_4, grammarAccess.getAggregationAccess().getVerticalLineKeyword_4_0()); - - // InternalSolverLanguageParser.g:2373:4: ( (lv_condition_5_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:2374:5: (lv_condition_5_0= ruleExpression ) - { - // InternalSolverLanguageParser.g:2374:5: (lv_condition_5_0= ruleExpression ) - // InternalSolverLanguageParser.g:2375:6: lv_condition_5_0= ruleExpression - { - - newCompositeNode(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_1_0()); - - pushFollow(FOLLOW_16); - lv_condition_5_0=ruleExpression(); - - state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getAggregationRule()); - } - set( - current, - "condition", - lv_condition_5_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); - afterParserOrEnumRuleCall(); - - - } - - - } - - - } - break; - - } - - otherlv_6=(Token)match(input,RightCurlyBracket,FOLLOW_2); + otherlv_3=(Token)match(input,RightCurlyBracket,FOLLOW_2); - newLeafNode(otherlv_6, grammarAccess.getAggregationAccess().getRightCurlyBracketKeyword_5()); + newLeafNode(otherlv_3, grammarAccess.getCountAccess().getRightCurlyBracketKeyword_3()); } @@ -5935,11 +6504,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleAggregation" + // $ANTLR end "ruleCount" // $ANTLR start "entryRuleAtomicExpression" - // InternalSolverLanguageParser.g:2401:1: entryRuleAtomicExpression returns [EObject current=null] : iv_ruleAtomicExpression= ruleAtomicExpression EOF ; + // InternalSolverLanguageParser.g:2617:1: entryRuleAtomicExpression returns [EObject current=null] : iv_ruleAtomicExpression= ruleAtomicExpression EOF ; public final EObject entryRuleAtomicExpression() throws RecognitionException { EObject current = null; @@ -5947,8 +6516,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2401:57: (iv_ruleAtomicExpression= ruleAtomicExpression EOF ) - // InternalSolverLanguageParser.g:2402:2: iv_ruleAtomicExpression= ruleAtomicExpression EOF + // InternalSolverLanguageParser.g:2617:57: (iv_ruleAtomicExpression= ruleAtomicExpression EOF ) + // InternalSolverLanguageParser.g:2618:2: iv_ruleAtomicExpression= ruleAtomicExpression EOF { newCompositeNode(grammarAccess.getAtomicExpressionRule()); pushFollow(FOLLOW_1); @@ -5975,7 +6544,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleAtomicExpression" - // InternalSolverLanguageParser.g:2408:1: ruleAtomicExpression returns [EObject current=null] : (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) ; + // InternalSolverLanguageParser.g:2624:1: ruleAtomicExpression returns [EObject current=null] : (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) ; public final EObject ruleAtomicExpression() throws RecognitionException { EObject current = null; @@ -5996,15 +6565,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:2414:2: ( (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) ) - // InternalSolverLanguageParser.g:2415:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) + // InternalSolverLanguageParser.g:2630:2: ( (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) ) + // InternalSolverLanguageParser.g:2631:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) { - // InternalSolverLanguageParser.g:2415:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) - int alt29=5; - alt29 = dfa29.predict(input); - switch (alt29) { + // InternalSolverLanguageParser.g:2631:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) ) + int alt31=5; + alt31 = dfa31.predict(input); + switch (alt31) { case 1 : - // InternalSolverLanguageParser.g:2416:3: this_Reference_0= ruleReference + // InternalSolverLanguageParser.g:2632:3: this_Reference_0= ruleReference { newCompositeNode(grammarAccess.getAtomicExpressionAccess().getReferenceParserRuleCall_0()); @@ -6022,7 +6591,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:2425:3: this_Call_1= ruleCall + // InternalSolverLanguageParser.g:2641:3: this_Call_1= ruleCall { newCompositeNode(grammarAccess.getAtomicExpressionAccess().getCallParserRuleCall_1()); @@ -6040,7 +6609,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 3 : - // InternalSolverLanguageParser.g:2434:3: this_Interval_2= ruleInterval + // InternalSolverLanguageParser.g:2650:3: this_Interval_2= ruleInterval { newCompositeNode(grammarAccess.getAtomicExpressionAccess().getIntervalParserRuleCall_2()); @@ -6058,7 +6627,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 4 : - // InternalSolverLanguageParser.g:2443:3: this_Literal_3= ruleLiteral + // InternalSolverLanguageParser.g:2659:3: this_Literal_3= ruleLiteral { newCompositeNode(grammarAccess.getAtomicExpressionAccess().getLiteralParserRuleCall_3()); @@ -6076,19 +6645,19 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 5 : - // InternalSolverLanguageParser.g:2452:3: (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) + // InternalSolverLanguageParser.g:2668:3: (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) { - // InternalSolverLanguageParser.g:2452:3: (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) - // InternalSolverLanguageParser.g:2453:4: otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis + // InternalSolverLanguageParser.g:2668:3: (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) + // InternalSolverLanguageParser.g:2669:4: otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis { - otherlv_4=(Token)match(input,LeftParenthesis,FOLLOW_6); + otherlv_4=(Token)match(input,LeftParenthesis,FOLLOW_10); newLeafNode(otherlv_4, grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); newCompositeNode(grammarAccess.getAtomicExpressionAccess().getExpressionParserRuleCall_4_1()); - pushFollow(FOLLOW_38); + pushFollow(FOLLOW_41); this_Expression_5=ruleExpression(); state._fsp--; @@ -6130,7 +6699,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleCall" - // InternalSolverLanguageParser.g:2474:1: entryRuleCall returns [EObject current=null] : iv_ruleCall= ruleCall EOF ; + // InternalSolverLanguageParser.g:2690:1: entryRuleCall returns [EObject current=null] : iv_ruleCall= ruleCall EOF ; public final EObject entryRuleCall() throws RecognitionException { EObject current = null; @@ -6138,8 +6707,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2474:45: (iv_ruleCall= ruleCall EOF ) - // InternalSolverLanguageParser.g:2475:2: iv_ruleCall= ruleCall EOF + // InternalSolverLanguageParser.g:2690:45: (iv_ruleCall= ruleCall EOF ) + // InternalSolverLanguageParser.g:2691:2: iv_ruleCall= ruleCall EOF { newCompositeNode(grammarAccess.getCallRule()); pushFollow(FOLLOW_1); @@ -6166,37 +6735,35 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleCall" - // InternalSolverLanguageParser.g:2481:1: ruleCall returns [EObject current=null] : ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) ; + // InternalSolverLanguageParser.g:2697:1: ruleCall returns [EObject current=null] : ( ( (lv_functor_0_0= ruleReference ) ) ( (lv_argumentList_1_0= ruleArgumentList ) ) ) ; public final EObject ruleCall() throws RecognitionException { EObject current = null; - Token lv_transitiveClosure_1_0=null; - Token lv_reflexiveTransitiveClosure_2_0=null; EObject lv_functor_0_0 = null; - EObject lv_argumentList_3_0 = null; + EObject lv_argumentList_1_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:2487:2: ( ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) ) - // InternalSolverLanguageParser.g:2488:2: ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) + // InternalSolverLanguageParser.g:2703:2: ( ( ( (lv_functor_0_0= ruleReference ) ) ( (lv_argumentList_1_0= ruleArgumentList ) ) ) ) + // InternalSolverLanguageParser.g:2704:2: ( ( (lv_functor_0_0= ruleReference ) ) ( (lv_argumentList_1_0= ruleArgumentList ) ) ) { - // InternalSolverLanguageParser.g:2488:2: ( ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) ) - // InternalSolverLanguageParser.g:2489:3: ( (lv_functor_0_0= ruleReference ) ) ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ( (lv_argumentList_3_0= ruleArgumentList ) ) + // InternalSolverLanguageParser.g:2704:2: ( ( (lv_functor_0_0= ruleReference ) ) ( (lv_argumentList_1_0= ruleArgumentList ) ) ) + // InternalSolverLanguageParser.g:2705:3: ( (lv_functor_0_0= ruleReference ) ) ( (lv_argumentList_1_0= ruleArgumentList ) ) { - // InternalSolverLanguageParser.g:2489:3: ( (lv_functor_0_0= ruleReference ) ) - // InternalSolverLanguageParser.g:2490:4: (lv_functor_0_0= ruleReference ) + // InternalSolverLanguageParser.g:2705:3: ( (lv_functor_0_0= ruleReference ) ) + // InternalSolverLanguageParser.g:2706:4: (lv_functor_0_0= ruleReference ) { - // InternalSolverLanguageParser.g:2490:4: (lv_functor_0_0= ruleReference ) - // InternalSolverLanguageParser.g:2491:5: lv_functor_0_0= ruleReference + // InternalSolverLanguageParser.g:2706:4: (lv_functor_0_0= ruleReference ) + // InternalSolverLanguageParser.g:2707:5: lv_functor_0_0= ruleReference { newCompositeNode(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0()); - pushFollow(FOLLOW_39); + pushFollow(FOLLOW_15); lv_functor_0_0=ruleReference(); state._fsp--; @@ -6209,104 +6776,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current, "functor", lv_functor_0_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Reference"); - afterParserOrEnumRuleCall(); - - - } - - - } - - // InternalSolverLanguageParser.g:2508:3: ( ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? - int alt30=3; - int LA30_0 = input.LA(1); - - if ( (LA30_0==RULE_TRANSITIVE_CLOSURE) ) { - alt30=1; - } - else if ( (LA30_0==RULE_REFLEXIVE_TRANSITIVE_CLOSURE) ) { - alt30=2; - } - switch (alt30) { - case 1 : - // InternalSolverLanguageParser.g:2509:4: ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) - { - // InternalSolverLanguageParser.g:2509:4: ( (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) ) - // InternalSolverLanguageParser.g:2510:5: (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) - { - // InternalSolverLanguageParser.g:2510:5: (lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE ) - // InternalSolverLanguageParser.g:2511:6: lv_transitiveClosure_1_0= RULE_TRANSITIVE_CLOSURE - { - lv_transitiveClosure_1_0=(Token)match(input,RULE_TRANSITIVE_CLOSURE,FOLLOW_11); - - newLeafNode(lv_transitiveClosure_1_0, grammarAccess.getCallAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0()); - - - if (current==null) { - current = createModelElement(grammarAccess.getCallRule()); - } - setWithLastConsumed( - current, - "transitiveClosure", - true, - "org.eclipse.viatra.solver.language.SolverLanguage.TRANSITIVE_CLOSURE"); - - - } - - - } - - - } - break; - case 2 : - // InternalSolverLanguageParser.g:2528:4: ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) - { - // InternalSolverLanguageParser.g:2528:4: ( (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) - // InternalSolverLanguageParser.g:2529:5: (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) - { - // InternalSolverLanguageParser.g:2529:5: (lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) - // InternalSolverLanguageParser.g:2530:6: lv_reflexiveTransitiveClosure_2_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE - { - lv_reflexiveTransitiveClosure_2_0=(Token)match(input,RULE_REFLEXIVE_TRANSITIVE_CLOSURE,FOLLOW_11); - - newLeafNode(lv_reflexiveTransitiveClosure_2_0, grammarAccess.getCallAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0()); - - - if (current==null) { - current = createModelElement(grammarAccess.getCallRule()); - } - setWithLastConsumed( - current, - "reflexiveTransitiveClosure", - true, - "org.eclipse.viatra.solver.language.SolverLanguage.REFLEXIVE_TRANSITIVE_CLOSURE"); - - - } - - - } + "org.eclipse.viatra.solver.language.SolverLanguage.Reference"); + afterParserOrEnumRuleCall(); + + } - } - break; } - // InternalSolverLanguageParser.g:2547:3: ( (lv_argumentList_3_0= ruleArgumentList ) ) - // InternalSolverLanguageParser.g:2548:4: (lv_argumentList_3_0= ruleArgumentList ) + // InternalSolverLanguageParser.g:2724:3: ( (lv_argumentList_1_0= ruleArgumentList ) ) + // InternalSolverLanguageParser.g:2725:4: (lv_argumentList_1_0= ruleArgumentList ) { - // InternalSolverLanguageParser.g:2548:4: (lv_argumentList_3_0= ruleArgumentList ) - // InternalSolverLanguageParser.g:2549:5: lv_argumentList_3_0= ruleArgumentList + // InternalSolverLanguageParser.g:2725:4: (lv_argumentList_1_0= ruleArgumentList ) + // InternalSolverLanguageParser.g:2726:5: lv_argumentList_1_0= ruleArgumentList { - newCompositeNode(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_1_0()); pushFollow(FOLLOW_2); - lv_argumentList_3_0=ruleArgumentList(); + lv_argumentList_1_0=ruleArgumentList(); state._fsp--; @@ -6317,7 +6806,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { set( current, "argumentList", - lv_argumentList_3_0, + lv_argumentList_1_0, "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); afterParserOrEnumRuleCall(); @@ -6350,7 +6839,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleArgumentList" - // InternalSolverLanguageParser.g:2570:1: entryRuleArgumentList returns [EObject current=null] : iv_ruleArgumentList= ruleArgumentList EOF ; + // InternalSolverLanguageParser.g:2747:1: entryRuleArgumentList returns [EObject current=null] : iv_ruleArgumentList= ruleArgumentList EOF ; public final EObject entryRuleArgumentList() throws RecognitionException { EObject current = null; @@ -6358,8 +6847,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2570:53: (iv_ruleArgumentList= ruleArgumentList EOF ) - // InternalSolverLanguageParser.g:2571:2: iv_ruleArgumentList= ruleArgumentList EOF + // InternalSolverLanguageParser.g:2747:53: (iv_ruleArgumentList= ruleArgumentList EOF ) + // InternalSolverLanguageParser.g:2748:2: iv_ruleArgumentList= ruleArgumentList EOF { newCompositeNode(grammarAccess.getArgumentListRule()); pushFollow(FOLLOW_1); @@ -6386,7 +6875,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleArgumentList" - // InternalSolverLanguageParser.g:2577:1: ruleArgumentList returns [EObject current=null] : ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) ; + // InternalSolverLanguageParser.g:2754:1: ruleArgumentList returns [EObject current=null] : ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) ; public final EObject ruleArgumentList() throws RecognitionException { EObject current = null; @@ -6402,14 +6891,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:2583:2: ( ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) ) - // InternalSolverLanguageParser.g:2584:2: ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) + // InternalSolverLanguageParser.g:2760:2: ( ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) ) + // InternalSolverLanguageParser.g:2761:2: ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) { - // InternalSolverLanguageParser.g:2584:2: ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) - // InternalSolverLanguageParser.g:2585:3: () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis + // InternalSolverLanguageParser.g:2761:2: ( () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis ) + // InternalSolverLanguageParser.g:2762:3: () otherlv_1= LeftParenthesis ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? otherlv_5= RightParenthesis { - // InternalSolverLanguageParser.g:2585:3: () - // InternalSolverLanguageParser.g:2586:4: + // InternalSolverLanguageParser.g:2762:3: () + // InternalSolverLanguageParser.g:2763:4: { current = forceCreateModelElement( @@ -6419,31 +6908,31 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_1=(Token)match(input,LeftParenthesis,FOLLOW_40); + otherlv_1=(Token)match(input,LeftParenthesis,FOLLOW_42); newLeafNode(otherlv_1, grammarAccess.getArgumentListAccess().getLeftParenthesisKeyword_1()); - // InternalSolverLanguageParser.g:2596:3: ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? - int alt32=2; - int LA32_0 = input.LA(1); + // InternalSolverLanguageParser.g:2773:3: ( ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* )? + int alt33=2; + int LA33_0 = input.LA(1); - if ( (LA32_0==Current||(LA32_0>=Unknown && LA32_0<=Exists)||LA32_0==Forall||(LA32_0>=Count && LA32_0<=False)||LA32_0==Must||LA32_0==True||LA32_0==Inf||LA32_0==May||(LA32_0>=ExclamationMark && LA32_0<=LeftParenthesis)||(LA32_0>=Asterisk && LA32_0<=PlusSign)||LA32_0==HyphenMinus||LA32_0==LeftSquareBracket||(LA32_0>=RULE_STRING && LA32_0<=RULE_QUOTED_ID)||(LA32_0>=RULE_ID && LA32_0<=RULE_INT)) ) { - alt32=1; + if ( (LA33_0==Unknown||LA33_0==Object||(LA33_0>=Count && LA33_0<=False)||LA33_0==True||LA33_0==Inf||(LA33_0>=ExclamationMark && LA33_0<=LeftParenthesis)||(LA33_0>=Asterisk && LA33_0<=PlusSign)||LA33_0==HyphenMinus||(LA33_0>=QuestionMark && LA33_0<=LeftSquareBracket)||(LA33_0>=Tilde && LA33_0<=RULE_QUOTED_ID)||(LA33_0>=RULE_ID && LA33_0<=RULE_INT)) ) { + alt33=1; } - switch (alt32) { + switch (alt33) { case 1 : - // InternalSolverLanguageParser.g:2597:4: ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* + // InternalSolverLanguageParser.g:2774:4: ( (lv_arguments_2_0= ruleArgument ) ) (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* { - // InternalSolverLanguageParser.g:2597:4: ( (lv_arguments_2_0= ruleArgument ) ) - // InternalSolverLanguageParser.g:2598:5: (lv_arguments_2_0= ruleArgument ) + // InternalSolverLanguageParser.g:2774:4: ( (lv_arguments_2_0= ruleArgument ) ) + // InternalSolverLanguageParser.g:2775:5: (lv_arguments_2_0= ruleArgument ) { - // InternalSolverLanguageParser.g:2598:5: (lv_arguments_2_0= ruleArgument ) - // InternalSolverLanguageParser.g:2599:6: lv_arguments_2_0= ruleArgument + // InternalSolverLanguageParser.g:2775:5: (lv_arguments_2_0= ruleArgument ) + // InternalSolverLanguageParser.g:2776:6: lv_arguments_2_0= ruleArgument { newCompositeNode(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_0_0()); - pushFollow(FOLLOW_41); + pushFollow(FOLLOW_43); lv_arguments_2_0=ruleArgument(); state._fsp--; @@ -6465,35 +6954,35 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:2616:4: (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* - loop31: + // InternalSolverLanguageParser.g:2793:4: (otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) )* + loop32: do { - int alt31=2; - int LA31_0 = input.LA(1); + int alt32=2; + int LA32_0 = input.LA(1); - if ( (LA31_0==Comma) ) { - alt31=1; + if ( (LA32_0==Comma) ) { + alt32=1; } - switch (alt31) { + switch (alt32) { case 1 : - // InternalSolverLanguageParser.g:2617:5: otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) + // InternalSolverLanguageParser.g:2794:5: otherlv_3= Comma ( (lv_arguments_4_0= ruleArgument ) ) { - otherlv_3=(Token)match(input,Comma,FOLLOW_42); + otherlv_3=(Token)match(input,Comma,FOLLOW_44); newLeafNode(otherlv_3, grammarAccess.getArgumentListAccess().getCommaKeyword_2_1_0()); - // InternalSolverLanguageParser.g:2621:5: ( (lv_arguments_4_0= ruleArgument ) ) - // InternalSolverLanguageParser.g:2622:6: (lv_arguments_4_0= ruleArgument ) + // InternalSolverLanguageParser.g:2798:5: ( (lv_arguments_4_0= ruleArgument ) ) + // InternalSolverLanguageParser.g:2799:6: (lv_arguments_4_0= ruleArgument ) { - // InternalSolverLanguageParser.g:2622:6: (lv_arguments_4_0= ruleArgument ) - // InternalSolverLanguageParser.g:2623:7: lv_arguments_4_0= ruleArgument + // InternalSolverLanguageParser.g:2799:6: (lv_arguments_4_0= ruleArgument ) + // InternalSolverLanguageParser.g:2800:7: lv_arguments_4_0= ruleArgument { newCompositeNode(grammarAccess.getArgumentListAccess().getArgumentsArgumentParserRuleCall_2_1_1_0()); - pushFollow(FOLLOW_41); + pushFollow(FOLLOW_43); lv_arguments_4_0=ruleArgument(); state._fsp--; @@ -6520,7 +7009,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - break loop31; + break loop32; } } while (true); @@ -6557,7 +7046,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleArgument" - // InternalSolverLanguageParser.g:2650:1: entryRuleArgument returns [EObject current=null] : iv_ruleArgument= ruleArgument EOF ; + // InternalSolverLanguageParser.g:2827:1: entryRuleArgument returns [EObject current=null] : iv_ruleArgument= ruleArgument EOF ; public final EObject entryRuleArgument() throws RecognitionException { EObject current = null; @@ -6565,8 +7054,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2650:49: (iv_ruleArgument= ruleArgument EOF ) - // InternalSolverLanguageParser.g:2651:2: iv_ruleArgument= ruleArgument EOF + // InternalSolverLanguageParser.g:2827:49: (iv_ruleArgument= ruleArgument EOF ) + // InternalSolverLanguageParser.g:2828:2: iv_ruleArgument= ruleArgument EOF { newCompositeNode(grammarAccess.getArgumentRule()); pushFollow(FOLLOW_1); @@ -6593,7 +7082,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleArgument" - // InternalSolverLanguageParser.g:2657:1: ruleArgument returns [EObject current=null] : (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) ; + // InternalSolverLanguageParser.g:2834:1: ruleArgument returns [EObject current=null] : (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedVariableArgument_2= ruleTypedVariableArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) ; public final EObject ruleArgument() throws RecognitionException { EObject current = null; @@ -6601,7 +7090,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { EObject this_StarArgument_1 = null; - EObject this_TypedArgument_2 = null; + EObject this_TypedVariableArgument_2 = null; EObject this_TypedStarArgument_3 = null; @@ -6610,15 +7099,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:2663:2: ( (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) ) - // InternalSolverLanguageParser.g:2664:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) + // InternalSolverLanguageParser.g:2840:2: ( (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedVariableArgument_2= ruleTypedVariableArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) ) + // InternalSolverLanguageParser.g:2841:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedVariableArgument_2= ruleTypedVariableArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) { - // InternalSolverLanguageParser.g:2664:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) - int alt33=4; - alt33 = dfa33.predict(input); - switch (alt33) { + // InternalSolverLanguageParser.g:2841:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedVariableArgument_2= ruleTypedVariableArgument | this_TypedStarArgument_3= ruleTypedStarArgument ) + int alt34=4; + alt34 = dfa34.predict(input); + switch (alt34) { case 1 : - // InternalSolverLanguageParser.g:2665:3: this_ExpressionArgument_0= ruleExpressionArgument + // InternalSolverLanguageParser.g:2842:3: this_ExpressionArgument_0= ruleExpressionArgument { newCompositeNode(grammarAccess.getArgumentAccess().getExpressionArgumentParserRuleCall_0()); @@ -6636,7 +7125,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:2674:3: this_StarArgument_1= ruleStarArgument + // InternalSolverLanguageParser.g:2851:3: this_StarArgument_1= ruleStarArgument { newCompositeNode(grammarAccess.getArgumentAccess().getStarArgumentParserRuleCall_1()); @@ -6654,25 +7143,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 3 : - // InternalSolverLanguageParser.g:2683:3: this_TypedArgument_2= ruleTypedArgument + // InternalSolverLanguageParser.g:2860:3: this_TypedVariableArgument_2= ruleTypedVariableArgument { - newCompositeNode(grammarAccess.getArgumentAccess().getTypedArgumentParserRuleCall_2()); + newCompositeNode(grammarAccess.getArgumentAccess().getTypedVariableArgumentParserRuleCall_2()); pushFollow(FOLLOW_2); - this_TypedArgument_2=ruleTypedArgument(); + this_TypedVariableArgument_2=ruleTypedVariableArgument(); state._fsp--; - current = this_TypedArgument_2; + current = this_TypedVariableArgument_2; afterParserOrEnumRuleCall(); } break; case 4 : - // InternalSolverLanguageParser.g:2692:3: this_TypedStarArgument_3= ruleTypedStarArgument + // InternalSolverLanguageParser.g:2869:3: this_TypedStarArgument_3= ruleTypedStarArgument { newCompositeNode(grammarAccess.getArgumentAccess().getTypedStarArgumentParserRuleCall_3()); @@ -6712,7 +7201,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleExpressionArgument" - // InternalSolverLanguageParser.g:2704:1: entryRuleExpressionArgument returns [EObject current=null] : iv_ruleExpressionArgument= ruleExpressionArgument EOF ; + // InternalSolverLanguageParser.g:2881:1: entryRuleExpressionArgument returns [EObject current=null] : iv_ruleExpressionArgument= ruleExpressionArgument EOF ; public final EObject entryRuleExpressionArgument() throws RecognitionException { EObject current = null; @@ -6720,8 +7209,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2704:59: (iv_ruleExpressionArgument= ruleExpressionArgument EOF ) - // InternalSolverLanguageParser.g:2705:2: iv_ruleExpressionArgument= ruleExpressionArgument EOF + // InternalSolverLanguageParser.g:2881:59: (iv_ruleExpressionArgument= ruleExpressionArgument EOF ) + // InternalSolverLanguageParser.g:2882:2: iv_ruleExpressionArgument= ruleExpressionArgument EOF { newCompositeNode(grammarAccess.getExpressionArgumentRule()); pushFollow(FOLLOW_1); @@ -6748,31 +7237,31 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleExpressionArgument" - // InternalSolverLanguageParser.g:2711:1: ruleExpressionArgument returns [EObject current=null] : ( (lv_body_0_0= ruleComparisonExpression ) ) ; + // InternalSolverLanguageParser.g:2888:1: ruleExpressionArgument returns [EObject current=null] : ( (lv_expression_0_0= ruleComparisonExpression ) ) ; public final EObject ruleExpressionArgument() throws RecognitionException { EObject current = null; - EObject lv_body_0_0 = null; + EObject lv_expression_0_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:2717:2: ( ( (lv_body_0_0= ruleComparisonExpression ) ) ) - // InternalSolverLanguageParser.g:2718:2: ( (lv_body_0_0= ruleComparisonExpression ) ) + // InternalSolverLanguageParser.g:2894:2: ( ( (lv_expression_0_0= ruleComparisonExpression ) ) ) + // InternalSolverLanguageParser.g:2895:2: ( (lv_expression_0_0= ruleComparisonExpression ) ) { - // InternalSolverLanguageParser.g:2718:2: ( (lv_body_0_0= ruleComparisonExpression ) ) - // InternalSolverLanguageParser.g:2719:3: (lv_body_0_0= ruleComparisonExpression ) + // InternalSolverLanguageParser.g:2895:2: ( (lv_expression_0_0= ruleComparisonExpression ) ) + // InternalSolverLanguageParser.g:2896:3: (lv_expression_0_0= ruleComparisonExpression ) { - // InternalSolverLanguageParser.g:2719:3: (lv_body_0_0= ruleComparisonExpression ) - // InternalSolverLanguageParser.g:2720:4: lv_body_0_0= ruleComparisonExpression + // InternalSolverLanguageParser.g:2896:3: (lv_expression_0_0= ruleComparisonExpression ) + // InternalSolverLanguageParser.g:2897:4: lv_expression_0_0= ruleComparisonExpression { - newCompositeNode(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0()); + newCompositeNode(grammarAccess.getExpressionArgumentAccess().getExpressionComparisonExpressionParserRuleCall_0()); pushFollow(FOLLOW_2); - lv_body_0_0=ruleComparisonExpression(); + lv_expression_0_0=ruleComparisonExpression(); state._fsp--; @@ -6782,8 +7271,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } set( current, - "body", - lv_body_0_0, + "expression", + lv_expression_0_0, "org.eclipse.viatra.solver.language.SolverLanguage.ComparisonExpression"); afterParserOrEnumRuleCall(); @@ -6813,7 +7302,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleStarArgument" - // InternalSolverLanguageParser.g:2740:1: entryRuleStarArgument returns [EObject current=null] : iv_ruleStarArgument= ruleStarArgument EOF ; + // InternalSolverLanguageParser.g:2917:1: entryRuleStarArgument returns [EObject current=null] : iv_ruleStarArgument= ruleStarArgument EOF ; public final EObject entryRuleStarArgument() throws RecognitionException { EObject current = null; @@ -6821,8 +7310,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2740:53: (iv_ruleStarArgument= ruleStarArgument EOF ) - // InternalSolverLanguageParser.g:2741:2: iv_ruleStarArgument= ruleStarArgument EOF + // InternalSolverLanguageParser.g:2917:53: (iv_ruleStarArgument= ruleStarArgument EOF ) + // InternalSolverLanguageParser.g:2918:2: iv_ruleStarArgument= ruleStarArgument EOF { newCompositeNode(grammarAccess.getStarArgumentRule()); pushFollow(FOLLOW_1); @@ -6849,7 +7338,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleStarArgument" - // InternalSolverLanguageParser.g:2747:1: ruleStarArgument returns [EObject current=null] : ( () otherlv_1= Asterisk ) ; + // InternalSolverLanguageParser.g:2924:1: ruleStarArgument returns [EObject current=null] : ( () otherlv_1= Asterisk ) ; public final EObject ruleStarArgument() throws RecognitionException { EObject current = null; @@ -6859,14 +7348,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:2753:2: ( ( () otherlv_1= Asterisk ) ) - // InternalSolverLanguageParser.g:2754:2: ( () otherlv_1= Asterisk ) + // InternalSolverLanguageParser.g:2930:2: ( ( () otherlv_1= Asterisk ) ) + // InternalSolverLanguageParser.g:2931:2: ( () otherlv_1= Asterisk ) { - // InternalSolverLanguageParser.g:2754:2: ( () otherlv_1= Asterisk ) - // InternalSolverLanguageParser.g:2755:3: () otherlv_1= Asterisk + // InternalSolverLanguageParser.g:2931:2: ( () otherlv_1= Asterisk ) + // InternalSolverLanguageParser.g:2932:3: () otherlv_1= Asterisk { - // InternalSolverLanguageParser.g:2755:3: () - // InternalSolverLanguageParser.g:2756:4: + // InternalSolverLanguageParser.g:2932:3: () + // InternalSolverLanguageParser.g:2933:4: { current = forceCreateModelElement( @@ -6902,25 +7391,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleStarArgument" - // $ANTLR start "entryRuleTypedArgument" - // InternalSolverLanguageParser.g:2770:1: entryRuleTypedArgument returns [EObject current=null] : iv_ruleTypedArgument= ruleTypedArgument EOF ; - public final EObject entryRuleTypedArgument() throws RecognitionException { + // $ANTLR start "entryRuleTypedVariableArgument" + // InternalSolverLanguageParser.g:2947:1: entryRuleTypedVariableArgument returns [EObject current=null] : iv_ruleTypedVariableArgument= ruleTypedVariableArgument EOF ; + public final EObject entryRuleTypedVariableArgument() throws RecognitionException { EObject current = null; - EObject iv_ruleTypedArgument = null; + EObject iv_ruleTypedVariableArgument = null; try { - // InternalSolverLanguageParser.g:2770:54: (iv_ruleTypedArgument= ruleTypedArgument EOF ) - // InternalSolverLanguageParser.g:2771:2: iv_ruleTypedArgument= ruleTypedArgument EOF + // InternalSolverLanguageParser.g:2947:62: (iv_ruleTypedVariableArgument= ruleTypedVariableArgument EOF ) + // InternalSolverLanguageParser.g:2948:2: iv_ruleTypedVariableArgument= ruleTypedVariableArgument EOF { - newCompositeNode(grammarAccess.getTypedArgumentRule()); + newCompositeNode(grammarAccess.getTypedVariableArgumentRule()); pushFollow(FOLLOW_1); - iv_ruleTypedArgument=ruleTypedArgument(); + iv_ruleTypedVariableArgument=ruleTypedVariableArgument(); state._fsp--; - current =iv_ruleTypedArgument; + current =iv_ruleTypedVariableArgument; match(input,EOF,FOLLOW_2); } @@ -6935,44 +7424,51 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleTypedArgument" + // $ANTLR end "entryRuleTypedVariableArgument" - // $ANTLR start "ruleTypedArgument" - // InternalSolverLanguageParser.g:2777:1: ruleTypedArgument returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) ; - public final EObject ruleTypedArgument() throws RecognitionException { + // $ANTLR start "ruleTypedVariableArgument" + // InternalSolverLanguageParser.g:2954:1: ruleTypedVariableArgument returns [EObject current=null] : ( ( (lv_typeReference_0_0= ruleTypeReference ) ) ( (lv_name_1_0= RULE_ID ) ) ) ; + public final EObject ruleTypedVariableArgument() throws RecognitionException { EObject current = null; + Token lv_name_1_0=null; + EObject lv_typeReference_0_0 = null; + + enterRule(); try { - // InternalSolverLanguageParser.g:2783:2: ( ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) ) - // InternalSolverLanguageParser.g:2784:2: ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:2960:2: ( ( ( (lv_typeReference_0_0= ruleTypeReference ) ) ( (lv_name_1_0= RULE_ID ) ) ) ) + // InternalSolverLanguageParser.g:2961:2: ( ( (lv_typeReference_0_0= ruleTypeReference ) ) ( (lv_name_1_0= RULE_ID ) ) ) { - // InternalSolverLanguageParser.g:2784:2: ( ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:2785:3: ( ( ruleQualifiedName ) ) ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:2961:2: ( ( (lv_typeReference_0_0= ruleTypeReference ) ) ( (lv_name_1_0= RULE_ID ) ) ) + // InternalSolverLanguageParser.g:2962:3: ( (lv_typeReference_0_0= ruleTypeReference ) ) ( (lv_name_1_0= RULE_ID ) ) { - // InternalSolverLanguageParser.g:2785:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:2786:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:2962:3: ( (lv_typeReference_0_0= ruleTypeReference ) ) + // InternalSolverLanguageParser.g:2963:4: (lv_typeReference_0_0= ruleTypeReference ) { - // InternalSolverLanguageParser.g:2786:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:2787:5: ruleQualifiedName + // InternalSolverLanguageParser.g:2963:4: (lv_typeReference_0_0= ruleTypeReference ) + // InternalSolverLanguageParser.g:2964:5: lv_typeReference_0_0= ruleTypeReference { - if (current==null) { - current = createModelElement(grammarAccess.getTypedArgumentRule()); - } - - - newCompositeNode(grammarAccess.getTypedArgumentAccess().getTypeNamedElementCrossReference_0_0()); + newCompositeNode(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); - pushFollow(FOLLOW_8); - ruleQualifiedName(); + pushFollow(FOLLOW_28); + lv_typeReference_0_0=ruleTypeReference(); state._fsp--; + if (current==null) { + current = createModelElementForParent(grammarAccess.getTypedVariableArgumentRule()); + } + set( + current, + "typeReference", + lv_typeReference_0_0, + "org.eclipse.viatra.solver.language.SolverLanguage.TypeReference"); afterParserOrEnumRuleCall(); @@ -6981,27 +7477,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:2801:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:2802:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:2981:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalSolverLanguageParser.g:2982:4: (lv_name_1_0= RULE_ID ) { - // InternalSolverLanguageParser.g:2802:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:2803:5: ruleQualifiedName + // InternalSolverLanguageParser.g:2982:4: (lv_name_1_0= RULE_ID ) + // InternalSolverLanguageParser.g:2983:5: lv_name_1_0= RULE_ID { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_2); - if (current==null) { - current = createModelElement(grammarAccess.getTypedArgumentRule()); - } - - - newCompositeNode(grammarAccess.getTypedArgumentAccess().getVariableNamedElementCrossReference_1_0()); + newLeafNode(lv_name_1_0, grammarAccess.getTypedVariableArgumentAccess().getNameIDTerminalRuleCall_1_0()); - pushFollow(FOLLOW_2); - ruleQualifiedName(); - - state._fsp--; - - afterParserOrEnumRuleCall(); + if (current==null) { + current = createModelElement(grammarAccess.getTypedVariableArgumentRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); } @@ -7028,11 +7522,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleTypedArgument" + // $ANTLR end "ruleTypedVariableArgument" // $ANTLR start "entryRuleTypedStarArgument" - // InternalSolverLanguageParser.g:2821:1: entryRuleTypedStarArgument returns [EObject current=null] : iv_ruleTypedStarArgument= ruleTypedStarArgument EOF ; + // InternalSolverLanguageParser.g:3003:1: entryRuleTypedStarArgument returns [EObject current=null] : iv_ruleTypedStarArgument= ruleTypedStarArgument EOF ; public final EObject entryRuleTypedStarArgument() throws RecognitionException { EObject current = null; @@ -7040,8 +7534,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2821:58: (iv_ruleTypedStarArgument= ruleTypedStarArgument EOF ) - // InternalSolverLanguageParser.g:2822:2: iv_ruleTypedStarArgument= ruleTypedStarArgument EOF + // InternalSolverLanguageParser.g:3003:58: (iv_ruleTypedStarArgument= ruleTypedStarArgument EOF ) + // InternalSolverLanguageParser.g:3004:2: iv_ruleTypedStarArgument= ruleTypedStarArgument EOF { newCompositeNode(grammarAccess.getTypedStarArgumentRule()); pushFollow(FOLLOW_1); @@ -7068,42 +7562,47 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleTypedStarArgument" - // InternalSolverLanguageParser.g:2828:1: ruleTypedStarArgument returns [EObject current=null] : ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) ; + // InternalSolverLanguageParser.g:3010:1: ruleTypedStarArgument returns [EObject current=null] : ( ( (lv_typeReference_0_0= ruleTypeReference ) ) otherlv_1= Asterisk ) ; public final EObject ruleTypedStarArgument() throws RecognitionException { EObject current = null; Token otherlv_1=null; + EObject lv_typeReference_0_0 = null; + enterRule(); try { - // InternalSolverLanguageParser.g:2834:2: ( ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) ) - // InternalSolverLanguageParser.g:2835:2: ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) + // InternalSolverLanguageParser.g:3016:2: ( ( ( (lv_typeReference_0_0= ruleTypeReference ) ) otherlv_1= Asterisk ) ) + // InternalSolverLanguageParser.g:3017:2: ( ( (lv_typeReference_0_0= ruleTypeReference ) ) otherlv_1= Asterisk ) { - // InternalSolverLanguageParser.g:2835:2: ( ( ( ruleQualifiedName ) ) otherlv_1= Asterisk ) - // InternalSolverLanguageParser.g:2836:3: ( ( ruleQualifiedName ) ) otherlv_1= Asterisk + // InternalSolverLanguageParser.g:3017:2: ( ( (lv_typeReference_0_0= ruleTypeReference ) ) otherlv_1= Asterisk ) + // InternalSolverLanguageParser.g:3018:3: ( (lv_typeReference_0_0= ruleTypeReference ) ) otherlv_1= Asterisk { - // InternalSolverLanguageParser.g:2836:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:2837:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3018:3: ( (lv_typeReference_0_0= ruleTypeReference ) ) + // InternalSolverLanguageParser.g:3019:4: (lv_typeReference_0_0= ruleTypeReference ) { - // InternalSolverLanguageParser.g:2837:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:2838:5: ruleQualifiedName + // InternalSolverLanguageParser.g:3019:4: (lv_typeReference_0_0= ruleTypeReference ) + // InternalSolverLanguageParser.g:3020:5: lv_typeReference_0_0= ruleTypeReference { - if (current==null) { - current = createModelElement(grammarAccess.getTypedStarArgumentRule()); - } - - - newCompositeNode(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementCrossReference_0_0()); + newCompositeNode(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0()); - pushFollow(FOLLOW_43); - ruleQualifiedName(); + pushFollow(FOLLOW_45); + lv_typeReference_0_0=ruleTypeReference(); state._fsp--; + if (current==null) { + current = createModelElementForParent(grammarAccess.getTypedStarArgumentRule()); + } + set( + current, + "typeReference", + lv_typeReference_0_0, + "org.eclipse.viatra.solver.language.SolverLanguage.TypeReference"); afterParserOrEnumRuleCall(); @@ -7139,7 +7638,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleReference" - // InternalSolverLanguageParser.g:2860:1: entryRuleReference returns [EObject current=null] : iv_ruleReference= ruleReference EOF ; + // InternalSolverLanguageParser.g:3045:1: entryRuleReference returns [EObject current=null] : iv_ruleReference= ruleReference EOF ; public final EObject entryRuleReference() throws RecognitionException { EObject current = null; @@ -7147,8 +7646,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2860:50: (iv_ruleReference= ruleReference EOF ) - // InternalSolverLanguageParser.g:2861:2: iv_ruleReference= ruleReference EOF + // InternalSolverLanguageParser.g:3045:50: (iv_ruleReference= ruleReference EOF ) + // InternalSolverLanguageParser.g:3046:2: iv_ruleReference= ruleReference EOF { newCompositeNode(grammarAccess.getReferenceRule()); pushFollow(FOLLOW_1); @@ -7175,39 +7674,329 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleReference" - // InternalSolverLanguageParser.g:2867:1: ruleReference returns [EObject current=null] : ( ( ruleQualifiedName ) ) ; + // InternalSolverLanguageParser.g:3052:1: ruleReference returns [EObject current=null] : ( ( (lv_components_0_0= rulePathComponent ) ) (otherlv_1= FullStop ( (lv_components_2_0= rulePathComponent ) ) )* ) ; public final EObject ruleReference() throws RecognitionException { EObject current = null; + Token otherlv_1=null; + EObject lv_components_0_0 = null; + + EObject lv_components_2_0 = null; + + + + enterRule(); + + try { + // InternalSolverLanguageParser.g:3058:2: ( ( ( (lv_components_0_0= rulePathComponent ) ) (otherlv_1= FullStop ( (lv_components_2_0= rulePathComponent ) ) )* ) ) + // InternalSolverLanguageParser.g:3059:2: ( ( (lv_components_0_0= rulePathComponent ) ) (otherlv_1= FullStop ( (lv_components_2_0= rulePathComponent ) ) )* ) + { + // InternalSolverLanguageParser.g:3059:2: ( ( (lv_components_0_0= rulePathComponent ) ) (otherlv_1= FullStop ( (lv_components_2_0= rulePathComponent ) ) )* ) + // InternalSolverLanguageParser.g:3060:3: ( (lv_components_0_0= rulePathComponent ) ) (otherlv_1= FullStop ( (lv_components_2_0= rulePathComponent ) ) )* + { + // InternalSolverLanguageParser.g:3060:3: ( (lv_components_0_0= rulePathComponent ) ) + // InternalSolverLanguageParser.g:3061:4: (lv_components_0_0= rulePathComponent ) + { + // InternalSolverLanguageParser.g:3061:4: (lv_components_0_0= rulePathComponent ) + // InternalSolverLanguageParser.g:3062:5: lv_components_0_0= rulePathComponent + { + + newCompositeNode(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_0_0()); + + pushFollow(FOLLOW_46); + lv_components_0_0=rulePathComponent(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getReferenceRule()); + } + add( + current, + "components", + lv_components_0_0, + "org.eclipse.viatra.solver.language.SolverLanguage.PathComponent"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalSolverLanguageParser.g:3079:3: (otherlv_1= FullStop ( (lv_components_2_0= rulePathComponent ) ) )* + loop35: + do { + int alt35=2; + int LA35_0 = input.LA(1); + + if ( (LA35_0==FullStop) ) { + alt35=1; + } + + + switch (alt35) { + case 1 : + // InternalSolverLanguageParser.g:3080:4: otherlv_1= FullStop ( (lv_components_2_0= rulePathComponent ) ) + { + otherlv_1=(Token)match(input,FullStop,FOLLOW_12); + + newLeafNode(otherlv_1, grammarAccess.getReferenceAccess().getFullStopKeyword_1_0()); + + // InternalSolverLanguageParser.g:3084:4: ( (lv_components_2_0= rulePathComponent ) ) + // InternalSolverLanguageParser.g:3085:5: (lv_components_2_0= rulePathComponent ) + { + // InternalSolverLanguageParser.g:3085:5: (lv_components_2_0= rulePathComponent ) + // InternalSolverLanguageParser.g:3086:6: lv_components_2_0= rulePathComponent + { + + newCompositeNode(grammarAccess.getReferenceAccess().getComponentsPathComponentParserRuleCall_1_1_0()); + + pushFollow(FOLLOW_46); + lv_components_2_0=rulePathComponent(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getReferenceRule()); + } + add( + current, + "components", + lv_components_2_0, + "org.eclipse.viatra.solver.language.SolverLanguage.PathComponent"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop35; + } + } while (true); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleReference" + + + // $ANTLR start "entryRulePathComponent" + // InternalSolverLanguageParser.g:3108:1: entryRulePathComponent returns [EObject current=null] : iv_rulePathComponent= rulePathComponent EOF ; + public final EObject entryRulePathComponent() throws RecognitionException { + EObject current = null; + + EObject iv_rulePathComponent = null; + + + try { + // InternalSolverLanguageParser.g:3108:54: (iv_rulePathComponent= rulePathComponent EOF ) + // InternalSolverLanguageParser.g:3109:2: iv_rulePathComponent= rulePathComponent EOF + { + newCompositeNode(grammarAccess.getPathComponentRule()); + pushFollow(FOLLOW_1); + iv_rulePathComponent=rulePathComponent(); + + state._fsp--; + + current =iv_rulePathComponent; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRulePathComponent" + + + // $ANTLR start "rulePathComponent" + // InternalSolverLanguageParser.g:3115:1: rulePathComponent returns [EObject current=null] : ( ( (lv_inverse_0_0= Tilde ) )? ( ( ruleQualifiedName ) ) ( ( (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ) ; + public final EObject rulePathComponent() throws RecognitionException { + EObject current = null; + + Token lv_inverse_0_0=null; + Token lv_transitiveClosure_2_0=null; + Token lv_reflexiveTransitiveClosure_3_0=null; + enterRule(); try { - // InternalSolverLanguageParser.g:2873:2: ( ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:2874:2: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:3121:2: ( ( ( (lv_inverse_0_0= Tilde ) )? ( ( ruleQualifiedName ) ) ( ( (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ) ) + // InternalSolverLanguageParser.g:3122:2: ( ( (lv_inverse_0_0= Tilde ) )? ( ( ruleQualifiedName ) ) ( ( (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ) + { + // InternalSolverLanguageParser.g:3122:2: ( ( (lv_inverse_0_0= Tilde ) )? ( ( ruleQualifiedName ) ) ( ( (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? ) + // InternalSolverLanguageParser.g:3123:3: ( (lv_inverse_0_0= Tilde ) )? ( ( ruleQualifiedName ) ) ( ( (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? { - // InternalSolverLanguageParser.g:2874:2: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:2875:3: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3123:3: ( (lv_inverse_0_0= Tilde ) )? + int alt36=2; + int LA36_0 = input.LA(1); + + if ( (LA36_0==Tilde) ) { + alt36=1; + } + switch (alt36) { + case 1 : + // InternalSolverLanguageParser.g:3124:4: (lv_inverse_0_0= Tilde ) + { + // InternalSolverLanguageParser.g:3124:4: (lv_inverse_0_0= Tilde ) + // InternalSolverLanguageParser.g:3125:5: lv_inverse_0_0= Tilde + { + lv_inverse_0_0=(Token)match(input,Tilde,FOLLOW_3); + + newLeafNode(lv_inverse_0_0, grammarAccess.getPathComponentAccess().getInverseTildeKeyword_0_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getPathComponentRule()); + } + setWithLastConsumed(current, "inverse", true, "~"); + + + } + + + } + break; + + } + + // InternalSolverLanguageParser.g:3137:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:3138:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:2875:3: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:2876:4: ruleQualifiedName + // InternalSolverLanguageParser.g:3138:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3139:5: ruleQualifiedName { - if (current==null) { - current = createModelElement(grammarAccess.getReferenceRule()); - } - + if (current==null) { + current = createModelElement(grammarAccess.getPathComponentRule()); + } + + + newCompositeNode(grammarAccess.getPathComponentAccess().getSymbolSymbolCrossReference_1_0()); + + pushFollow(FOLLOW_47); + ruleQualifiedName(); + + state._fsp--; + + + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalSolverLanguageParser.g:3153:3: ( ( (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) ) | ( (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) )? + int alt37=3; + int LA37_0 = input.LA(1); + + if ( (LA37_0==RULE_TRANSITIVE_CLOSURE) ) { + alt37=1; + } + else if ( (LA37_0==RULE_REFLEXIVE_TRANSITIVE_CLOSURE) ) { + alt37=2; + } + switch (alt37) { + case 1 : + // InternalSolverLanguageParser.g:3154:4: ( (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) ) + { + // InternalSolverLanguageParser.g:3154:4: ( (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) ) + // InternalSolverLanguageParser.g:3155:5: (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) + { + // InternalSolverLanguageParser.g:3155:5: (lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE ) + // InternalSolverLanguageParser.g:3156:6: lv_transitiveClosure_2_0= RULE_TRANSITIVE_CLOSURE + { + lv_transitiveClosure_2_0=(Token)match(input,RULE_TRANSITIVE_CLOSURE,FOLLOW_2); + + newLeafNode(lv_transitiveClosure_2_0, grammarAccess.getPathComponentAccess().getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getPathComponentRule()); + } + setWithLastConsumed( + current, + "transitiveClosure", + true, + "org.eclipse.viatra.solver.language.SolverLanguage.TRANSITIVE_CLOSURE"); + + + } + + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:3173:4: ( (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) + { + // InternalSolverLanguageParser.g:3173:4: ( (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) ) + // InternalSolverLanguageParser.g:3174:5: (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) + { + // InternalSolverLanguageParser.g:3174:5: (lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE ) + // InternalSolverLanguageParser.g:3175:6: lv_reflexiveTransitiveClosure_3_0= RULE_REFLEXIVE_TRANSITIVE_CLOSURE + { + lv_reflexiveTransitiveClosure_3_0=(Token)match(input,RULE_REFLEXIVE_TRANSITIVE_CLOSURE,FOLLOW_2); + + newLeafNode(lv_reflexiveTransitiveClosure_3_0, grammarAccess.getPathComponentAccess().getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getPathComponentRule()); + } + setWithLastConsumed( + current, + "reflexiveTransitiveClosure", + true, + "org.eclipse.viatra.solver.language.SolverLanguage.REFLEXIVE_TRANSITIVE_CLOSURE"); + + + } - newCompositeNode(grammarAccess.getReferenceAccess().getReferredNamedElementCrossReference_0()); - - pushFollow(FOLLOW_2); - ruleQualifiedName(); - state._fsp--; + } - afterParserOrEnumRuleCall(); - + } + break; } @@ -7230,11 +8019,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleReference" + // $ANTLR end "rulePathComponent" // $ANTLR start "entryRuleInterval" - // InternalSolverLanguageParser.g:2893:1: entryRuleInterval returns [EObject current=null] : iv_ruleInterval= ruleInterval EOF ; + // InternalSolverLanguageParser.g:3196:1: entryRuleInterval returns [EObject current=null] : iv_ruleInterval= ruleInterval EOF ; public final EObject entryRuleInterval() throws RecognitionException { EObject current = null; @@ -7242,8 +8031,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2893:49: (iv_ruleInterval= ruleInterval EOF ) - // InternalSolverLanguageParser.g:2894:2: iv_ruleInterval= ruleInterval EOF + // InternalSolverLanguageParser.g:3196:49: (iv_ruleInterval= ruleInterval EOF ) + // InternalSolverLanguageParser.g:3197:2: iv_ruleInterval= ruleInterval EOF { newCompositeNode(grammarAccess.getIntervalRule()); pushFollow(FOLLOW_1); @@ -7270,7 +8059,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleInterval" - // InternalSolverLanguageParser.g:2900:1: ruleInterval returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) ; + // InternalSolverLanguageParser.g:3203:1: ruleInterval returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleAdditiveExpression ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleAdditiveExpression ) ) otherlv_4= RightSquareBracket ) ; public final EObject ruleInterval() throws RecognitionException { EObject current = null; @@ -7286,27 +8075,27 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:2906:2: ( (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) ) - // InternalSolverLanguageParser.g:2907:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) + // InternalSolverLanguageParser.g:3209:2: ( (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleAdditiveExpression ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleAdditiveExpression ) ) otherlv_4= RightSquareBracket ) ) + // InternalSolverLanguageParser.g:3210:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleAdditiveExpression ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleAdditiveExpression ) ) otherlv_4= RightSquareBracket ) { - // InternalSolverLanguageParser.g:2907:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket ) - // InternalSolverLanguageParser.g:2908:3: otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleExpression ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleExpression ) ) otherlv_4= RightSquareBracket + // InternalSolverLanguageParser.g:3210:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleAdditiveExpression ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleAdditiveExpression ) ) otherlv_4= RightSquareBracket ) + // InternalSolverLanguageParser.g:3211:3: otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= ruleAdditiveExpression ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleAdditiveExpression ) ) otherlv_4= RightSquareBracket { - otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_6); + otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_10); newLeafNode(otherlv_0, grammarAccess.getIntervalAccess().getLeftSquareBracketKeyword_0()); - // InternalSolverLanguageParser.g:2912:3: ( (lv_lowerBound_1_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:2913:4: (lv_lowerBound_1_0= ruleExpression ) + // InternalSolverLanguageParser.g:3215:3: ( (lv_lowerBound_1_0= ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:3216:4: (lv_lowerBound_1_0= ruleAdditiveExpression ) { - // InternalSolverLanguageParser.g:2913:4: (lv_lowerBound_1_0= ruleExpression ) - // InternalSolverLanguageParser.g:2914:5: lv_lowerBound_1_0= ruleExpression + // InternalSolverLanguageParser.g:3216:4: (lv_lowerBound_1_0= ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:3217:5: lv_lowerBound_1_0= ruleAdditiveExpression { - newCompositeNode(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getIntervalAccess().getLowerBoundAdditiveExpressionParserRuleCall_1_0()); - pushFollow(FOLLOW_44); - lv_lowerBound_1_0=ruleExpression(); + pushFollow(FOLLOW_48); + lv_lowerBound_1_0=ruleAdditiveExpression(); state._fsp--; @@ -7318,7 +8107,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current, "lowerBound", lv_lowerBound_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveExpression"); afterParserOrEnumRuleCall(); @@ -7327,21 +8116,21 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,FullStopFullStop,FOLLOW_6); + otherlv_2=(Token)match(input,Comma,FOLLOW_10); - newLeafNode(otherlv_2, grammarAccess.getIntervalAccess().getFullStopFullStopKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getIntervalAccess().getCommaKeyword_2()); - // InternalSolverLanguageParser.g:2935:3: ( (lv_upperBound_3_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:2936:4: (lv_upperBound_3_0= ruleExpression ) + // InternalSolverLanguageParser.g:3238:3: ( (lv_upperBound_3_0= ruleAdditiveExpression ) ) + // InternalSolverLanguageParser.g:3239:4: (lv_upperBound_3_0= ruleAdditiveExpression ) { - // InternalSolverLanguageParser.g:2936:4: (lv_upperBound_3_0= ruleExpression ) - // InternalSolverLanguageParser.g:2937:5: lv_upperBound_3_0= ruleExpression + // InternalSolverLanguageParser.g:3239:4: (lv_upperBound_3_0= ruleAdditiveExpression ) + // InternalSolverLanguageParser.g:3240:5: lv_upperBound_3_0= ruleAdditiveExpression { - newCompositeNode(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0()); + newCompositeNode(grammarAccess.getIntervalAccess().getUpperBoundAdditiveExpressionParserRuleCall_3_0()); - pushFollow(FOLLOW_45); - lv_upperBound_3_0=ruleExpression(); + pushFollow(FOLLOW_49); + lv_upperBound_3_0=ruleAdditiveExpression(); state._fsp--; @@ -7353,7 +8142,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { current, "upperBound", lv_upperBound_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveExpression"); afterParserOrEnumRuleCall(); @@ -7389,7 +8178,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleLiteral" - // InternalSolverLanguageParser.g:2962:1: entryRuleLiteral returns [EObject current=null] : iv_ruleLiteral= ruleLiteral EOF ; + // InternalSolverLanguageParser.g:3265:1: entryRuleLiteral returns [EObject current=null] : iv_ruleLiteral= ruleLiteral EOF ; public final EObject entryRuleLiteral() throws RecognitionException { EObject current = null; @@ -7397,8 +8186,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:2962:48: (iv_ruleLiteral= ruleLiteral EOF ) - // InternalSolverLanguageParser.g:2963:2: iv_ruleLiteral= ruleLiteral EOF + // InternalSolverLanguageParser.g:3265:48: (iv_ruleLiteral= ruleLiteral EOF ) + // InternalSolverLanguageParser.g:3266:2: iv_ruleLiteral= ruleLiteral EOF { newCompositeNode(grammarAccess.getLiteralRule()); pushFollow(FOLLOW_1); @@ -7425,69 +8214,84 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleLiteral" - // InternalSolverLanguageParser.g:2969:1: ruleLiteral returns [EObject current=null] : (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) ; + // InternalSolverLanguageParser.g:3272:1: ruleLiteral returns [EObject current=null] : (this_LogicLiteral_0= ruleLogicLiteral | this_IntLiteral_1= ruleIntLiteral | this_RealLiteral_2= ruleRealLiteral | this_InfinityLiteral_3= ruleInfinityLiteral | this_EmptyLiteral_4= ruleEmptyLiteral | this_StringLiteral_5= ruleStringLiteral ) ; public final EObject ruleLiteral() throws RecognitionException { EObject current = null; EObject this_LogicLiteral_0 = null; - EObject this_NumericLiteral_1 = null; + EObject this_IntLiteral_1 = null; + + EObject this_RealLiteral_2 = null; - EObject this_InfinityLiteral_2 = null; + EObject this_InfinityLiteral_3 = null; - EObject this_EmptyIntervalLiteral_3 = null; + EObject this_EmptyLiteral_4 = null; - EObject this_StringLiteral_4 = null; + EObject this_StringLiteral_5 = null; enterRule(); try { - // InternalSolverLanguageParser.g:2975:2: ( (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) ) - // InternalSolverLanguageParser.g:2976:2: (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) + // InternalSolverLanguageParser.g:3278:2: ( (this_LogicLiteral_0= ruleLogicLiteral | this_IntLiteral_1= ruleIntLiteral | this_RealLiteral_2= ruleRealLiteral | this_InfinityLiteral_3= ruleInfinityLiteral | this_EmptyLiteral_4= ruleEmptyLiteral | this_StringLiteral_5= ruleStringLiteral ) ) + // InternalSolverLanguageParser.g:3279:2: (this_LogicLiteral_0= ruleLogicLiteral | this_IntLiteral_1= ruleIntLiteral | this_RealLiteral_2= ruleRealLiteral | this_InfinityLiteral_3= ruleInfinityLiteral | this_EmptyLiteral_4= ruleEmptyLiteral | this_StringLiteral_5= ruleStringLiteral ) { - // InternalSolverLanguageParser.g:2976:2: (this_LogicLiteral_0= ruleLogicLiteral | this_NumericLiteral_1= ruleNumericLiteral | this_InfinityLiteral_2= ruleInfinityLiteral | this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral | this_StringLiteral_4= ruleStringLiteral ) - int alt34=5; + // InternalSolverLanguageParser.g:3279:2: (this_LogicLiteral_0= ruleLogicLiteral | this_IntLiteral_1= ruleIntLiteral | this_RealLiteral_2= ruleRealLiteral | this_InfinityLiteral_3= ruleInfinityLiteral | this_EmptyLiteral_4= ruleEmptyLiteral | this_StringLiteral_5= ruleStringLiteral ) + int alt38=6; switch ( input.LA(1) ) { case Unknown: case Error: case False: case True: { - alt34=1; + alt38=1; } break; case RULE_INT: { - alt34=2; + int LA38_2 = input.LA(2); + + if ( (LA38_2==EOF||LA38_2==Else||LA38_2==Then||(LA38_2>=ExclamationMarkEqualsSign && LA38_2<=ColonHyphenMinus)||(LA38_2>=ColonEqualsSign && LA38_2<=As)||LA38_2==In||(LA38_2>=RightParenthesis && LA38_2<=HyphenMinus)||(LA38_2>=Solidus && LA38_2<=LessThanSign)||LA38_2==GreaterThanSign||(LA38_2>=RightSquareBracket && LA38_2<=CircumflexAccent)||(LA38_2>=VerticalLine && LA38_2<=RightCurlyBracket)||LA38_2==RULE_FULL_STOP) ) { + alt38=2; + } + else if ( (LA38_2==FullStop) ) { + alt38=3; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 38, 2, input); + + throw nvae; + } } break; case Inf: { - alt34=3; + alt38=4; } break; case Empty: { - alt34=4; + alt38=5; } break; case RULE_STRING: { - alt34=5; + alt38=6; } break; default: NoViableAltException nvae = - new NoViableAltException("", 34, 0, input); + new NoViableAltException("", 38, 0, input); throw nvae; } - switch (alt34) { + switch (alt38) { case 1 : - // InternalSolverLanguageParser.g:2977:3: this_LogicLiteral_0= ruleLogicLiteral + // InternalSolverLanguageParser.g:3280:3: this_LogicLiteral_0= ruleLogicLiteral { newCompositeNode(grammarAccess.getLiteralAccess().getLogicLiteralParserRuleCall_0()); @@ -7505,72 +8309,90 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:2986:3: this_NumericLiteral_1= ruleNumericLiteral + // InternalSolverLanguageParser.g:3289:3: this_IntLiteral_1= ruleIntLiteral { - newCompositeNode(grammarAccess.getLiteralAccess().getNumericLiteralParserRuleCall_1()); + newCompositeNode(grammarAccess.getLiteralAccess().getIntLiteralParserRuleCall_1()); pushFollow(FOLLOW_2); - this_NumericLiteral_1=ruleNumericLiteral(); + this_IntLiteral_1=ruleIntLiteral(); state._fsp--; - current = this_NumericLiteral_1; + current = this_IntLiteral_1; afterParserOrEnumRuleCall(); } break; case 3 : - // InternalSolverLanguageParser.g:2995:3: this_InfinityLiteral_2= ruleInfinityLiteral + // InternalSolverLanguageParser.g:3298:3: this_RealLiteral_2= ruleRealLiteral { - newCompositeNode(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_2()); + newCompositeNode(grammarAccess.getLiteralAccess().getRealLiteralParserRuleCall_2()); pushFollow(FOLLOW_2); - this_InfinityLiteral_2=ruleInfinityLiteral(); + this_RealLiteral_2=ruleRealLiteral(); state._fsp--; - current = this_InfinityLiteral_2; + current = this_RealLiteral_2; afterParserOrEnumRuleCall(); } break; case 4 : - // InternalSolverLanguageParser.g:3004:3: this_EmptyIntervalLiteral_3= ruleEmptyIntervalLiteral + // InternalSolverLanguageParser.g:3307:3: this_InfinityLiteral_3= ruleInfinityLiteral { - newCompositeNode(grammarAccess.getLiteralAccess().getEmptyIntervalLiteralParserRuleCall_3()); + newCompositeNode(grammarAccess.getLiteralAccess().getInfinityLiteralParserRuleCall_3()); pushFollow(FOLLOW_2); - this_EmptyIntervalLiteral_3=ruleEmptyIntervalLiteral(); + this_InfinityLiteral_3=ruleInfinityLiteral(); state._fsp--; - current = this_EmptyIntervalLiteral_3; + current = this_InfinityLiteral_3; afterParserOrEnumRuleCall(); } break; case 5 : - // InternalSolverLanguageParser.g:3013:3: this_StringLiteral_4= ruleStringLiteral + // InternalSolverLanguageParser.g:3316:3: this_EmptyLiteral_4= ruleEmptyLiteral + { + + newCompositeNode(grammarAccess.getLiteralAccess().getEmptyLiteralParserRuleCall_4()); + + pushFollow(FOLLOW_2); + this_EmptyLiteral_4=ruleEmptyLiteral(); + + state._fsp--; + + + current = this_EmptyLiteral_4; + afterParserOrEnumRuleCall(); + + + } + break; + case 6 : + // InternalSolverLanguageParser.g:3325:3: this_StringLiteral_5= ruleStringLiteral { - newCompositeNode(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_4()); + newCompositeNode(grammarAccess.getLiteralAccess().getStringLiteralParserRuleCall_5()); pushFollow(FOLLOW_2); - this_StringLiteral_4=ruleStringLiteral(); + this_StringLiteral_5=ruleStringLiteral(); state._fsp--; - current = this_StringLiteral_4; + current = this_StringLiteral_5; afterParserOrEnumRuleCall(); @@ -7599,7 +8421,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleLogicLiteral" - // InternalSolverLanguageParser.g:3025:1: entryRuleLogicLiteral returns [EObject current=null] : iv_ruleLogicLiteral= ruleLogicLiteral EOF ; + // InternalSolverLanguageParser.g:3337:1: entryRuleLogicLiteral returns [EObject current=null] : iv_ruleLogicLiteral= ruleLogicLiteral EOF ; public final EObject entryRuleLogicLiteral() throws RecognitionException { EObject current = null; @@ -7607,8 +8429,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:3025:53: (iv_ruleLogicLiteral= ruleLogicLiteral EOF ) - // InternalSolverLanguageParser.g:3026:2: iv_ruleLogicLiteral= ruleLogicLiteral EOF + // InternalSolverLanguageParser.g:3337:53: (iv_ruleLogicLiteral= ruleLogicLiteral EOF ) + // InternalSolverLanguageParser.g:3338:2: iv_ruleLogicLiteral= ruleLogicLiteral EOF { newCompositeNode(grammarAccess.getLogicLiteralRule()); pushFollow(FOLLOW_1); @@ -7635,7 +8457,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleLogicLiteral" - // InternalSolverLanguageParser.g:3032:1: ruleLogicLiteral returns [EObject current=null] : ( (lv_value_0_0= ruleLogicValue ) ) ; + // InternalSolverLanguageParser.g:3344:1: ruleLogicLiteral returns [EObject current=null] : ( (lv_value_0_0= ruleLogicValue ) ) ; public final EObject ruleLogicLiteral() throws RecognitionException { EObject current = null; @@ -7646,14 +8468,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:3038:2: ( ( (lv_value_0_0= ruleLogicValue ) ) ) - // InternalSolverLanguageParser.g:3039:2: ( (lv_value_0_0= ruleLogicValue ) ) + // InternalSolverLanguageParser.g:3350:2: ( ( (lv_value_0_0= ruleLogicValue ) ) ) + // InternalSolverLanguageParser.g:3351:2: ( (lv_value_0_0= ruleLogicValue ) ) { - // InternalSolverLanguageParser.g:3039:2: ( (lv_value_0_0= ruleLogicValue ) ) - // InternalSolverLanguageParser.g:3040:3: (lv_value_0_0= ruleLogicValue ) + // InternalSolverLanguageParser.g:3351:2: ( (lv_value_0_0= ruleLogicValue ) ) + // InternalSolverLanguageParser.g:3352:3: (lv_value_0_0= ruleLogicValue ) { - // InternalSolverLanguageParser.g:3040:3: (lv_value_0_0= ruleLogicValue ) - // InternalSolverLanguageParser.g:3041:4: lv_value_0_0= ruleLogicValue + // InternalSolverLanguageParser.g:3352:3: (lv_value_0_0= ruleLogicValue ) + // InternalSolverLanguageParser.g:3353:4: lv_value_0_0= ruleLogicValue { newCompositeNode(grammarAccess.getLogicLiteralAccess().getValueLogicValueEnumRuleCall_0()); @@ -7699,25 +8521,120 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleLogicLiteral" - // $ANTLR start "entryRuleNumericLiteral" - // InternalSolverLanguageParser.g:3061:1: entryRuleNumericLiteral returns [EObject current=null] : iv_ruleNumericLiteral= ruleNumericLiteral EOF ; - public final EObject entryRuleNumericLiteral() throws RecognitionException { + // $ANTLR start "entryRuleIntLiteral" + // InternalSolverLanguageParser.g:3373:1: entryRuleIntLiteral returns [EObject current=null] : iv_ruleIntLiteral= ruleIntLiteral EOF ; + public final EObject entryRuleIntLiteral() throws RecognitionException { + EObject current = null; + + EObject iv_ruleIntLiteral = null; + + + try { + // InternalSolverLanguageParser.g:3373:51: (iv_ruleIntLiteral= ruleIntLiteral EOF ) + // InternalSolverLanguageParser.g:3374:2: iv_ruleIntLiteral= ruleIntLiteral EOF + { + newCompositeNode(grammarAccess.getIntLiteralRule()); + pushFollow(FOLLOW_1); + iv_ruleIntLiteral=ruleIntLiteral(); + + state._fsp--; + + current =iv_ruleIntLiteral; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleIntLiteral" + + + // $ANTLR start "ruleIntLiteral" + // InternalSolverLanguageParser.g:3380:1: ruleIntLiteral returns [EObject current=null] : ( (lv_value_0_0= RULE_INT ) ) ; + public final EObject ruleIntLiteral() throws RecognitionException { + EObject current = null; + + Token lv_value_0_0=null; + + + enterRule(); + + try { + // InternalSolverLanguageParser.g:3386:2: ( ( (lv_value_0_0= RULE_INT ) ) ) + // InternalSolverLanguageParser.g:3387:2: ( (lv_value_0_0= RULE_INT ) ) + { + // InternalSolverLanguageParser.g:3387:2: ( (lv_value_0_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:3388:3: (lv_value_0_0= RULE_INT ) + { + // InternalSolverLanguageParser.g:3388:3: (lv_value_0_0= RULE_INT ) + // InternalSolverLanguageParser.g:3389:4: lv_value_0_0= RULE_INT + { + lv_value_0_0=(Token)match(input,RULE_INT,FOLLOW_2); + + newLeafNode(lv_value_0_0, grammarAccess.getIntLiteralAccess().getValueINTTerminalRuleCall_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getIntLiteralRule()); + } + setWithLastConsumed( + current, + "value", + lv_value_0_0, + "org.eclipse.xtext.common.Terminals.INT"); + + + } + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleIntLiteral" + + + // $ANTLR start "entryRuleRealLiteral" + // InternalSolverLanguageParser.g:3408:1: entryRuleRealLiteral returns [EObject current=null] : iv_ruleRealLiteral= ruleRealLiteral EOF ; + public final EObject entryRuleRealLiteral() throws RecognitionException { EObject current = null; - EObject iv_ruleNumericLiteral = null; + EObject iv_ruleRealLiteral = null; try { - // InternalSolverLanguageParser.g:3061:55: (iv_ruleNumericLiteral= ruleNumericLiteral EOF ) - // InternalSolverLanguageParser.g:3062:2: iv_ruleNumericLiteral= ruleNumericLiteral EOF + // InternalSolverLanguageParser.g:3408:52: (iv_ruleRealLiteral= ruleRealLiteral EOF ) + // InternalSolverLanguageParser.g:3409:2: iv_ruleRealLiteral= ruleRealLiteral EOF { - newCompositeNode(grammarAccess.getNumericLiteralRule()); + newCompositeNode(grammarAccess.getRealLiteralRule()); pushFollow(FOLLOW_1); - iv_ruleNumericLiteral=ruleNumericLiteral(); + iv_ruleRealLiteral=ruleRealLiteral(); state._fsp--; - current =iv_ruleNumericLiteral; + current =iv_ruleRealLiteral; match(input,EOF,FOLLOW_2); } @@ -7732,12 +8649,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleNumericLiteral" + // $ANTLR end "entryRuleRealLiteral" - // $ANTLR start "ruleNumericLiteral" - // InternalSolverLanguageParser.g:3068:1: ruleNumericLiteral returns [EObject current=null] : ( (lv_value_0_0= ruleReal ) ) ; - public final EObject ruleNumericLiteral() throws RecognitionException { + // $ANTLR start "ruleRealLiteral" + // InternalSolverLanguageParser.g:3415:1: ruleRealLiteral returns [EObject current=null] : ( (lv_value_0_0= ruleReal ) ) ; + public final EObject ruleRealLiteral() throws RecognitionException { EObject current = null; AntlrDatatypeRuleToken lv_value_0_0 = null; @@ -7747,17 +8664,17 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:3074:2: ( ( (lv_value_0_0= ruleReal ) ) ) - // InternalSolverLanguageParser.g:3075:2: ( (lv_value_0_0= ruleReal ) ) + // InternalSolverLanguageParser.g:3421:2: ( ( (lv_value_0_0= ruleReal ) ) ) + // InternalSolverLanguageParser.g:3422:2: ( (lv_value_0_0= ruleReal ) ) { - // InternalSolverLanguageParser.g:3075:2: ( (lv_value_0_0= ruleReal ) ) - // InternalSolverLanguageParser.g:3076:3: (lv_value_0_0= ruleReal ) + // InternalSolverLanguageParser.g:3422:2: ( (lv_value_0_0= ruleReal ) ) + // InternalSolverLanguageParser.g:3423:3: (lv_value_0_0= ruleReal ) { - // InternalSolverLanguageParser.g:3076:3: (lv_value_0_0= ruleReal ) - // InternalSolverLanguageParser.g:3077:4: lv_value_0_0= ruleReal + // InternalSolverLanguageParser.g:3423:3: (lv_value_0_0= ruleReal ) + // InternalSolverLanguageParser.g:3424:4: lv_value_0_0= ruleReal { - newCompositeNode(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0()); + newCompositeNode(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_0()); pushFollow(FOLLOW_2); lv_value_0_0=ruleReal(); @@ -7766,7 +8683,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { if (current==null) { - current = createModelElementForParent(grammarAccess.getNumericLiteralRule()); + current = createModelElementForParent(grammarAccess.getRealLiteralRule()); } set( current, @@ -7797,11 +8714,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleNumericLiteral" + // $ANTLR end "ruleRealLiteral" // $ANTLR start "entryRuleInfinityLiteral" - // InternalSolverLanguageParser.g:3097:1: entryRuleInfinityLiteral returns [EObject current=null] : iv_ruleInfinityLiteral= ruleInfinityLiteral EOF ; + // InternalSolverLanguageParser.g:3444:1: entryRuleInfinityLiteral returns [EObject current=null] : iv_ruleInfinityLiteral= ruleInfinityLiteral EOF ; public final EObject entryRuleInfinityLiteral() throws RecognitionException { EObject current = null; @@ -7809,8 +8726,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:3097:56: (iv_ruleInfinityLiteral= ruleInfinityLiteral EOF ) - // InternalSolverLanguageParser.g:3098:2: iv_ruleInfinityLiteral= ruleInfinityLiteral EOF + // InternalSolverLanguageParser.g:3444:56: (iv_ruleInfinityLiteral= ruleInfinityLiteral EOF ) + // InternalSolverLanguageParser.g:3445:2: iv_ruleInfinityLiteral= ruleInfinityLiteral EOF { newCompositeNode(grammarAccess.getInfinityLiteralRule()); pushFollow(FOLLOW_1); @@ -7837,7 +8754,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleInfinityLiteral" - // InternalSolverLanguageParser.g:3104:1: ruleInfinityLiteral returns [EObject current=null] : ( () otherlv_1= Inf ) ; + // InternalSolverLanguageParser.g:3451:1: ruleInfinityLiteral returns [EObject current=null] : ( () otherlv_1= Inf ) ; public final EObject ruleInfinityLiteral() throws RecognitionException { EObject current = null; @@ -7847,14 +8764,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:3110:2: ( ( () otherlv_1= Inf ) ) - // InternalSolverLanguageParser.g:3111:2: ( () otherlv_1= Inf ) + // InternalSolverLanguageParser.g:3457:2: ( ( () otherlv_1= Inf ) ) + // InternalSolverLanguageParser.g:3458:2: ( () otherlv_1= Inf ) { - // InternalSolverLanguageParser.g:3111:2: ( () otherlv_1= Inf ) - // InternalSolverLanguageParser.g:3112:3: () otherlv_1= Inf + // InternalSolverLanguageParser.g:3458:2: ( () otherlv_1= Inf ) + // InternalSolverLanguageParser.g:3459:3: () otherlv_1= Inf { - // InternalSolverLanguageParser.g:3112:3: () - // InternalSolverLanguageParser.g:3113:4: + // InternalSolverLanguageParser.g:3459:3: () + // InternalSolverLanguageParser.g:3460:4: { current = forceCreateModelElement( @@ -7890,25 +8807,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleInfinityLiteral" - // $ANTLR start "entryRuleEmptyIntervalLiteral" - // InternalSolverLanguageParser.g:3127:1: entryRuleEmptyIntervalLiteral returns [EObject current=null] : iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF ; - public final EObject entryRuleEmptyIntervalLiteral() throws RecognitionException { + // $ANTLR start "entryRuleEmptyLiteral" + // InternalSolverLanguageParser.g:3474:1: entryRuleEmptyLiteral returns [EObject current=null] : iv_ruleEmptyLiteral= ruleEmptyLiteral EOF ; + public final EObject entryRuleEmptyLiteral() throws RecognitionException { EObject current = null; - EObject iv_ruleEmptyIntervalLiteral = null; + EObject iv_ruleEmptyLiteral = null; try { - // InternalSolverLanguageParser.g:3127:61: (iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF ) - // InternalSolverLanguageParser.g:3128:2: iv_ruleEmptyIntervalLiteral= ruleEmptyIntervalLiteral EOF + // InternalSolverLanguageParser.g:3474:53: (iv_ruleEmptyLiteral= ruleEmptyLiteral EOF ) + // InternalSolverLanguageParser.g:3475:2: iv_ruleEmptyLiteral= ruleEmptyLiteral EOF { - newCompositeNode(grammarAccess.getEmptyIntervalLiteralRule()); + newCompositeNode(grammarAccess.getEmptyLiteralRule()); pushFollow(FOLLOW_1); - iv_ruleEmptyIntervalLiteral=ruleEmptyIntervalLiteral(); + iv_ruleEmptyLiteral=ruleEmptyLiteral(); state._fsp--; - current =iv_ruleEmptyIntervalLiteral; + current =iv_ruleEmptyLiteral; match(input,EOF,FOLLOW_2); } @@ -7923,12 +8840,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleEmptyIntervalLiteral" + // $ANTLR end "entryRuleEmptyLiteral" - // $ANTLR start "ruleEmptyIntervalLiteral" - // InternalSolverLanguageParser.g:3134:1: ruleEmptyIntervalLiteral returns [EObject current=null] : ( () otherlv_1= Empty ) ; - public final EObject ruleEmptyIntervalLiteral() throws RecognitionException { + // $ANTLR start "ruleEmptyLiteral" + // InternalSolverLanguageParser.g:3481:1: ruleEmptyLiteral returns [EObject current=null] : ( () otherlv_1= Empty ) ; + public final EObject ruleEmptyLiteral() throws RecognitionException { EObject current = null; Token otherlv_1=null; @@ -7937,18 +8854,18 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:3140:2: ( ( () otherlv_1= Empty ) ) - // InternalSolverLanguageParser.g:3141:2: ( () otherlv_1= Empty ) + // InternalSolverLanguageParser.g:3487:2: ( ( () otherlv_1= Empty ) ) + // InternalSolverLanguageParser.g:3488:2: ( () otherlv_1= Empty ) { - // InternalSolverLanguageParser.g:3141:2: ( () otherlv_1= Empty ) - // InternalSolverLanguageParser.g:3142:3: () otherlv_1= Empty + // InternalSolverLanguageParser.g:3488:2: ( () otherlv_1= Empty ) + // InternalSolverLanguageParser.g:3489:3: () otherlv_1= Empty { - // InternalSolverLanguageParser.g:3142:3: () - // InternalSolverLanguageParser.g:3143:4: + // InternalSolverLanguageParser.g:3489:3: () + // InternalSolverLanguageParser.g:3490:4: { current = forceCreateModelElement( - grammarAccess.getEmptyIntervalLiteralAccess().getEmptyIntervalLiteralAction_0(), + grammarAccess.getEmptyLiteralAccess().getEmptyLiteralAction_0(), current); @@ -7956,7 +8873,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { otherlv_1=(Token)match(input,Empty,FOLLOW_2); - newLeafNode(otherlv_1, grammarAccess.getEmptyIntervalLiteralAccess().getEmptyKeyword_1()); + newLeafNode(otherlv_1, grammarAccess.getEmptyLiteralAccess().getEmptyKeyword_1()); } @@ -7977,11 +8894,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleEmptyIntervalLiteral" + // $ANTLR end "ruleEmptyLiteral" // $ANTLR start "entryRuleStringLiteral" - // InternalSolverLanguageParser.g:3157:1: entryRuleStringLiteral returns [EObject current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ; + // InternalSolverLanguageParser.g:3504:1: entryRuleStringLiteral returns [EObject current=null] : iv_ruleStringLiteral= ruleStringLiteral EOF ; public final EObject entryRuleStringLiteral() throws RecognitionException { EObject current = null; @@ -7989,8 +8906,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:3157:54: (iv_ruleStringLiteral= ruleStringLiteral EOF ) - // InternalSolverLanguageParser.g:3158:2: iv_ruleStringLiteral= ruleStringLiteral EOF + // InternalSolverLanguageParser.g:3504:54: (iv_ruleStringLiteral= ruleStringLiteral EOF ) + // InternalSolverLanguageParser.g:3505:2: iv_ruleStringLiteral= ruleStringLiteral EOF { newCompositeNode(grammarAccess.getStringLiteralRule()); pushFollow(FOLLOW_1); @@ -8017,7 +8934,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleStringLiteral" - // InternalSolverLanguageParser.g:3164:1: ruleStringLiteral returns [EObject current=null] : ( (lv_value_0_0= RULE_STRING ) ) ; + // InternalSolverLanguageParser.g:3511:1: ruleStringLiteral returns [EObject current=null] : ( (lv_value_0_0= RULE_STRING ) ) ; public final EObject ruleStringLiteral() throws RecognitionException { EObject current = null; @@ -8027,14 +8944,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:3170:2: ( ( (lv_value_0_0= RULE_STRING ) ) ) - // InternalSolverLanguageParser.g:3171:2: ( (lv_value_0_0= RULE_STRING ) ) + // InternalSolverLanguageParser.g:3517:2: ( ( (lv_value_0_0= RULE_STRING ) ) ) + // InternalSolverLanguageParser.g:3518:2: ( (lv_value_0_0= RULE_STRING ) ) { - // InternalSolverLanguageParser.g:3171:2: ( (lv_value_0_0= RULE_STRING ) ) - // InternalSolverLanguageParser.g:3172:3: (lv_value_0_0= RULE_STRING ) + // InternalSolverLanguageParser.g:3518:2: ( (lv_value_0_0= RULE_STRING ) ) + // InternalSolverLanguageParser.g:3519:3: (lv_value_0_0= RULE_STRING ) { - // InternalSolverLanguageParser.g:3172:3: (lv_value_0_0= RULE_STRING ) - // InternalSolverLanguageParser.g:3173:4: lv_value_0_0= RULE_STRING + // InternalSolverLanguageParser.g:3519:3: (lv_value_0_0= RULE_STRING ) + // InternalSolverLanguageParser.g:3520:4: lv_value_0_0= RULE_STRING { lv_value_0_0=(Token)match(input,RULE_STRING,FOLLOW_2); @@ -8075,25 +8992,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleStringLiteral" - // $ANTLR start "entryRuleClassDefinition" - // InternalSolverLanguageParser.g:3192:1: entryRuleClassDefinition returns [EObject current=null] : iv_ruleClassDefinition= ruleClassDefinition EOF ; - public final EObject entryRuleClassDefinition() throws RecognitionException { + // $ANTLR start "entryRuleClassDeclaration" + // InternalSolverLanguageParser.g:3539:1: entryRuleClassDeclaration returns [EObject current=null] : iv_ruleClassDeclaration= ruleClassDeclaration EOF ; + public final EObject entryRuleClassDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleClassDefinition = null; + EObject iv_ruleClassDeclaration = null; try { - // InternalSolverLanguageParser.g:3192:56: (iv_ruleClassDefinition= ruleClassDefinition EOF ) - // InternalSolverLanguageParser.g:3193:2: iv_ruleClassDefinition= ruleClassDefinition EOF + // InternalSolverLanguageParser.g:3539:57: (iv_ruleClassDeclaration= ruleClassDeclaration EOF ) + // InternalSolverLanguageParser.g:3540:2: iv_ruleClassDeclaration= ruleClassDeclaration EOF { - newCompositeNode(grammarAccess.getClassDefinitionRule()); + newCompositeNode(grammarAccess.getClassDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleClassDefinition=ruleClassDefinition(); + iv_ruleClassDeclaration=ruleClassDeclaration(); state._fsp--; - current =iv_ruleClassDefinition; + current =iv_ruleClassDeclaration; match(input,EOF,FOLLOW_2); } @@ -8108,89 +9025,219 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleClassDefinition" + // $ANTLR end "entryRuleClassDeclaration" - // $ANTLR start "ruleClassDefinition" - // InternalSolverLanguageParser.g:3199:1: ruleClassDefinition returns [EObject current=null] : ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) ; - public final EObject ruleClassDefinition() throws RecognitionException { + // $ANTLR start "ruleClassDeclaration" + // InternalSolverLanguageParser.g:3546:1: ruleClassDeclaration returns [EObject current=null] : ( ( ( ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) ) ) otherlv_3= Class ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Extends ( ( ruleQualifiedName ) ) (otherlv_7= Comma ( ( ruleQualifiedName ) ) )* )? ( (otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket ) | this_FULL_STOP_12= RULE_FULL_STOP ) ) ; + public final EObject ruleClassDeclaration() throws RecognitionException { EObject current = null; - Token lv_abstract_0_0=null; - Token otherlv_1=null; - Token lv_name_2_0=null; + Token lv_abstract_1_0=null; + Token lv_root_2_0=null; Token otherlv_3=null; + Token lv_name_4_0=null; Token otherlv_5=null; Token otherlv_7=null; Token otherlv_9=null; - EObject lv_members_8_0 = null; + Token otherlv_11=null; + Token this_FULL_STOP_12=null; + EObject lv_fields_10_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:3205:2: ( ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) ) - // InternalSolverLanguageParser.g:3206:2: ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) + // InternalSolverLanguageParser.g:3552:2: ( ( ( ( ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) ) ) otherlv_3= Class ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Extends ( ( ruleQualifiedName ) ) (otherlv_7= Comma ( ( ruleQualifiedName ) ) )* )? ( (otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket ) | this_FULL_STOP_12= RULE_FULL_STOP ) ) ) + // InternalSolverLanguageParser.g:3553:2: ( ( ( ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) ) ) otherlv_3= Class ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Extends ( ( ruleQualifiedName ) ) (otherlv_7= Comma ( ( ruleQualifiedName ) ) )* )? ( (otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket ) | this_FULL_STOP_12= RULE_FULL_STOP ) ) { - // InternalSolverLanguageParser.g:3206:2: ( ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket ) - // InternalSolverLanguageParser.g:3207:3: ( (lv_abstract_0_0= Abstract ) )? otherlv_1= Class ( (lv_name_2_0= RULE_ID ) ) (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? otherlv_7= LeftCurlyBracket ( (lv_members_8_0= ruleMemberDefinition ) )* otherlv_9= RightCurlyBracket + // InternalSolverLanguageParser.g:3553:2: ( ( ( ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) ) ) otherlv_3= Class ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Extends ( ( ruleQualifiedName ) ) (otherlv_7= Comma ( ( ruleQualifiedName ) ) )* )? ( (otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket ) | this_FULL_STOP_12= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:3554:3: ( ( ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) ) ) otherlv_3= Class ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Extends ( ( ruleQualifiedName ) ) (otherlv_7= Comma ( ( ruleQualifiedName ) ) )* )? ( (otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket ) | this_FULL_STOP_12= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:3207:3: ( (lv_abstract_0_0= Abstract ) )? - int alt35=2; - int LA35_0 = input.LA(1); + // InternalSolverLanguageParser.g:3554:3: ( ( ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) ) ) + // InternalSolverLanguageParser.g:3555:4: ( ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) ) + { + // InternalSolverLanguageParser.g:3555:4: ( ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) ) + // InternalSolverLanguageParser.g:3556:5: ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) + { + + getUnorderedGroupHelper().enter(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); + + // InternalSolverLanguageParser.g:3559:5: ( ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* ) + // InternalSolverLanguageParser.g:3560:6: ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* + { + // InternalSolverLanguageParser.g:3560:6: ( ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) | ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) )* + loop39: + do { + int alt39=3; + int LA39_0 = input.LA(1); - if ( (LA35_0==Abstract) ) { - alt35=1; - } - switch (alt35) { - case 1 : - // InternalSolverLanguageParser.g:3208:4: (lv_abstract_0_0= Abstract ) - { - // InternalSolverLanguageParser.g:3208:4: (lv_abstract_0_0= Abstract ) - // InternalSolverLanguageParser.g:3209:5: lv_abstract_0_0= Abstract - { - lv_abstract_0_0=(Token)match(input,Abstract,FOLLOW_46); + if ( LA39_0 == Abstract && getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0) ) { + alt39=1; + } + else if ( LA39_0 == Root && getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1) ) { + alt39=2; + } - newLeafNode(lv_abstract_0_0, grammarAccess.getClassDefinitionAccess().getAbstractAbstractKeyword_0_0()); - - if (current==null) { - current = createModelElement(grammarAccess.getClassDefinitionRule()); - } - setWithLastConsumed(current, "abstract", true, "abstract"); - + switch (alt39) { + case 1 : + // InternalSolverLanguageParser.g:3561:4: ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) + { + // InternalSolverLanguageParser.g:3561:4: ({...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) ) + // InternalSolverLanguageParser.g:3562:5: {...}? => ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0) ) { + throw new FailedPredicateException(input, "ruleClassDeclaration", "getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0)"); + } + // InternalSolverLanguageParser.g:3562:113: ( ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) ) + // InternalSolverLanguageParser.g:3563:6: ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) + { - } + getUnorderedGroupHelper().select(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 0); + + // InternalSolverLanguageParser.g:3566:9: ({...}? => ( (lv_abstract_1_0= Abstract ) ) ) + // InternalSolverLanguageParser.g:3566:10: {...}? => ( (lv_abstract_1_0= Abstract ) ) + { + if ( !((true)) ) { + throw new FailedPredicateException(input, "ruleClassDeclaration", "true"); + } + // InternalSolverLanguageParser.g:3566:19: ( (lv_abstract_1_0= Abstract ) ) + // InternalSolverLanguageParser.g:3566:20: (lv_abstract_1_0= Abstract ) + { + // InternalSolverLanguageParser.g:3566:20: (lv_abstract_1_0= Abstract ) + // InternalSolverLanguageParser.g:3567:10: lv_abstract_1_0= Abstract + { + lv_abstract_1_0=(Token)match(input,Abstract,FOLLOW_50); + newLeafNode(lv_abstract_1_0, grammarAccess.getClassDeclarationAccess().getAbstractAbstractKeyword_0_0_0()); + - } - break; + if (current==null) { + current = createModelElement(grammarAccess.getClassDeclarationRule()); + } + setWithLastConsumed(current, "abstract", true, "abstract"); + + + } + + + } + + + } + + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); + + + } + + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:3584:4: ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) + { + // InternalSolverLanguageParser.g:3584:4: ({...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) ) + // InternalSolverLanguageParser.g:3585:5: {...}? => ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) + { + if ( ! getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1) ) { + throw new FailedPredicateException(input, "ruleClassDeclaration", "getUnorderedGroupHelper().canSelect(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1)"); + } + // InternalSolverLanguageParser.g:3585:113: ( ({...}? => ( (lv_root_2_0= Root ) ) ) ) + // InternalSolverLanguageParser.g:3586:6: ({...}? => ( (lv_root_2_0= Root ) ) ) + { + + getUnorderedGroupHelper().select(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0(), 1); + + // InternalSolverLanguageParser.g:3589:9: ({...}? => ( (lv_root_2_0= Root ) ) ) + // InternalSolverLanguageParser.g:3589:10: {...}? => ( (lv_root_2_0= Root ) ) + { + if ( !((true)) ) { + throw new FailedPredicateException(input, "ruleClassDeclaration", "true"); + } + // InternalSolverLanguageParser.g:3589:19: ( (lv_root_2_0= Root ) ) + // InternalSolverLanguageParser.g:3589:20: (lv_root_2_0= Root ) + { + // InternalSolverLanguageParser.g:3589:20: (lv_root_2_0= Root ) + // InternalSolverLanguageParser.g:3590:10: lv_root_2_0= Root + { + lv_root_2_0=(Token)match(input,Root,FOLLOW_50); + + newLeafNode(lv_root_2_0, grammarAccess.getClassDeclarationAccess().getRootRootKeyword_0_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getClassDeclarationRule()); + } + setWithLastConsumed(current, "root", true, "root"); + + + } + + + } + + + } + + + getUnorderedGroupHelper().returnFromSelection(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); + + + } + + + } + + + } + break; + + default : + break loop39; + } + } while (true); + + + } + + + } + + + getUnorderedGroupHelper().leave(grammarAccess.getClassDeclarationAccess().getUnorderedGroup_0()); + } - otherlv_1=(Token)match(input,Class,FOLLOW_20); + otherlv_3=(Token)match(input,Class,FOLLOW_28); - newLeafNode(otherlv_1, grammarAccess.getClassDefinitionAccess().getClassKeyword_1()); + newLeafNode(otherlv_3, grammarAccess.getClassDeclarationAccess().getClassKeyword_1()); - // InternalSolverLanguageParser.g:3225:3: ( (lv_name_2_0= RULE_ID ) ) - // InternalSolverLanguageParser.g:3226:4: (lv_name_2_0= RULE_ID ) + // InternalSolverLanguageParser.g:3618:3: ( (lv_name_4_0= RULE_ID ) ) + // InternalSolverLanguageParser.g:3619:4: (lv_name_4_0= RULE_ID ) { - // InternalSolverLanguageParser.g:3226:4: (lv_name_2_0= RULE_ID ) - // InternalSolverLanguageParser.g:3227:5: lv_name_2_0= RULE_ID + // InternalSolverLanguageParser.g:3619:4: (lv_name_4_0= RULE_ID ) + // InternalSolverLanguageParser.g:3620:5: lv_name_4_0= RULE_ID { - lv_name_2_0=(Token)match(input,RULE_ID,FOLLOW_47); + lv_name_4_0=(Token)match(input,RULE_ID,FOLLOW_51); - newLeafNode(lv_name_2_0, grammarAccess.getClassDefinitionAccess().getNameIDTerminalRuleCall_2_0()); + newLeafNode(lv_name_4_0, grammarAccess.getClassDeclarationAccess().getNameIDTerminalRuleCall_2_0()); if (current==null) { - current = createModelElement(grammarAccess.getClassDefinitionRule()); + current = createModelElement(grammarAccess.getClassDeclarationRule()); } setWithLastConsumed( current, "name", - lv_name_2_0, + lv_name_4_0, "org.eclipse.xtext.common.Terminals.ID"); @@ -8199,36 +9246,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3243:3: (otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* )? - int alt37=2; - int LA37_0 = input.LA(1); + // InternalSolverLanguageParser.g:3636:3: (otherlv_5= Extends ( ( ruleQualifiedName ) ) (otherlv_7= Comma ( ( ruleQualifiedName ) ) )* )? + int alt41=2; + int LA41_0 = input.LA(1); - if ( (LA37_0==Extends) ) { - alt37=1; + if ( (LA41_0==Extends) ) { + alt41=1; } - switch (alt37) { + switch (alt41) { case 1 : - // InternalSolverLanguageParser.g:3244:4: otherlv_3= Extends ( ( ruleQualifiedName ) ) (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* + // InternalSolverLanguageParser.g:3637:4: otherlv_5= Extends ( ( ruleQualifiedName ) ) (otherlv_7= Comma ( ( ruleQualifiedName ) ) )* { - otherlv_3=(Token)match(input,Extends,FOLLOW_8); + otherlv_5=(Token)match(input,Extends,FOLLOW_3); - newLeafNode(otherlv_3, grammarAccess.getClassDefinitionAccess().getExtendsKeyword_3_0()); + newLeafNode(otherlv_5, grammarAccess.getClassDeclarationAccess().getExtendsKeyword_3_0()); - // InternalSolverLanguageParser.g:3248:4: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3249:5: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3641:4: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:3642:5: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3249:5: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3250:6: ruleQualifiedName + // InternalSolverLanguageParser.g:3642:5: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3643:6: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getClassDefinitionRule()); + current = createModelElement(grammarAccess.getClassDeclarationRule()); } - newCompositeNode(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_1_0()); + newCompositeNode(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_1_0()); - pushFollow(FOLLOW_48); + pushFollow(FOLLOW_52); ruleQualifiedName(); state._fsp--; @@ -8242,40 +9289,40 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3264:4: (otherlv_5= Comma ( ( ruleQualifiedName ) ) )* - loop36: + // InternalSolverLanguageParser.g:3657:4: (otherlv_7= Comma ( ( ruleQualifiedName ) ) )* + loop40: do { - int alt36=2; - int LA36_0 = input.LA(1); + int alt40=2; + int LA40_0 = input.LA(1); - if ( (LA36_0==Comma) ) { - alt36=1; + if ( (LA40_0==Comma) ) { + alt40=1; } - switch (alt36) { + switch (alt40) { case 1 : - // InternalSolverLanguageParser.g:3265:5: otherlv_5= Comma ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:3658:5: otherlv_7= Comma ( ( ruleQualifiedName ) ) { - otherlv_5=(Token)match(input,Comma,FOLLOW_8); + otherlv_7=(Token)match(input,Comma,FOLLOW_3); - newLeafNode(otherlv_5, grammarAccess.getClassDefinitionAccess().getCommaKeyword_3_2_0()); + newLeafNode(otherlv_7, grammarAccess.getClassDeclarationAccess().getCommaKeyword_3_2_0()); - // InternalSolverLanguageParser.g:3269:5: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3270:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3662:5: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:3663:6: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3270:6: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3271:7: ruleQualifiedName + // InternalSolverLanguageParser.g:3663:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3664:7: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getClassDefinitionRule()); + current = createModelElement(grammarAccess.getClassDeclarationRule()); } - newCompositeNode(grammarAccess.getClassDefinitionAccess().getSuperclassesNamedElementCrossReference_3_2_1_0()); + newCompositeNode(grammarAccess.getClassDeclarationAccess().getSupertypesSymbolCrossReference_3_2_1_0()); - pushFollow(FOLLOW_48); + pushFollow(FOLLOW_52); ruleQualifiedName(); state._fsp--; @@ -8294,7 +9341,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { break; default : - break loop36; + break loop40; } } while (true); @@ -8304,63 +9351,105 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_7=(Token)match(input,LeftCurlyBracket,FOLLOW_49); + // InternalSolverLanguageParser.g:3680:3: ( (otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket ) | this_FULL_STOP_12= RULE_FULL_STOP ) + int alt43=2; + int LA43_0 = input.LA(1); - newLeafNode(otherlv_7, grammarAccess.getClassDefinitionAccess().getLeftCurlyBracketKeyword_4()); - - // InternalSolverLanguageParser.g:3291:3: ( (lv_members_8_0= ruleMemberDefinition ) )* - loop38: - do { - int alt38=2; - int LA38_0 = input.LA(1); + if ( (LA43_0==LeftCurlyBracket) ) { + alt43=1; + } + else if ( (LA43_0==RULE_FULL_STOP) ) { + alt43=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 43, 0, input); + + throw nvae; + } + switch (alt43) { + case 1 : + // InternalSolverLanguageParser.g:3681:4: (otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket ) + { + // InternalSolverLanguageParser.g:3681:4: (otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket ) + // InternalSolverLanguageParser.g:3682:5: otherlv_9= LeftCurlyBracket ( (lv_fields_10_0= ruleField ) )* otherlv_11= RightCurlyBracket + { + otherlv_9=(Token)match(input,LeftCurlyBracket,FOLLOW_53); + + newLeafNode(otherlv_9, grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()); + + // InternalSolverLanguageParser.g:3686:5: ( (lv_fields_10_0= ruleField ) )* + loop42: + do { + int alt42=2; + int LA42_0 = input.LA(1); + + if ( (LA42_0==Contains||(LA42_0>=Object && LA42_0<=Refers)||LA42_0==RULE_QUOTED_ID||LA42_0==RULE_ID) ) { + alt42=1; + } + + + switch (alt42) { + case 1 : + // InternalSolverLanguageParser.g:3687:6: (lv_fields_10_0= ruleField ) + { + // InternalSolverLanguageParser.g:3687:6: (lv_fields_10_0= ruleField ) + // InternalSolverLanguageParser.g:3688:7: lv_fields_10_0= ruleField + { + + newCompositeNode(grammarAccess.getClassDeclarationAccess().getFieldsFieldParserRuleCall_4_0_1_0()); + + pushFollow(FOLLOW_53); + lv_fields_10_0=ruleField(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getClassDeclarationRule()); + } + add( + current, + "fields", + lv_fields_10_0, + "org.eclipse.viatra.solver.language.SolverLanguage.Field"); + afterParserOrEnumRuleCall(); + - if ( (LA38_0==Contains||LA38_0==RULE_QUOTED_ID||LA38_0==RULE_ID) ) { - alt38=1; - } + } - switch (alt38) { - case 1 : - // InternalSolverLanguageParser.g:3292:4: (lv_members_8_0= ruleMemberDefinition ) - { - // InternalSolverLanguageParser.g:3292:4: (lv_members_8_0= ruleMemberDefinition ) - // InternalSolverLanguageParser.g:3293:5: lv_members_8_0= ruleMemberDefinition - { + } + break; - newCompositeNode(grammarAccess.getClassDefinitionAccess().getMembersMemberDefinitionParserRuleCall_5_0()); - - pushFollow(FOLLOW_49); - lv_members_8_0=ruleMemberDefinition(); + default : + break loop42; + } + } while (true); - state._fsp--; + otherlv_11=(Token)match(input,RightCurlyBracket,FOLLOW_2); + newLeafNode(otherlv_11, grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2()); + - if (current==null) { - current = createModelElementForParent(grammarAccess.getClassDefinitionRule()); - } - add( - current, - "members", - lv_members_8_0, - "org.eclipse.viatra.solver.language.SolverLanguage.MemberDefinition"); - afterParserOrEnumRuleCall(); - + } - } + } + break; + case 2 : + // InternalSolverLanguageParser.g:3711:4: this_FULL_STOP_12= RULE_FULL_STOP + { + this_FULL_STOP_12=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); - } - break; + newLeafNode(this_FULL_STOP_12, grammarAccess.getClassDeclarationAccess().getFULL_STOPTerminalRuleCall_4_1()); + - default : - break loop38; - } - } while (true); + } + break; - otherlv_9=(Token)match(input,RightCurlyBracket,FOLLOW_2); + } - newLeafNode(otherlv_9, grammarAccess.getClassDefinitionAccess().getRightCurlyBracketKeyword_6()); - } @@ -8380,28 +9469,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleClassDefinition" + // $ANTLR end "ruleClassDeclaration" - // $ANTLR start "entryRuleMemberDefinition" - // InternalSolverLanguageParser.g:3318:1: entryRuleMemberDefinition returns [EObject current=null] : iv_ruleMemberDefinition= ruleMemberDefinition EOF ; - public final EObject entryRuleMemberDefinition() throws RecognitionException { + // $ANTLR start "entryRuleField" + // InternalSolverLanguageParser.g:3720:1: entryRuleField returns [EObject current=null] : iv_ruleField= ruleField EOF ; + public final EObject entryRuleField() throws RecognitionException { EObject current = null; - EObject iv_ruleMemberDefinition = null; + EObject iv_ruleField = null; try { - // InternalSolverLanguageParser.g:3318:57: (iv_ruleMemberDefinition= ruleMemberDefinition EOF ) - // InternalSolverLanguageParser.g:3319:2: iv_ruleMemberDefinition= ruleMemberDefinition EOF + // InternalSolverLanguageParser.g:3720:46: (iv_ruleField= ruleField EOF ) + // InternalSolverLanguageParser.g:3721:2: iv_ruleField= ruleField EOF { - newCompositeNode(grammarAccess.getMemberDefinitionRule()); + newCompositeNode(grammarAccess.getFieldRule()); pushFollow(FOLLOW_1); - iv_ruleMemberDefinition=ruleMemberDefinition(); + iv_ruleField=ruleField(); state._fsp--; - current =iv_ruleMemberDefinition; + current =iv_ruleField; match(input,EOF,FOLLOW_2); } @@ -8416,55 +9505,93 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleMemberDefinition" + // $ANTLR end "entryRuleField" - // $ANTLR start "ruleMemberDefinition" - // InternalSolverLanguageParser.g:3325:1: ruleMemberDefinition returns [EObject current=null] : ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) ; - public final EObject ruleMemberDefinition() throws RecognitionException { + // $ANTLR start "ruleField" + // InternalSolverLanguageParser.g:3727:1: ruleField returns [EObject current=null] : ( ( ( (lv_containment_0_0= Contains ) ) | ( (lv_crossReference_1_0= Refers ) ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_3_0= ruleMultiplicity ) )? ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_7= Semicolon )? ) ; + public final EObject ruleField() throws RecognitionException { EObject current = null; Token lv_containment_0_0=null; - Token lv_name_3_0=null; - Token otherlv_4=null; - Token otherlv_6=null; - EObject lv_multiplicity_2_0 = null; + Token lv_crossReference_1_0=null; + Token lv_name_4_0=null; + Token otherlv_5=null; + Token otherlv_7=null; + EObject lv_multiplicity_3_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:3331:2: ( ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) ) - // InternalSolverLanguageParser.g:3332:2: ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) + // InternalSolverLanguageParser.g:3733:2: ( ( ( ( (lv_containment_0_0= Contains ) ) | ( (lv_crossReference_1_0= Refers ) ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_3_0= ruleMultiplicity ) )? ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_7= Semicolon )? ) ) + // InternalSolverLanguageParser.g:3734:2: ( ( ( (lv_containment_0_0= Contains ) ) | ( (lv_crossReference_1_0= Refers ) ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_3_0= ruleMultiplicity ) )? ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_7= Semicolon )? ) { - // InternalSolverLanguageParser.g:3332:2: ( ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? ) - // InternalSolverLanguageParser.g:3333:3: ( (lv_containment_0_0= Contains ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_2_0= ruleMultiplicity ) )? ( (lv_name_3_0= RULE_ID ) ) (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_6= Semicolon )? + // InternalSolverLanguageParser.g:3734:2: ( ( ( (lv_containment_0_0= Contains ) ) | ( (lv_crossReference_1_0= Refers ) ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_3_0= ruleMultiplicity ) )? ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_7= Semicolon )? ) + // InternalSolverLanguageParser.g:3735:3: ( ( (lv_containment_0_0= Contains ) ) | ( (lv_crossReference_1_0= Refers ) ) )? ( ( ruleQualifiedName ) ) ( (lv_multiplicity_3_0= ruleMultiplicity ) )? ( (lv_name_4_0= RULE_ID ) ) (otherlv_5= Opposite ( ( ruleQualifiedName ) ) )? (otherlv_7= Semicolon )? { - // InternalSolverLanguageParser.g:3333:3: ( (lv_containment_0_0= Contains ) )? - int alt39=2; - int LA39_0 = input.LA(1); + // InternalSolverLanguageParser.g:3735:3: ( ( (lv_containment_0_0= Contains ) ) | ( (lv_crossReference_1_0= Refers ) ) )? + int alt44=3; + int LA44_0 = input.LA(1); - if ( (LA39_0==Contains) ) { - alt39=1; + if ( (LA44_0==Contains) ) { + alt44=1; + } + else if ( (LA44_0==Refers) ) { + alt44=2; } - switch (alt39) { + switch (alt44) { case 1 : - // InternalSolverLanguageParser.g:3334:4: (lv_containment_0_0= Contains ) + // InternalSolverLanguageParser.g:3736:4: ( (lv_containment_0_0= Contains ) ) + { + // InternalSolverLanguageParser.g:3736:4: ( (lv_containment_0_0= Contains ) ) + // InternalSolverLanguageParser.g:3737:5: (lv_containment_0_0= Contains ) { - // InternalSolverLanguageParser.g:3334:4: (lv_containment_0_0= Contains ) - // InternalSolverLanguageParser.g:3335:5: lv_containment_0_0= Contains + // InternalSolverLanguageParser.g:3737:5: (lv_containment_0_0= Contains ) + // InternalSolverLanguageParser.g:3738:6: lv_containment_0_0= Contains { - lv_containment_0_0=(Token)match(input,Contains,FOLLOW_8); + lv_containment_0_0=(Token)match(input,Contains,FOLLOW_3); - newLeafNode(lv_containment_0_0, grammarAccess.getMemberDefinitionAccess().getContainmentContainsKeyword_0_0()); - + newLeafNode(lv_containment_0_0, grammarAccess.getFieldAccess().getContainmentContainsKeyword_0_0_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getFieldRule()); + } + setWithLastConsumed(current, "containment", true, "contains"); + + + } + + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:3751:4: ( (lv_crossReference_1_0= Refers ) ) + { + // InternalSolverLanguageParser.g:3751:4: ( (lv_crossReference_1_0= Refers ) ) + // InternalSolverLanguageParser.g:3752:5: (lv_crossReference_1_0= Refers ) + { + // InternalSolverLanguageParser.g:3752:5: (lv_crossReference_1_0= Refers ) + // InternalSolverLanguageParser.g:3753:6: lv_crossReference_1_0= Refers + { + lv_crossReference_1_0=(Token)match(input,Refers,FOLLOW_3); + + newLeafNode(lv_crossReference_1_0, grammarAccess.getFieldAccess().getCrossReferenceRefersKeyword_0_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getFieldRule()); + } + setWithLastConsumed(current, "crossReference", true, "refers"); + + + } - if (current==null) { - current = createModelElement(grammarAccess.getMemberDefinitionRule()); - } - setWithLastConsumed(current, "containment", true, "contains"); - } @@ -8474,21 +9601,21 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3347:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3348:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3766:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:3767:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3348:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3349:5: ruleQualifiedName + // InternalSolverLanguageParser.g:3767:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3768:5: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getMemberDefinitionRule()); + current = createModelElement(grammarAccess.getFieldRule()); } - newCompositeNode(grammarAccess.getMemberDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + newCompositeNode(grammarAccess.getFieldAccess().getTypeSymbolCrossReference_1_0()); - pushFollow(FOLLOW_50); + pushFollow(FOLLOW_54); ruleQualifiedName(); state._fsp--; @@ -8502,36 +9629,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3363:3: ( (lv_multiplicity_2_0= ruleMultiplicity ) )? - int alt40=2; - int LA40_0 = input.LA(1); + // InternalSolverLanguageParser.g:3782:3: ( (lv_multiplicity_3_0= ruleMultiplicity ) )? + int alt45=2; + int LA45_0 = input.LA(1); - if ( (LA40_0==LeftSquareBracket) ) { - alt40=1; + if ( (LA45_0==LeftSquareBracket) ) { + alt45=1; } - switch (alt40) { + switch (alt45) { case 1 : - // InternalSolverLanguageParser.g:3364:4: (lv_multiplicity_2_0= ruleMultiplicity ) + // InternalSolverLanguageParser.g:3783:4: (lv_multiplicity_3_0= ruleMultiplicity ) { - // InternalSolverLanguageParser.g:3364:4: (lv_multiplicity_2_0= ruleMultiplicity ) - // InternalSolverLanguageParser.g:3365:5: lv_multiplicity_2_0= ruleMultiplicity + // InternalSolverLanguageParser.g:3783:4: (lv_multiplicity_3_0= ruleMultiplicity ) + // InternalSolverLanguageParser.g:3784:5: lv_multiplicity_3_0= ruleMultiplicity { - newCompositeNode(grammarAccess.getMemberDefinitionAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); + newCompositeNode(grammarAccess.getFieldAccess().getMultiplicityMultiplicityParserRuleCall_2_0()); - pushFollow(FOLLOW_20); - lv_multiplicity_2_0=ruleMultiplicity(); + pushFollow(FOLLOW_28); + lv_multiplicity_3_0=ruleMultiplicity(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getMemberDefinitionRule()); + current = createModelElementForParent(grammarAccess.getFieldRule()); } set( current, "multiplicity", - lv_multiplicity_2_0, + lv_multiplicity_3_0, "org.eclipse.viatra.solver.language.SolverLanguage.Multiplicity"); afterParserOrEnumRuleCall(); @@ -8544,24 +9671,24 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3382:3: ( (lv_name_3_0= RULE_ID ) ) - // InternalSolverLanguageParser.g:3383:4: (lv_name_3_0= RULE_ID ) + // InternalSolverLanguageParser.g:3801:3: ( (lv_name_4_0= RULE_ID ) ) + // InternalSolverLanguageParser.g:3802:4: (lv_name_4_0= RULE_ID ) { - // InternalSolverLanguageParser.g:3383:4: (lv_name_3_0= RULE_ID ) - // InternalSolverLanguageParser.g:3384:5: lv_name_3_0= RULE_ID + // InternalSolverLanguageParser.g:3802:4: (lv_name_4_0= RULE_ID ) + // InternalSolverLanguageParser.g:3803:5: lv_name_4_0= RULE_ID { - lv_name_3_0=(Token)match(input,RULE_ID,FOLLOW_51); + lv_name_4_0=(Token)match(input,RULE_ID,FOLLOW_55); - newLeafNode(lv_name_3_0, grammarAccess.getMemberDefinitionAccess().getNameIDTerminalRuleCall_3_0()); + newLeafNode(lv_name_4_0, grammarAccess.getFieldAccess().getNameIDTerminalRuleCall_3_0()); if (current==null) { - current = createModelElement(grammarAccess.getMemberDefinitionRule()); + current = createModelElement(grammarAccess.getFieldRule()); } setWithLastConsumed( current, "name", - lv_name_3_0, + lv_name_4_0, "org.eclipse.xtext.common.Terminals.ID"); @@ -8570,36 +9697,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3400:3: (otherlv_4= Opposite ( ( ruleQualifiedName ) ) )? - int alt41=2; - int LA41_0 = input.LA(1); + // InternalSolverLanguageParser.g:3819:3: (otherlv_5= Opposite ( ( ruleQualifiedName ) ) )? + int alt46=2; + int LA46_0 = input.LA(1); - if ( (LA41_0==Opposite) ) { - alt41=1; + if ( (LA46_0==Opposite) ) { + alt46=1; } - switch (alt41) { + switch (alt46) { case 1 : - // InternalSolverLanguageParser.g:3401:4: otherlv_4= Opposite ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:3820:4: otherlv_5= Opposite ( ( ruleQualifiedName ) ) { - otherlv_4=(Token)match(input,Opposite,FOLLOW_8); + otherlv_5=(Token)match(input,Opposite,FOLLOW_3); - newLeafNode(otherlv_4, grammarAccess.getMemberDefinitionAccess().getOppositeKeyword_4_0()); + newLeafNode(otherlv_5, grammarAccess.getFieldAccess().getOppositeKeyword_4_0()); - // InternalSolverLanguageParser.g:3405:4: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3406:5: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3824:4: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:3825:5: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3406:5: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3407:6: ruleQualifiedName + // InternalSolverLanguageParser.g:3825:5: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:3826:6: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getMemberDefinitionRule()); + current = createModelElement(grammarAccess.getFieldRule()); } - newCompositeNode(grammarAccess.getMemberDefinitionAccess().getOppositeNamedElementCrossReference_4_1_0()); + newCompositeNode(grammarAccess.getFieldAccess().getOppositeSymbolCrossReference_4_1_0()); - pushFollow(FOLLOW_26); + pushFollow(FOLLOW_31); ruleQualifiedName(); state._fsp--; @@ -8619,20 +9746,20 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3422:3: (otherlv_6= Semicolon )? - int alt42=2; - int LA42_0 = input.LA(1); + // InternalSolverLanguageParser.g:3841:3: (otherlv_7= Semicolon )? + int alt47=2; + int LA47_0 = input.LA(1); - if ( (LA42_0==Semicolon) ) { - alt42=1; + if ( (LA47_0==Semicolon) ) { + alt47=1; } - switch (alt42) { + switch (alt47) { case 1 : - // InternalSolverLanguageParser.g:3423:4: otherlv_6= Semicolon + // InternalSolverLanguageParser.g:3842:4: otherlv_7= Semicolon { - otherlv_6=(Token)match(input,Semicolon,FOLLOW_2); + otherlv_7=(Token)match(input,Semicolon,FOLLOW_2); - newLeafNode(otherlv_6, grammarAccess.getMemberDefinitionAccess().getSemicolonKeyword_5()); + newLeafNode(otherlv_7, grammarAccess.getFieldAccess().getSemicolonKeyword_5()); } @@ -8659,11 +9786,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleMemberDefinition" + // $ANTLR end "ruleField" // $ANTLR start "entryRuleMultiplicity" - // InternalSolverLanguageParser.g:3432:1: entryRuleMultiplicity returns [EObject current=null] : iv_ruleMultiplicity= ruleMultiplicity EOF ; + // InternalSolverLanguageParser.g:3851:1: entryRuleMultiplicity returns [EObject current=null] : iv_ruleMultiplicity= ruleMultiplicity EOF ; public final EObject entryRuleMultiplicity() throws RecognitionException { EObject current = null; @@ -8671,8 +9798,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:3432:53: (iv_ruleMultiplicity= ruleMultiplicity EOF ) - // InternalSolverLanguageParser.g:3433:2: iv_ruleMultiplicity= ruleMultiplicity EOF + // InternalSolverLanguageParser.g:3851:53: (iv_ruleMultiplicity= ruleMultiplicity EOF ) + // InternalSolverLanguageParser.g:3852:2: iv_ruleMultiplicity= ruleMultiplicity EOF { newCompositeNode(grammarAccess.getMultiplicityRule()); pushFollow(FOLLOW_1); @@ -8699,11 +9826,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleMultiplicity" - // InternalSolverLanguageParser.g:3439:1: ruleMultiplicity returns [EObject current=null] : (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) ; + // InternalSolverLanguageParser.g:3858:1: ruleMultiplicity returns [EObject current=null] : (this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) ; public final EObject ruleMultiplicity() throws RecognitionException { EObject current = null; - EObject this_ManyMultiplicity_0 = null; + EObject this_UnboundedMultiplicity_0 = null; EObject this_ExactMultiplicity_1 = null; @@ -8714,112 +9841,324 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:3445:2: ( (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) ) - // InternalSolverLanguageParser.g:3446:2: (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) + // InternalSolverLanguageParser.g:3864:2: ( (this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) ) + // InternalSolverLanguageParser.g:3865:2: (this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) { - // InternalSolverLanguageParser.g:3446:2: (this_ManyMultiplicity_0= ruleManyMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) - int alt43=3; - int LA43_0 = input.LA(1); + // InternalSolverLanguageParser.g:3865:2: (this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity | this_ExactMultiplicity_1= ruleExactMultiplicity | this_BoundedMultiplicity_2= ruleBoundedMultiplicity ) + int alt48=3; + int LA48_0 = input.LA(1); - if ( (LA43_0==LeftSquareBracket) ) { + if ( (LA48_0==LeftSquareBracket) ) { switch ( input.LA(2) ) { case RULE_INT: { - int LA43_2 = input.LA(3); + int LA48_2 = input.LA(3); - if ( (LA43_2==FullStopFullStop) ) { - alt43=3; + if ( (LA48_2==RightSquareBracket) ) { + alt48=2; } - else if ( (LA43_2==RightSquareBracket) ) { - alt43=2; + else if ( (LA48_2==Comma) ) { + alt48=3; } else { NoViableAltException nvae = - new NoViableAltException("", 43, 2, input); + new NoViableAltException("", 48, 2, input); throw nvae; } } break; - case Asterisk: + case RightSquareBracket: { - alt43=2; + alt48=1; } break; - case RightSquareBracket: + case Asterisk: { - alt43=1; + alt48=2; } break; default: NoViableAltException nvae = - new NoViableAltException("", 43, 1, input); + new NoViableAltException("", 48, 1, input); throw nvae; } } - else { - NoViableAltException nvae = - new NoViableAltException("", 43, 0, input); + else { + NoViableAltException nvae = + new NoViableAltException("", 48, 0, input); + + throw nvae; + } + switch (alt48) { + case 1 : + // InternalSolverLanguageParser.g:3866:3: this_UnboundedMultiplicity_0= ruleUnboundedMultiplicity + { + + newCompositeNode(grammarAccess.getMultiplicityAccess().getUnboundedMultiplicityParserRuleCall_0()); + + pushFollow(FOLLOW_2); + this_UnboundedMultiplicity_0=ruleUnboundedMultiplicity(); + + state._fsp--; + + + current = this_UnboundedMultiplicity_0; + afterParserOrEnumRuleCall(); + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:3875:3: this_ExactMultiplicity_1= ruleExactMultiplicity + { + + newCompositeNode(grammarAccess.getMultiplicityAccess().getExactMultiplicityParserRuleCall_1()); + + pushFollow(FOLLOW_2); + this_ExactMultiplicity_1=ruleExactMultiplicity(); + + state._fsp--; + + + current = this_ExactMultiplicity_1; + afterParserOrEnumRuleCall(); + + + } + break; + case 3 : + // InternalSolverLanguageParser.g:3884:3: this_BoundedMultiplicity_2= ruleBoundedMultiplicity + { + + newCompositeNode(grammarAccess.getMultiplicityAccess().getBoundedMultiplicityParserRuleCall_2()); + + pushFollow(FOLLOW_2); + this_BoundedMultiplicity_2=ruleBoundedMultiplicity(); + + state._fsp--; + + + current = this_BoundedMultiplicity_2; + afterParserOrEnumRuleCall(); + + + } + break; + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleMultiplicity" + + + // $ANTLR start "entryRuleUnboundedMultiplicity" + // InternalSolverLanguageParser.g:3896:1: entryRuleUnboundedMultiplicity returns [EObject current=null] : iv_ruleUnboundedMultiplicity= ruleUnboundedMultiplicity EOF ; + public final EObject entryRuleUnboundedMultiplicity() throws RecognitionException { + EObject current = null; + + EObject iv_ruleUnboundedMultiplicity = null; + + + try { + // InternalSolverLanguageParser.g:3896:62: (iv_ruleUnboundedMultiplicity= ruleUnboundedMultiplicity EOF ) + // InternalSolverLanguageParser.g:3897:2: iv_ruleUnboundedMultiplicity= ruleUnboundedMultiplicity EOF + { + newCompositeNode(grammarAccess.getUnboundedMultiplicityRule()); + pushFollow(FOLLOW_1); + iv_ruleUnboundedMultiplicity=ruleUnboundedMultiplicity(); + + state._fsp--; + + current =iv_ruleUnboundedMultiplicity; + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleUnboundedMultiplicity" + + + // $ANTLR start "ruleUnboundedMultiplicity" + // InternalSolverLanguageParser.g:3903:1: ruleUnboundedMultiplicity returns [EObject current=null] : ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) ; + public final EObject ruleUnboundedMultiplicity() throws RecognitionException { + EObject current = null; + + Token otherlv_1=null; + Token otherlv_2=null; + + + enterRule(); + + try { + // InternalSolverLanguageParser.g:3909:2: ( ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) ) + // InternalSolverLanguageParser.g:3910:2: ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) + { + // InternalSolverLanguageParser.g:3910:2: ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) + // InternalSolverLanguageParser.g:3911:3: () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket + { + // InternalSolverLanguageParser.g:3911:3: () + // InternalSolverLanguageParser.g:3912:4: + { + + current = forceCreateModelElement( + grammarAccess.getUnboundedMultiplicityAccess().getUnboundedMultiplicityAction_0(), + current); + + + } + + otherlv_1=(Token)match(input,LeftSquareBracket,FOLLOW_49); + + newLeafNode(otherlv_1, grammarAccess.getUnboundedMultiplicityAccess().getLeftSquareBracketKeyword_1()); + + otherlv_2=(Token)match(input,RightSquareBracket,FOLLOW_2); + + newLeafNode(otherlv_2, grammarAccess.getUnboundedMultiplicityAccess().getRightSquareBracketKeyword_2()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "ruleUnboundedMultiplicity" + + + // $ANTLR start "entryRuleExactMultiplicity" + // InternalSolverLanguageParser.g:3930:1: entryRuleExactMultiplicity returns [EObject current=null] : iv_ruleExactMultiplicity= ruleExactMultiplicity EOF ; + public final EObject entryRuleExactMultiplicity() throws RecognitionException { + EObject current = null; + + EObject iv_ruleExactMultiplicity = null; + + + try { + // InternalSolverLanguageParser.g:3930:58: (iv_ruleExactMultiplicity= ruleExactMultiplicity EOF ) + // InternalSolverLanguageParser.g:3931:2: iv_ruleExactMultiplicity= ruleExactMultiplicity EOF + { + newCompositeNode(grammarAccess.getExactMultiplicityRule()); + pushFollow(FOLLOW_1); + iv_ruleExactMultiplicity=ruleExactMultiplicity(); + + state._fsp--; + + current =iv_ruleExactMultiplicity; + match(input,EOF,FOLLOW_2); + + } - throw nvae; + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); } - switch (alt43) { - case 1 : - // InternalSolverLanguageParser.g:3447:3: this_ManyMultiplicity_0= ruleManyMultiplicity - { + finally { + } + return current; + } + // $ANTLR end "entryRuleExactMultiplicity" - newCompositeNode(grammarAccess.getMultiplicityAccess().getManyMultiplicityParserRuleCall_0()); - - pushFollow(FOLLOW_2); - this_ManyMultiplicity_0=ruleManyMultiplicity(); - state._fsp--; + // $ANTLR start "ruleExactMultiplicity" + // InternalSolverLanguageParser.g:3937:1: ruleExactMultiplicity returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_value_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) ; + public final EObject ruleExactMultiplicity() throws RecognitionException { + EObject current = null; + Token otherlv_0=null; + Token otherlv_2=null; + AntlrDatatypeRuleToken lv_value_1_0 = null; - current = this_ManyMultiplicity_0; - afterParserOrEnumRuleCall(); - - } - break; - case 2 : - // InternalSolverLanguageParser.g:3456:3: this_ExactMultiplicity_1= ruleExactMultiplicity - { - newCompositeNode(grammarAccess.getMultiplicityAccess().getExactMultiplicityParserRuleCall_1()); - - pushFollow(FOLLOW_2); - this_ExactMultiplicity_1=ruleExactMultiplicity(); + enterRule(); - state._fsp--; + try { + // InternalSolverLanguageParser.g:3943:2: ( (otherlv_0= LeftSquareBracket ( (lv_value_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) ) + // InternalSolverLanguageParser.g:3944:2: (otherlv_0= LeftSquareBracket ( (lv_value_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) + { + // InternalSolverLanguageParser.g:3944:2: (otherlv_0= LeftSquareBracket ( (lv_value_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) + // InternalSolverLanguageParser.g:3945:3: otherlv_0= LeftSquareBracket ( (lv_value_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket + { + otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_56); + newLeafNode(otherlv_0, grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); + + // InternalSolverLanguageParser.g:3949:3: ( (lv_value_1_0= ruleUpperMultiplicty ) ) + // InternalSolverLanguageParser.g:3950:4: (lv_value_1_0= ruleUpperMultiplicty ) + { + // InternalSolverLanguageParser.g:3950:4: (lv_value_1_0= ruleUpperMultiplicty ) + // InternalSolverLanguageParser.g:3951:5: lv_value_1_0= ruleUpperMultiplicty + { - current = this_ExactMultiplicity_1; - afterParserOrEnumRuleCall(); - + newCompositeNode(grammarAccess.getExactMultiplicityAccess().getValueUpperMultiplictyParserRuleCall_1_0()); + + pushFollow(FOLLOW_49); + lv_value_1_0=ruleUpperMultiplicty(); - } - break; - case 3 : - // InternalSolverLanguageParser.g:3465:3: this_BoundedMultiplicity_2= ruleBoundedMultiplicity - { + state._fsp--; - newCompositeNode(grammarAccess.getMultiplicityAccess().getBoundedMultiplicityParserRuleCall_2()); - - pushFollow(FOLLOW_2); - this_BoundedMultiplicity_2=ruleBoundedMultiplicity(); - state._fsp--; + if (current==null) { + current = createModelElementForParent(grammarAccess.getExactMultiplicityRule()); + } + set( + current, + "value", + lv_value_1_0, + "org.eclipse.viatra.solver.language.SolverLanguage.UpperMultiplicty"); + afterParserOrEnumRuleCall(); + + } - current = this_BoundedMultiplicity_2; - afterParserOrEnumRuleCall(); - - } - break; + } + + otherlv_2=(Token)match(input,RightSquareBracket,FOLLOW_2); + + newLeafNode(otherlv_2, grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); + } @@ -8839,28 +10178,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleMultiplicity" + // $ANTLR end "ruleExactMultiplicity" - // $ANTLR start "entryRuleManyMultiplicity" - // InternalSolverLanguageParser.g:3477:1: entryRuleManyMultiplicity returns [EObject current=null] : iv_ruleManyMultiplicity= ruleManyMultiplicity EOF ; - public final EObject entryRuleManyMultiplicity() throws RecognitionException { + // $ANTLR start "entryRuleBoundedMultiplicity" + // InternalSolverLanguageParser.g:3976:1: entryRuleBoundedMultiplicity returns [EObject current=null] : iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF ; + public final EObject entryRuleBoundedMultiplicity() throws RecognitionException { EObject current = null; - EObject iv_ruleManyMultiplicity = null; + EObject iv_ruleBoundedMultiplicity = null; try { - // InternalSolverLanguageParser.g:3477:57: (iv_ruleManyMultiplicity= ruleManyMultiplicity EOF ) - // InternalSolverLanguageParser.g:3478:2: iv_ruleManyMultiplicity= ruleManyMultiplicity EOF + // InternalSolverLanguageParser.g:3976:60: (iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF ) + // InternalSolverLanguageParser.g:3977:2: iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF { - newCompositeNode(grammarAccess.getManyMultiplicityRule()); + newCompositeNode(grammarAccess.getBoundedMultiplicityRule()); pushFollow(FOLLOW_1); - iv_ruleManyMultiplicity=ruleManyMultiplicity(); + iv_ruleBoundedMultiplicity=ruleBoundedMultiplicity(); state._fsp--; - current =iv_ruleManyMultiplicity; + current =iv_ruleBoundedMultiplicity; match(input,EOF,FOLLOW_2); } @@ -8875,45 +10214,99 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleManyMultiplicity" + // $ANTLR end "entryRuleBoundedMultiplicity" - // $ANTLR start "ruleManyMultiplicity" - // InternalSolverLanguageParser.g:3484:1: ruleManyMultiplicity returns [EObject current=null] : ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) ; - public final EObject ruleManyMultiplicity() throws RecognitionException { + // $ANTLR start "ruleBoundedMultiplicity" + // InternalSolverLanguageParser.g:3983:1: ruleBoundedMultiplicity returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) ; + public final EObject ruleBoundedMultiplicity() throws RecognitionException { EObject current = null; - Token otherlv_1=null; + Token otherlv_0=null; + Token lv_lowerBound_1_0=null; Token otherlv_2=null; + Token otherlv_4=null; + AntlrDatatypeRuleToken lv_upperBound_3_0 = null; + enterRule(); try { - // InternalSolverLanguageParser.g:3490:2: ( ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) ) - // InternalSolverLanguageParser.g:3491:2: ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) + // InternalSolverLanguageParser.g:3989:2: ( (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) ) + // InternalSolverLanguageParser.g:3990:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) { - // InternalSolverLanguageParser.g:3491:2: ( () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket ) - // InternalSolverLanguageParser.g:3492:3: () otherlv_1= LeftSquareBracket otherlv_2= RightSquareBracket + // InternalSolverLanguageParser.g:3990:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) + // InternalSolverLanguageParser.g:3991:3: otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= Comma ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket { - // InternalSolverLanguageParser.g:3492:3: () - // InternalSolverLanguageParser.g:3493:4: + otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_57); + + newLeafNode(otherlv_0, grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); + + // InternalSolverLanguageParser.g:3995:3: ( (lv_lowerBound_1_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:3996:4: (lv_lowerBound_1_0= RULE_INT ) + { + // InternalSolverLanguageParser.g:3996:4: (lv_lowerBound_1_0= RULE_INT ) + // InternalSolverLanguageParser.g:3997:5: lv_lowerBound_1_0= RULE_INT { + lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_48); + + newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedMultiplicityAccess().getLowerBoundINTTerminalRuleCall_1_0()); + + + if (current==null) { + current = createModelElement(grammarAccess.getBoundedMultiplicityRule()); + } + setWithLastConsumed( + current, + "lowerBound", + lv_lowerBound_1_0, + "org.eclipse.xtext.common.Terminals.INT"); + + + } - current = forceCreateModelElement( - grammarAccess.getManyMultiplicityAccess().getManyMultiplicityAction_0(), - current); - } - otherlv_1=(Token)match(input,LeftSquareBracket,FOLLOW_45); + otherlv_2=(Token)match(input,Comma,FOLLOW_56); - newLeafNode(otherlv_1, grammarAccess.getManyMultiplicityAccess().getLeftSquareBracketKeyword_1()); + newLeafNode(otherlv_2, grammarAccess.getBoundedMultiplicityAccess().getCommaKeyword_2()); - otherlv_2=(Token)match(input,RightSquareBracket,FOLLOW_2); + // InternalSolverLanguageParser.g:4017:3: ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) + // InternalSolverLanguageParser.g:4018:4: (lv_upperBound_3_0= ruleUpperMultiplicty ) + { + // InternalSolverLanguageParser.g:4018:4: (lv_upperBound_3_0= ruleUpperMultiplicty ) + // InternalSolverLanguageParser.g:4019:5: lv_upperBound_3_0= ruleUpperMultiplicty + { + + newCompositeNode(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundUpperMultiplictyParserRuleCall_3_0()); + + pushFollow(FOLLOW_49); + lv_upperBound_3_0=ruleUpperMultiplicty(); + + state._fsp--; + - newLeafNode(otherlv_2, grammarAccess.getManyMultiplicityAccess().getRightSquareBracketKeyword_2()); + if (current==null) { + current = createModelElementForParent(grammarAccess.getBoundedMultiplicityRule()); + } + set( + current, + "upperBound", + lv_upperBound_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.UpperMultiplicty"); + afterParserOrEnumRuleCall(); + + + } + + + } + + otherlv_4=(Token)match(input,RightSquareBracket,FOLLOW_2); + + newLeafNode(otherlv_4, grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); } @@ -8934,28 +10327,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleManyMultiplicity" + // $ANTLR end "ruleBoundedMultiplicity" - // $ANTLR start "entryRuleExactMultiplicity" - // InternalSolverLanguageParser.g:3511:1: entryRuleExactMultiplicity returns [EObject current=null] : iv_ruleExactMultiplicity= ruleExactMultiplicity EOF ; - public final EObject entryRuleExactMultiplicity() throws RecognitionException { + // $ANTLR start "entryRuleEnumDeclaration" + // InternalSolverLanguageParser.g:4044:1: entryRuleEnumDeclaration returns [EObject current=null] : iv_ruleEnumDeclaration= ruleEnumDeclaration EOF ; + public final EObject entryRuleEnumDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleExactMultiplicity = null; + EObject iv_ruleEnumDeclaration = null; try { - // InternalSolverLanguageParser.g:3511:58: (iv_ruleExactMultiplicity= ruleExactMultiplicity EOF ) - // InternalSolverLanguageParser.g:3512:2: iv_ruleExactMultiplicity= ruleExactMultiplicity EOF + // InternalSolverLanguageParser.g:4044:56: (iv_ruleEnumDeclaration= ruleEnumDeclaration EOF ) + // InternalSolverLanguageParser.g:4045:2: iv_ruleEnumDeclaration= ruleEnumDeclaration EOF { - newCompositeNode(grammarAccess.getExactMultiplicityRule()); + newCompositeNode(grammarAccess.getEnumDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleExactMultiplicity=ruleExactMultiplicity(); + iv_ruleEnumDeclaration=ruleEnumDeclaration(); state._fsp--; - current =iv_ruleExactMultiplicity; + current =iv_ruleEnumDeclaration; match(input,EOF,FOLLOW_2); } @@ -8970,57 +10363,58 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleExactMultiplicity" + // $ANTLR end "entryRuleEnumDeclaration" - // $ANTLR start "ruleExactMultiplicity" - // InternalSolverLanguageParser.g:3518:1: ruleExactMultiplicity returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) ; - public final EObject ruleExactMultiplicity() throws RecognitionException { + // $ANTLR start "ruleEnumDeclaration" + // InternalSolverLanguageParser.g:4051:1: ruleEnumDeclaration returns [EObject current=null] : (otherlv_0= Enum ( (lv_name_1_0= RULE_ID ) ) ( (otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket ) | this_FULL_STOP_7= RULE_FULL_STOP ) ) ; + public final EObject ruleEnumDeclaration() throws RecognitionException { EObject current = null; Token otherlv_0=null; + Token lv_name_1_0=null; Token otherlv_2=null; - AntlrDatatypeRuleToken lv_multiplicity_1_0 = null; + Token otherlv_4=null; + Token otherlv_6=null; + Token this_FULL_STOP_7=null; + EObject lv_literals_3_0 = null; + + EObject lv_literals_5_0 = null; enterRule(); try { - // InternalSolverLanguageParser.g:3524:2: ( (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) ) - // InternalSolverLanguageParser.g:3525:2: (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) + // InternalSolverLanguageParser.g:4057:2: ( (otherlv_0= Enum ( (lv_name_1_0= RULE_ID ) ) ( (otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket ) | this_FULL_STOP_7= RULE_FULL_STOP ) ) ) + // InternalSolverLanguageParser.g:4058:2: (otherlv_0= Enum ( (lv_name_1_0= RULE_ID ) ) ( (otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket ) | this_FULL_STOP_7= RULE_FULL_STOP ) ) { - // InternalSolverLanguageParser.g:3525:2: (otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket ) - // InternalSolverLanguageParser.g:3526:3: otherlv_0= LeftSquareBracket ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) otherlv_2= RightSquareBracket + // InternalSolverLanguageParser.g:4058:2: (otherlv_0= Enum ( (lv_name_1_0= RULE_ID ) ) ( (otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket ) | this_FULL_STOP_7= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4059:3: otherlv_0= Enum ( (lv_name_1_0= RULE_ID ) ) ( (otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket ) | this_FULL_STOP_7= RULE_FULL_STOP ) { - otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_52); + otherlv_0=(Token)match(input,Enum,FOLLOW_28); - newLeafNode(otherlv_0, grammarAccess.getExactMultiplicityAccess().getLeftSquareBracketKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getEnumDeclarationAccess().getEnumKeyword_0()); - // InternalSolverLanguageParser.g:3530:3: ( (lv_multiplicity_1_0= ruleUpperMultiplicty ) ) - // InternalSolverLanguageParser.g:3531:4: (lv_multiplicity_1_0= ruleUpperMultiplicty ) + // InternalSolverLanguageParser.g:4063:3: ( (lv_name_1_0= RULE_ID ) ) + // InternalSolverLanguageParser.g:4064:4: (lv_name_1_0= RULE_ID ) { - // InternalSolverLanguageParser.g:3531:4: (lv_multiplicity_1_0= ruleUpperMultiplicty ) - // InternalSolverLanguageParser.g:3532:5: lv_multiplicity_1_0= ruleUpperMultiplicty + // InternalSolverLanguageParser.g:4064:4: (lv_name_1_0= RULE_ID ) + // InternalSolverLanguageParser.g:4065:5: lv_name_1_0= RULE_ID { + lv_name_1_0=(Token)match(input,RULE_ID,FOLLOW_58); - newCompositeNode(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0()); + newLeafNode(lv_name_1_0, grammarAccess.getEnumDeclarationAccess().getNameIDTerminalRuleCall_1_0()); - pushFollow(FOLLOW_45); - lv_multiplicity_1_0=ruleUpperMultiplicty(); - - state._fsp--; - if (current==null) { - current = createModelElementForParent(grammarAccess.getExactMultiplicityRule()); + current = createModelElement(grammarAccess.getEnumDeclarationRule()); } - set( + setWithLastConsumed( current, - "multiplicity", - lv_multiplicity_1_0, - "org.eclipse.viatra.solver.language.SolverLanguage.UpperMultiplicty"); - afterParserOrEnumRuleCall(); + "name", + lv_name_1_0, + "org.eclipse.xtext.common.Terminals.ID"); } @@ -9028,10 +10422,180 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,RightSquareBracket,FOLLOW_2); + // InternalSolverLanguageParser.g:4081:3: ( (otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket ) | this_FULL_STOP_7= RULE_FULL_STOP ) + int alt52=2; + int LA52_0 = input.LA(1); + + if ( (LA52_0==LeftCurlyBracket) ) { + alt52=1; + } + else if ( (LA52_0==RULE_FULL_STOP) ) { + alt52=2; + } + else { + NoViableAltException nvae = + new NoViableAltException("", 52, 0, input); + + throw nvae; + } + switch (alt52) { + case 1 : + // InternalSolverLanguageParser.g:4082:4: (otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket ) + { + // InternalSolverLanguageParser.g:4082:4: (otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket ) + // InternalSolverLanguageParser.g:4083:5: otherlv_2= LeftCurlyBracket ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? otherlv_6= RightCurlyBracket + { + otherlv_2=(Token)match(input,LeftCurlyBracket,FOLLOW_59); + + newLeafNode(otherlv_2, grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()); + + // InternalSolverLanguageParser.g:4087:5: ( ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* )? + int alt51=2; + int LA51_0 = input.LA(1); + + if ( (LA51_0==RULE_ID) ) { + alt51=1; + } + switch (alt51) { + case 1 : + // InternalSolverLanguageParser.g:4088:6: ( (lv_literals_3_0= ruleEnumLiteral ) ) ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* + { + // InternalSolverLanguageParser.g:4088:6: ( (lv_literals_3_0= ruleEnumLiteral ) ) + // InternalSolverLanguageParser.g:4089:7: (lv_literals_3_0= ruleEnumLiteral ) + { + // InternalSolverLanguageParser.g:4089:7: (lv_literals_3_0= ruleEnumLiteral ) + // InternalSolverLanguageParser.g:4090:8: lv_literals_3_0= ruleEnumLiteral + { + + newCompositeNode(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0()); + + pushFollow(FOLLOW_60); + lv_literals_3_0=ruleEnumLiteral(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getEnumDeclarationRule()); + } + add( + current, + "literals", + lv_literals_3_0, + "org.eclipse.viatra.solver.language.SolverLanguage.EnumLiteral"); + afterParserOrEnumRuleCall(); + + + } + + + } + + // InternalSolverLanguageParser.g:4107:6: ( (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) )* + loop50: + do { + int alt50=2; + int LA50_0 = input.LA(1); + + if ( (LA50_0==Comma||LA50_0==RULE_ID) ) { + alt50=1; + } + + + switch (alt50) { + case 1 : + // InternalSolverLanguageParser.g:4108:7: (otherlv_4= Comma )? ( (lv_literals_5_0= ruleEnumLiteral ) ) + { + // InternalSolverLanguageParser.g:4108:7: (otherlv_4= Comma )? + int alt49=2; + int LA49_0 = input.LA(1); + + if ( (LA49_0==Comma) ) { + alt49=1; + } + switch (alt49) { + case 1 : + // InternalSolverLanguageParser.g:4109:8: otherlv_4= Comma + { + otherlv_4=(Token)match(input,Comma,FOLLOW_28); + + newLeafNode(otherlv_4, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); + + + } + break; + + } + + // InternalSolverLanguageParser.g:4114:7: ( (lv_literals_5_0= ruleEnumLiteral ) ) + // InternalSolverLanguageParser.g:4115:8: (lv_literals_5_0= ruleEnumLiteral ) + { + // InternalSolverLanguageParser.g:4115:8: (lv_literals_5_0= ruleEnumLiteral ) + // InternalSolverLanguageParser.g:4116:9: lv_literals_5_0= ruleEnumLiteral + { + + newCompositeNode(grammarAccess.getEnumDeclarationAccess().getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0()); + + pushFollow(FOLLOW_60); + lv_literals_5_0=ruleEnumLiteral(); + + state._fsp--; + + + if (current==null) { + current = createModelElementForParent(grammarAccess.getEnumDeclarationRule()); + } + add( + current, + "literals", + lv_literals_5_0, + "org.eclipse.viatra.solver.language.SolverLanguage.EnumLiteral"); + afterParserOrEnumRuleCall(); + + + } + + + } + + + } + break; + + default : + break loop50; + } + } while (true); + + + } + break; + + } + + otherlv_6=(Token)match(input,RightCurlyBracket,FOLLOW_2); + + newLeafNode(otherlv_6, grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2()); + + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:4141:4: this_FULL_STOP_7= RULE_FULL_STOP + { + this_FULL_STOP_7=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_7, grammarAccess.getEnumDeclarationAccess().getFULL_STOPTerminalRuleCall_2_1()); + + + } + break; + + } - newLeafNode(otherlv_2, grammarAccess.getExactMultiplicityAccess().getRightSquareBracketKeyword_2()); - } @@ -9051,28 +10615,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleExactMultiplicity" + // $ANTLR end "ruleEnumDeclaration" - // $ANTLR start "entryRuleBoundedMultiplicity" - // InternalSolverLanguageParser.g:3557:1: entryRuleBoundedMultiplicity returns [EObject current=null] : iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF ; - public final EObject entryRuleBoundedMultiplicity() throws RecognitionException { + // $ANTLR start "entryRuleEnumLiteral" + // InternalSolverLanguageParser.g:4150:1: entryRuleEnumLiteral returns [EObject current=null] : iv_ruleEnumLiteral= ruleEnumLiteral EOF ; + public final EObject entryRuleEnumLiteral() throws RecognitionException { EObject current = null; - EObject iv_ruleBoundedMultiplicity = null; + EObject iv_ruleEnumLiteral = null; try { - // InternalSolverLanguageParser.g:3557:60: (iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF ) - // InternalSolverLanguageParser.g:3558:2: iv_ruleBoundedMultiplicity= ruleBoundedMultiplicity EOF + // InternalSolverLanguageParser.g:4150:52: (iv_ruleEnumLiteral= ruleEnumLiteral EOF ) + // InternalSolverLanguageParser.g:4151:2: iv_ruleEnumLiteral= ruleEnumLiteral EOF { - newCompositeNode(grammarAccess.getBoundedMultiplicityRule()); + newCompositeNode(grammarAccess.getEnumLiteralRule()); pushFollow(FOLLOW_1); - iv_ruleBoundedMultiplicity=ruleBoundedMultiplicity(); + iv_ruleEnumLiteral=ruleEnumLiteral(); state._fsp--; - current =iv_ruleBoundedMultiplicity; + current =iv_ruleEnumLiteral; match(input,EOF,FOLLOW_2); } @@ -9087,100 +10651,46 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleBoundedMultiplicity" + // $ANTLR end "entryRuleEnumLiteral" - // $ANTLR start "ruleBoundedMultiplicity" - // InternalSolverLanguageParser.g:3564:1: ruleBoundedMultiplicity returns [EObject current=null] : (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) ; - public final EObject ruleBoundedMultiplicity() throws RecognitionException { + // $ANTLR start "ruleEnumLiteral" + // InternalSolverLanguageParser.g:4157:1: ruleEnumLiteral returns [EObject current=null] : ( (lv_name_0_0= RULE_ID ) ) ; + public final EObject ruleEnumLiteral() throws RecognitionException { EObject current = null; - Token otherlv_0=null; - Token lv_lowerBound_1_0=null; - Token otherlv_2=null; - Token otherlv_4=null; - AntlrDatatypeRuleToken lv_upperBound_3_0 = null; - + Token lv_name_0_0=null; enterRule(); try { - // InternalSolverLanguageParser.g:3570:2: ( (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) ) - // InternalSolverLanguageParser.g:3571:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) - { - // InternalSolverLanguageParser.g:3571:2: (otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket ) - // InternalSolverLanguageParser.g:3572:3: otherlv_0= LeftSquareBracket ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= FullStopFullStop ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) otherlv_4= RightSquareBracket - { - otherlv_0=(Token)match(input,LeftSquareBracket,FOLLOW_53); - - newLeafNode(otherlv_0, grammarAccess.getBoundedMultiplicityAccess().getLeftSquareBracketKeyword_0()); - - // InternalSolverLanguageParser.g:3576:3: ( (lv_lowerBound_1_0= RULE_INT ) ) - // InternalSolverLanguageParser.g:3577:4: (lv_lowerBound_1_0= RULE_INT ) + // InternalSolverLanguageParser.g:4163:2: ( ( (lv_name_0_0= RULE_ID ) ) ) + // InternalSolverLanguageParser.g:4164:2: ( (lv_name_0_0= RULE_ID ) ) { - // InternalSolverLanguageParser.g:3577:4: (lv_lowerBound_1_0= RULE_INT ) - // InternalSolverLanguageParser.g:3578:5: lv_lowerBound_1_0= RULE_INT - { - lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_44); - - newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedMultiplicityAccess().getLowerBoundINTTerminalRuleCall_1_0()); - - - if (current==null) { - current = createModelElement(grammarAccess.getBoundedMultiplicityRule()); - } - setWithLastConsumed( - current, - "lowerBound", - lv_lowerBound_1_0, - "org.eclipse.xtext.common.Terminals.INT"); - - - } - - - } - - otherlv_2=(Token)match(input,FullStopFullStop,FOLLOW_52); - - newLeafNode(otherlv_2, grammarAccess.getBoundedMultiplicityAccess().getFullStopFullStopKeyword_2()); - - // InternalSolverLanguageParser.g:3598:3: ( (lv_upperBound_3_0= ruleUpperMultiplicty ) ) - // InternalSolverLanguageParser.g:3599:4: (lv_upperBound_3_0= ruleUpperMultiplicty ) + // InternalSolverLanguageParser.g:4164:2: ( (lv_name_0_0= RULE_ID ) ) + // InternalSolverLanguageParser.g:4165:3: (lv_name_0_0= RULE_ID ) { - // InternalSolverLanguageParser.g:3599:4: (lv_upperBound_3_0= ruleUpperMultiplicty ) - // InternalSolverLanguageParser.g:3600:5: lv_upperBound_3_0= ruleUpperMultiplicty + // InternalSolverLanguageParser.g:4165:3: (lv_name_0_0= RULE_ID ) + // InternalSolverLanguageParser.g:4166:4: lv_name_0_0= RULE_ID { + lv_name_0_0=(Token)match(input,RULE_ID,FOLLOW_2); - newCompositeNode(grammarAccess.getBoundedMultiplicityAccess().getUpperBoundUpperMultiplictyParserRuleCall_3_0()); - - pushFollow(FOLLOW_45); - lv_upperBound_3_0=ruleUpperMultiplicty(); - - state._fsp--; - - - if (current==null) { - current = createModelElementForParent(grammarAccess.getBoundedMultiplicityRule()); - } - set( - current, - "upperBound", - lv_upperBound_3_0, - "org.eclipse.viatra.solver.language.SolverLanguage.UpperMultiplicty"); - afterParserOrEnumRuleCall(); - - - } + newLeafNode(lv_name_0_0, grammarAccess.getEnumLiteralAccess().getNameIDTerminalRuleCall_0()); + + if (current==null) { + current = createModelElement(grammarAccess.getEnumLiteralRule()); + } + setWithLastConsumed( + current, + "name", + lv_name_0_0, + "org.eclipse.xtext.common.Terminals.ID"); + } - otherlv_4=(Token)match(input,RightSquareBracket,FOLLOW_2); - - newLeafNode(otherlv_4, grammarAccess.getBoundedMultiplicityAccess().getRightSquareBracketKeyword_4()); - } @@ -9200,28 +10710,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleBoundedMultiplicity" + // $ANTLR end "ruleEnumLiteral" - // $ANTLR start "entryRuleScopeDefinition" - // InternalSolverLanguageParser.g:3625:1: entryRuleScopeDefinition returns [EObject current=null] : iv_ruleScopeDefinition= ruleScopeDefinition EOF ; - public final EObject entryRuleScopeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleScopeDeclaration" + // InternalSolverLanguageParser.g:4185:1: entryRuleScopeDeclaration returns [EObject current=null] : iv_ruleScopeDeclaration= ruleScopeDeclaration EOF ; + public final EObject entryRuleScopeDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleScopeDefinition = null; + EObject iv_ruleScopeDeclaration = null; try { - // InternalSolverLanguageParser.g:3625:56: (iv_ruleScopeDefinition= ruleScopeDefinition EOF ) - // InternalSolverLanguageParser.g:3626:2: iv_ruleScopeDefinition= ruleScopeDefinition EOF + // InternalSolverLanguageParser.g:4185:57: (iv_ruleScopeDeclaration= ruleScopeDeclaration EOF ) + // InternalSolverLanguageParser.g:4186:2: iv_ruleScopeDeclaration= ruleScopeDeclaration EOF { - newCompositeNode(grammarAccess.getScopeDefinitionRule()); + newCompositeNode(grammarAccess.getScopeDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleScopeDefinition=ruleScopeDefinition(); + iv_ruleScopeDeclaration=ruleScopeDeclaration(); state._fsp--; - current =iv_ruleScopeDefinition; + current =iv_ruleScopeDeclaration; match(input,EOF,FOLLOW_2); } @@ -9236,81 +10746,81 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleScopeDefinition" + // $ANTLR end "entryRuleScopeDeclaration" - // $ANTLR start "ruleScopeDefinition" - // InternalSolverLanguageParser.g:3632:1: ruleScopeDefinition returns [EObject current=null] : (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) ; - public final EObject ruleScopeDefinition() throws RecognitionException { + // $ANTLR start "ruleScopeDeclaration" + // InternalSolverLanguageParser.g:4192:1: ruleScopeDeclaration returns [EObject current=null] : (this_ExactScope_0= ruleExactScope | this_BoundedScope_1= ruleBoundedScope | this_LowerBoundedScope_2= ruleLowerBoundedScope ) ; + public final EObject ruleScopeDeclaration() throws RecognitionException { EObject current = null; - EObject this_ExactScopeDefinition_0 = null; + EObject this_ExactScope_0 = null; - EObject this_BoundedScopeDefinition_1 = null; + EObject this_BoundedScope_1 = null; - EObject this_LowerBoundedScopeDefinition_2 = null; + EObject this_LowerBoundedScope_2 = null; enterRule(); try { - // InternalSolverLanguageParser.g:3638:2: ( (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) ) - // InternalSolverLanguageParser.g:3639:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) + // InternalSolverLanguageParser.g:4198:2: ( (this_ExactScope_0= ruleExactScope | this_BoundedScope_1= ruleBoundedScope | this_LowerBoundedScope_2= ruleLowerBoundedScope ) ) + // InternalSolverLanguageParser.g:4199:2: (this_ExactScope_0= ruleExactScope | this_BoundedScope_1= ruleBoundedScope | this_LowerBoundedScope_2= ruleLowerBoundedScope ) { - // InternalSolverLanguageParser.g:3639:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition ) - int alt44=3; - alt44 = dfa44.predict(input); - switch (alt44) { + // InternalSolverLanguageParser.g:4199:2: (this_ExactScope_0= ruleExactScope | this_BoundedScope_1= ruleBoundedScope | this_LowerBoundedScope_2= ruleLowerBoundedScope ) + int alt53=3; + alt53 = dfa53.predict(input); + switch (alt53) { case 1 : - // InternalSolverLanguageParser.g:3640:3: this_ExactScopeDefinition_0= ruleExactScopeDefinition + // InternalSolverLanguageParser.g:4200:3: this_ExactScope_0= ruleExactScope { - newCompositeNode(grammarAccess.getScopeDefinitionAccess().getExactScopeDefinitionParserRuleCall_0()); + newCompositeNode(grammarAccess.getScopeDeclarationAccess().getExactScopeParserRuleCall_0()); pushFollow(FOLLOW_2); - this_ExactScopeDefinition_0=ruleExactScopeDefinition(); + this_ExactScope_0=ruleExactScope(); state._fsp--; - current = this_ExactScopeDefinition_0; + current = this_ExactScope_0; afterParserOrEnumRuleCall(); } break; case 2 : - // InternalSolverLanguageParser.g:3649:3: this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition + // InternalSolverLanguageParser.g:4209:3: this_BoundedScope_1= ruleBoundedScope { - newCompositeNode(grammarAccess.getScopeDefinitionAccess().getBoundedScopeDefinitionParserRuleCall_1()); + newCompositeNode(grammarAccess.getScopeDeclarationAccess().getBoundedScopeParserRuleCall_1()); pushFollow(FOLLOW_2); - this_BoundedScopeDefinition_1=ruleBoundedScopeDefinition(); + this_BoundedScope_1=ruleBoundedScope(); state._fsp--; - current = this_BoundedScopeDefinition_1; + current = this_BoundedScope_1; afterParserOrEnumRuleCall(); } break; case 3 : - // InternalSolverLanguageParser.g:3658:3: this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition + // InternalSolverLanguageParser.g:4218:3: this_LowerBoundedScope_2= ruleLowerBoundedScope { - newCompositeNode(grammarAccess.getScopeDefinitionAccess().getLowerBoundedScopeDefinitionParserRuleCall_2()); + newCompositeNode(grammarAccess.getScopeDeclarationAccess().getLowerBoundedScopeParserRuleCall_2()); pushFollow(FOLLOW_2); - this_LowerBoundedScopeDefinition_2=ruleLowerBoundedScopeDefinition(); + this_LowerBoundedScope_2=ruleLowerBoundedScope(); state._fsp--; - current = this_LowerBoundedScopeDefinition_2; + current = this_LowerBoundedScope_2; afterParserOrEnumRuleCall(); @@ -9335,28 +10845,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleScopeDefinition" + // $ANTLR end "ruleScopeDeclaration" - // $ANTLR start "entryRuleExactScopeDefinition" - // InternalSolverLanguageParser.g:3670:1: entryRuleExactScopeDefinition returns [EObject current=null] : iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF ; - public final EObject entryRuleExactScopeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleExactScope" + // InternalSolverLanguageParser.g:4230:1: entryRuleExactScope returns [EObject current=null] : iv_ruleExactScope= ruleExactScope EOF ; + public final EObject entryRuleExactScope() throws RecognitionException { EObject current = null; - EObject iv_ruleExactScopeDefinition = null; + EObject iv_ruleExactScope = null; try { - // InternalSolverLanguageParser.g:3670:61: (iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF ) - // InternalSolverLanguageParser.g:3671:2: iv_ruleExactScopeDefinition= ruleExactScopeDefinition EOF + // InternalSolverLanguageParser.g:4230:51: (iv_ruleExactScope= ruleExactScope EOF ) + // InternalSolverLanguageParser.g:4231:2: iv_ruleExactScope= ruleExactScope EOF { - newCompositeNode(grammarAccess.getExactScopeDefinitionRule()); + newCompositeNode(grammarAccess.getExactScopeRule()); pushFollow(FOLLOW_1); - iv_ruleExactScopeDefinition=ruleExactScopeDefinition(); + iv_ruleExactScope=ruleExactScope(); state._fsp--; - current =iv_ruleExactScopeDefinition; + current =iv_ruleExactScope; match(input,EOF,FOLLOW_2); } @@ -9371,47 +10881,48 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleExactScopeDefinition" + // $ANTLR end "entryRuleExactScope" - // $ANTLR start "ruleExactScopeDefinition" - // InternalSolverLanguageParser.g:3677:1: ruleExactScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) ; - public final EObject ruleExactScopeDefinition() throws RecognitionException { + // $ANTLR start "ruleExactScope" + // InternalSolverLanguageParser.g:4237:1: ruleExactScope returns [EObject current=null] : (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_size_3_0= RULE_INT ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ; + public final EObject ruleExactScope() throws RecognitionException { EObject current = null; Token otherlv_0=null; Token otherlv_2=null; - Token lv_exactScope_3_0=null; + Token lv_size_3_0=null; + Token this_FULL_STOP_4=null; enterRule(); try { - // InternalSolverLanguageParser.g:3683:2: ( (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) ) - // InternalSolverLanguageParser.g:3684:2: (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) + // InternalSolverLanguageParser.g:4243:2: ( (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_size_3_0= RULE_INT ) ) this_FULL_STOP_4= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4244:2: (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_size_3_0= RULE_INT ) ) this_FULL_STOP_4= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:3684:2: (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) ) - // InternalSolverLanguageParser.g:3685:3: otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_exactScope_3_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4244:2: (otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_size_3_0= RULE_INT ) ) this_FULL_STOP_4= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4245:3: otherlv_0= Scope ( ( ruleQualifiedName ) ) otherlv_2= EqualsSignEqualsSign ( (lv_size_3_0= RULE_INT ) ) this_FULL_STOP_4= RULE_FULL_STOP { - otherlv_0=(Token)match(input,Scope,FOLLOW_8); + otherlv_0=(Token)match(input,Scope,FOLLOW_3); - newLeafNode(otherlv_0, grammarAccess.getExactScopeDefinitionAccess().getScopeKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getExactScopeAccess().getScopeKeyword_0()); - // InternalSolverLanguageParser.g:3689:3: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3690:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4249:3: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:4250:4: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3690:4: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3691:5: ruleQualifiedName + // InternalSolverLanguageParser.g:4250:4: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4251:5: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getExactScopeDefinitionRule()); + current = createModelElement(grammarAccess.getExactScopeRule()); } - newCompositeNode(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0()); + newCompositeNode(grammarAccess.getExactScopeAccess().getTypeSymbolCrossReference_1_0()); - pushFollow(FOLLOW_54); + pushFollow(FOLLOW_61); ruleQualifiedName(); state._fsp--; @@ -9425,28 +10936,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,EqualsSignEqualsSign,FOLLOW_53); + otherlv_2=(Token)match(input,EqualsSignEqualsSign,FOLLOW_57); - newLeafNode(otherlv_2, grammarAccess.getExactScopeDefinitionAccess().getEqualsSignEqualsSignKeyword_2()); + newLeafNode(otherlv_2, grammarAccess.getExactScopeAccess().getEqualsSignEqualsSignKeyword_2()); - // InternalSolverLanguageParser.g:3709:3: ( (lv_exactScope_3_0= RULE_INT ) ) - // InternalSolverLanguageParser.g:3710:4: (lv_exactScope_3_0= RULE_INT ) + // InternalSolverLanguageParser.g:4269:3: ( (lv_size_3_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4270:4: (lv_size_3_0= RULE_INT ) { - // InternalSolverLanguageParser.g:3710:4: (lv_exactScope_3_0= RULE_INT ) - // InternalSolverLanguageParser.g:3711:5: lv_exactScope_3_0= RULE_INT + // InternalSolverLanguageParser.g:4270:4: (lv_size_3_0= RULE_INT ) + // InternalSolverLanguageParser.g:4271:5: lv_size_3_0= RULE_INT { - lv_exactScope_3_0=(Token)match(input,RULE_INT,FOLLOW_2); + lv_size_3_0=(Token)match(input,RULE_INT,FOLLOW_4); - newLeafNode(lv_exactScope_3_0, grammarAccess.getExactScopeDefinitionAccess().getExactScopeINTTerminalRuleCall_3_0()); + newLeafNode(lv_size_3_0, grammarAccess.getExactScopeAccess().getSizeINTTerminalRuleCall_3_0()); if (current==null) { - current = createModelElement(grammarAccess.getExactScopeDefinitionRule()); + current = createModelElement(grammarAccess.getExactScopeRule()); } setWithLastConsumed( current, - "exactScope", - lv_exactScope_3_0, + "size", + lv_size_3_0, "org.eclipse.xtext.common.Terminals.INT"); @@ -9455,6 +10966,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_4=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_4, grammarAccess.getExactScopeAccess().getFULL_STOPTerminalRuleCall_4()); + } @@ -9474,28 +10989,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleExactScopeDefinition" + // $ANTLR end "ruleExactScope" - // $ANTLR start "entryRuleBoundedScopeDefinition" - // InternalSolverLanguageParser.g:3731:1: entryRuleBoundedScopeDefinition returns [EObject current=null] : iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF ; - public final EObject entryRuleBoundedScopeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleBoundedScope" + // InternalSolverLanguageParser.g:4295:1: entryRuleBoundedScope returns [EObject current=null] : iv_ruleBoundedScope= ruleBoundedScope EOF ; + public final EObject entryRuleBoundedScope() throws RecognitionException { EObject current = null; - EObject iv_ruleBoundedScopeDefinition = null; + EObject iv_ruleBoundedScope = null; try { - // InternalSolverLanguageParser.g:3731:63: (iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF ) - // InternalSolverLanguageParser.g:3732:2: iv_ruleBoundedScopeDefinition= ruleBoundedScopeDefinition EOF + // InternalSolverLanguageParser.g:4295:53: (iv_ruleBoundedScope= ruleBoundedScope EOF ) + // InternalSolverLanguageParser.g:4296:2: iv_ruleBoundedScope= ruleBoundedScope EOF { - newCompositeNode(grammarAccess.getBoundedScopeDefinitionRule()); + newCompositeNode(grammarAccess.getBoundedScopeRule()); pushFollow(FOLLOW_1); - iv_ruleBoundedScopeDefinition=ruleBoundedScopeDefinition(); + iv_ruleBoundedScope=ruleBoundedScope(); state._fsp--; - current =iv_ruleBoundedScopeDefinition; + current =iv_ruleBoundedScope; match(input,EOF,FOLLOW_2); } @@ -9510,12 +11025,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleBoundedScopeDefinition" + // $ANTLR end "entryRuleBoundedScope" - // $ANTLR start "ruleBoundedScopeDefinition" - // InternalSolverLanguageParser.g:3738:1: ruleBoundedScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) ; - public final EObject ruleBoundedScopeDefinition() throws RecognitionException { + // $ANTLR start "ruleBoundedScope" + // InternalSolverLanguageParser.g:4302:1: ruleBoundedScope returns [EObject current=null] : (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) this_FULL_STOP_11= RULE_FULL_STOP ) ; + public final EObject ruleBoundedScope() throws RecognitionException { EObject current = null; Token otherlv_0=null; @@ -9527,81 +11042,82 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { Token otherlv_7=null; Token otherlv_9=null; Token lv_lowerBound_10_0=null; + Token this_FULL_STOP_11=null; enterRule(); try { - // InternalSolverLanguageParser.g:3744:2: ( (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) ) - // InternalSolverLanguageParser.g:3745:2: (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) + // InternalSolverLanguageParser.g:4308:2: ( (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) this_FULL_STOP_11= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4309:2: (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) this_FULL_STOP_11= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:3745:2: (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) ) - // InternalSolverLanguageParser.g:3746:3: otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) + // InternalSolverLanguageParser.g:4309:2: (otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) this_FULL_STOP_11= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4310:3: otherlv_0= Scope ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) this_FULL_STOP_11= RULE_FULL_STOP { - otherlv_0=(Token)match(input,Scope,FOLLOW_55); + otherlv_0=(Token)match(input,Scope,FOLLOW_62); - newLeafNode(otherlv_0, grammarAccess.getBoundedScopeDefinitionAccess().getScopeKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getBoundedScopeAccess().getScopeKeyword_0()); - // InternalSolverLanguageParser.g:3750:3: ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) - int alt47=2; - int LA47_0 = input.LA(1); + // InternalSolverLanguageParser.g:4314:3: ( ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) | ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) ) + int alt56=2; + int LA56_0 = input.LA(1); - if ( (LA47_0==RULE_INT) ) { - int LA47_1 = input.LA(2); + if ( (LA56_0==RULE_INT) ) { + int LA56_1 = input.LA(2); - if ( (LA47_1==GreaterThanSignEqualsSign) ) { - alt47=2; + if ( (LA56_1==LessThanSignEqualsSign) ) { + alt56=1; } - else if ( (LA47_1==LessThanSignEqualsSign) ) { - alt47=1; + else if ( (LA56_1==GreaterThanSignEqualsSign) ) { + alt56=2; } else { NoViableAltException nvae = - new NoViableAltException("", 47, 1, input); + new NoViableAltException("", 56, 1, input); throw nvae; } } - else if ( (LA47_0==RULE_QUOTED_ID||LA47_0==RULE_ID) ) { - alt47=1; + else if ( (LA56_0==Object||LA56_0==RULE_QUOTED_ID||LA56_0==RULE_ID) ) { + alt56=1; } else { NoViableAltException nvae = - new NoViableAltException("", 47, 0, input); + new NoViableAltException("", 56, 0, input); throw nvae; } - switch (alt47) { + switch (alt56) { case 1 : - // InternalSolverLanguageParser.g:3751:4: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) + // InternalSolverLanguageParser.g:4315:4: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) { - // InternalSolverLanguageParser.g:3751:4: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) - // InternalSolverLanguageParser.g:3752:5: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4315:4: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) ) + // InternalSolverLanguageParser.g:4316:5: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? ( ( ruleQualifiedName ) ) otherlv_4= LessThanSignEqualsSign ( (lv_upperBound_5_0= RULE_INT ) ) { - // InternalSolverLanguageParser.g:3752:5: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? - int alt45=2; - int LA45_0 = input.LA(1); + // InternalSolverLanguageParser.g:4316:5: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign )? + int alt54=2; + int LA54_0 = input.LA(1); - if ( (LA45_0==RULE_INT) ) { - alt45=1; + if ( (LA54_0==RULE_INT) ) { + alt54=1; } - switch (alt45) { + switch (alt54) { case 1 : - // InternalSolverLanguageParser.g:3753:6: ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign + // InternalSolverLanguageParser.g:4317:6: ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign { - // InternalSolverLanguageParser.g:3753:6: ( (lv_lowerBound_1_0= RULE_INT ) ) - // InternalSolverLanguageParser.g:3754:7: (lv_lowerBound_1_0= RULE_INT ) + // InternalSolverLanguageParser.g:4317:6: ( (lv_lowerBound_1_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4318:7: (lv_lowerBound_1_0= RULE_INT ) { - // InternalSolverLanguageParser.g:3754:7: (lv_lowerBound_1_0= RULE_INT ) - // InternalSolverLanguageParser.g:3755:8: lv_lowerBound_1_0= RULE_INT + // InternalSolverLanguageParser.g:4318:7: (lv_lowerBound_1_0= RULE_INT ) + // InternalSolverLanguageParser.g:4319:8: lv_lowerBound_1_0= RULE_INT { - lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_56); + lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_63); - newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); + newLeafNode(lv_lowerBound_1_0, grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0_0()); if (current==null) { - current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getBoundedScopeRule()); } setWithLastConsumed( current, @@ -9615,9 +11131,9 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,LessThanSignEqualsSign,FOLLOW_8); + otherlv_2=(Token)match(input,LessThanSignEqualsSign,FOLLOW_3); - newLeafNode(otherlv_2, grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); + newLeafNode(otherlv_2, grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_0_1()); } @@ -9625,21 +11141,21 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3776:5: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3777:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4340:5: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:4341:6: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3777:6: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3778:7: ruleQualifiedName + // InternalSolverLanguageParser.g:4341:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4342:7: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getBoundedScopeRule()); } - newCompositeNode(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_1_0()); + newCompositeNode(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_0_1_0()); - pushFollow(FOLLOW_56); + pushFollow(FOLLOW_63); ruleQualifiedName(); state._fsp--; @@ -9653,23 +11169,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_4=(Token)match(input,LessThanSignEqualsSign,FOLLOW_53); + otherlv_4=(Token)match(input,LessThanSignEqualsSign,FOLLOW_57); - newLeafNode(otherlv_4, grammarAccess.getBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_2()); + newLeafNode(otherlv_4, grammarAccess.getBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_2()); - // InternalSolverLanguageParser.g:3796:5: ( (lv_upperBound_5_0= RULE_INT ) ) - // InternalSolverLanguageParser.g:3797:6: (lv_upperBound_5_0= RULE_INT ) + // InternalSolverLanguageParser.g:4360:5: ( (lv_upperBound_5_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4361:6: (lv_upperBound_5_0= RULE_INT ) { - // InternalSolverLanguageParser.g:3797:6: (lv_upperBound_5_0= RULE_INT ) - // InternalSolverLanguageParser.g:3798:7: lv_upperBound_5_0= RULE_INT + // InternalSolverLanguageParser.g:4361:6: (lv_upperBound_5_0= RULE_INT ) + // InternalSolverLanguageParser.g:4362:7: lv_upperBound_5_0= RULE_INT { - lv_upperBound_5_0=(Token)match(input,RULE_INT,FOLLOW_2); + lv_upperBound_5_0=(Token)match(input,RULE_INT,FOLLOW_4); - newLeafNode(lv_upperBound_5_0, grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); + newLeafNode(lv_upperBound_5_0, grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_0_3_0()); if (current==null) { - current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getBoundedScopeRule()); } setWithLastConsumed( current, @@ -9690,24 +11206,24 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:3816:4: ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) + // InternalSolverLanguageParser.g:4380:4: ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) { - // InternalSolverLanguageParser.g:3816:4: ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) - // InternalSolverLanguageParser.g:3817:5: ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? + // InternalSolverLanguageParser.g:4380:4: ( ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? ) + // InternalSolverLanguageParser.g:4381:5: ( (lv_upperBound_6_0= RULE_INT ) ) otherlv_7= GreaterThanSignEqualsSign ( ( ruleQualifiedName ) ) (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? { - // InternalSolverLanguageParser.g:3817:5: ( (lv_upperBound_6_0= RULE_INT ) ) - // InternalSolverLanguageParser.g:3818:6: (lv_upperBound_6_0= RULE_INT ) + // InternalSolverLanguageParser.g:4381:5: ( (lv_upperBound_6_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4382:6: (lv_upperBound_6_0= RULE_INT ) { - // InternalSolverLanguageParser.g:3818:6: (lv_upperBound_6_0= RULE_INT ) - // InternalSolverLanguageParser.g:3819:7: lv_upperBound_6_0= RULE_INT + // InternalSolverLanguageParser.g:4382:6: (lv_upperBound_6_0= RULE_INT ) + // InternalSolverLanguageParser.g:4383:7: lv_upperBound_6_0= RULE_INT { - lv_upperBound_6_0=(Token)match(input,RULE_INT,FOLLOW_57); + lv_upperBound_6_0=(Token)match(input,RULE_INT,FOLLOW_64); - newLeafNode(lv_upperBound_6_0, grammarAccess.getBoundedScopeDefinitionAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); + newLeafNode(lv_upperBound_6_0, grammarAccess.getBoundedScopeAccess().getUpperBoundINTTerminalRuleCall_1_1_0_0()); if (current==null) { - current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getBoundedScopeRule()); } setWithLastConsumed( current, @@ -9721,25 +11237,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_7=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_8); + otherlv_7=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_3); - newLeafNode(otherlv_7, grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); + newLeafNode(otherlv_7, grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); - // InternalSolverLanguageParser.g:3839:5: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3840:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4403:5: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:4404:6: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3840:6: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3841:7: ruleQualifiedName + // InternalSolverLanguageParser.g:4404:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4405:7: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getBoundedScopeRule()); } - newCompositeNode(grammarAccess.getBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_2_0()); + newCompositeNode(grammarAccess.getBoundedScopeAccess().getTypeSymbolCrossReference_1_1_2_0()); - pushFollow(FOLLOW_58); + pushFollow(FOLLOW_65); ruleQualifiedName(); state._fsp--; @@ -9753,34 +11269,34 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:3855:5: (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? - int alt46=2; - int LA46_0 = input.LA(1); + // InternalSolverLanguageParser.g:4419:5: (otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) )? + int alt55=2; + int LA55_0 = input.LA(1); - if ( (LA46_0==GreaterThanSignEqualsSign) ) { - alt46=1; + if ( (LA55_0==GreaterThanSignEqualsSign) ) { + alt55=1; } - switch (alt46) { + switch (alt55) { case 1 : - // InternalSolverLanguageParser.g:3856:6: otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4420:6: otherlv_9= GreaterThanSignEqualsSign ( (lv_lowerBound_10_0= RULE_INT ) ) { - otherlv_9=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_53); + otherlv_9=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_57); - newLeafNode(otherlv_9, grammarAccess.getBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); + newLeafNode(otherlv_9, grammarAccess.getBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_3_0()); - // InternalSolverLanguageParser.g:3860:6: ( (lv_lowerBound_10_0= RULE_INT ) ) - // InternalSolverLanguageParser.g:3861:7: (lv_lowerBound_10_0= RULE_INT ) + // InternalSolverLanguageParser.g:4424:6: ( (lv_lowerBound_10_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4425:7: (lv_lowerBound_10_0= RULE_INT ) { - // InternalSolverLanguageParser.g:3861:7: (lv_lowerBound_10_0= RULE_INT ) - // InternalSolverLanguageParser.g:3862:8: lv_lowerBound_10_0= RULE_INT + // InternalSolverLanguageParser.g:4425:7: (lv_lowerBound_10_0= RULE_INT ) + // InternalSolverLanguageParser.g:4426:8: lv_lowerBound_10_0= RULE_INT { - lv_lowerBound_10_0=(Token)match(input,RULE_INT,FOLLOW_2); + lv_lowerBound_10_0=(Token)match(input,RULE_INT,FOLLOW_4); - newLeafNode(lv_lowerBound_10_0, grammarAccess.getBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); + newLeafNode(lv_lowerBound_10_0, grammarAccess.getBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_3_1_0()); if (current==null) { - current = createModelElement(grammarAccess.getBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getBoundedScopeRule()); } setWithLastConsumed( current, @@ -9809,6 +11325,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_11=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_11, grammarAccess.getBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); + } @@ -9828,28 +11348,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleBoundedScopeDefinition" + // $ANTLR end "ruleBoundedScope" - // $ANTLR start "entryRuleLowerBoundedScopeDefinition" - // InternalSolverLanguageParser.g:3885:1: entryRuleLowerBoundedScopeDefinition returns [EObject current=null] : iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF ; - public final EObject entryRuleLowerBoundedScopeDefinition() throws RecognitionException { + // $ANTLR start "entryRuleLowerBoundedScope" + // InternalSolverLanguageParser.g:4453:1: entryRuleLowerBoundedScope returns [EObject current=null] : iv_ruleLowerBoundedScope= ruleLowerBoundedScope EOF ; + public final EObject entryRuleLowerBoundedScope() throws RecognitionException { EObject current = null; - EObject iv_ruleLowerBoundedScopeDefinition = null; + EObject iv_ruleLowerBoundedScope = null; try { - // InternalSolverLanguageParser.g:3885:68: (iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF ) - // InternalSolverLanguageParser.g:3886:2: iv_ruleLowerBoundedScopeDefinition= ruleLowerBoundedScopeDefinition EOF + // InternalSolverLanguageParser.g:4453:58: (iv_ruleLowerBoundedScope= ruleLowerBoundedScope EOF ) + // InternalSolverLanguageParser.g:4454:2: iv_ruleLowerBoundedScope= ruleLowerBoundedScope EOF { - newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionRule()); + newCompositeNode(grammarAccess.getLowerBoundedScopeRule()); pushFollow(FOLLOW_1); - iv_ruleLowerBoundedScopeDefinition=ruleLowerBoundedScopeDefinition(); + iv_ruleLowerBoundedScope=ruleLowerBoundedScope(); state._fsp--; - current =iv_ruleLowerBoundedScopeDefinition; + current =iv_ruleLowerBoundedScope; match(input,EOF,FOLLOW_2); } @@ -9864,12 +11384,12 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleLowerBoundedScopeDefinition" + // $ANTLR end "entryRuleLowerBoundedScope" - // $ANTLR start "ruleLowerBoundedScopeDefinition" - // InternalSolverLanguageParser.g:3892:1: ruleLowerBoundedScopeDefinition returns [EObject current=null] : (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) ; - public final EObject ruleLowerBoundedScopeDefinition() throws RecognitionException { + // $ANTLR start "ruleLowerBoundedScope" + // InternalSolverLanguageParser.g:4460:1: ruleLowerBoundedScope returns [EObject current=null] : (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) this_FULL_STOP_7= RULE_FULL_STOP ) ; + public final EObject ruleLowerBoundedScope() throws RecognitionException { EObject current = null; Token otherlv_0=null; @@ -9877,57 +11397,58 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { Token otherlv_2=null; Token otherlv_5=null; Token lv_lowerBound_6_0=null; + Token this_FULL_STOP_7=null; enterRule(); try { - // InternalSolverLanguageParser.g:3898:2: ( (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) ) - // InternalSolverLanguageParser.g:3899:2: (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) + // InternalSolverLanguageParser.g:4466:2: ( (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) this_FULL_STOP_7= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4467:2: (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) this_FULL_STOP_7= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:3899:2: (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) ) - // InternalSolverLanguageParser.g:3900:3: otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) + // InternalSolverLanguageParser.g:4467:2: (otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) this_FULL_STOP_7= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4468:3: otherlv_0= Scope ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) this_FULL_STOP_7= RULE_FULL_STOP { - otherlv_0=(Token)match(input,Scope,FOLLOW_55); + otherlv_0=(Token)match(input,Scope,FOLLOW_62); - newLeafNode(otherlv_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getScopeKeyword_0()); + newLeafNode(otherlv_0, grammarAccess.getLowerBoundedScopeAccess().getScopeKeyword_0()); - // InternalSolverLanguageParser.g:3904:3: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) - int alt48=2; - int LA48_0 = input.LA(1); + // InternalSolverLanguageParser.g:4472:3: ( ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) | ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) ) + int alt57=2; + int LA57_0 = input.LA(1); - if ( (LA48_0==RULE_INT) ) { - alt48=1; + if ( (LA57_0==RULE_INT) ) { + alt57=1; } - else if ( (LA48_0==RULE_QUOTED_ID||LA48_0==RULE_ID) ) { - alt48=2; + else if ( (LA57_0==Object||LA57_0==RULE_QUOTED_ID||LA57_0==RULE_ID) ) { + alt57=2; } else { NoViableAltException nvae = - new NoViableAltException("", 48, 0, input); + new NoViableAltException("", 57, 0, input); throw nvae; } - switch (alt48) { + switch (alt57) { case 1 : - // InternalSolverLanguageParser.g:3905:4: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:4473:4: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) { - // InternalSolverLanguageParser.g:3905:4: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) - // InternalSolverLanguageParser.g:3906:5: ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:4473:4: ( ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) ) + // InternalSolverLanguageParser.g:4474:5: ( (lv_lowerBound_1_0= RULE_INT ) ) otherlv_2= LessThanSignEqualsSign ( ( ruleQualifiedName ) ) { - // InternalSolverLanguageParser.g:3906:5: ( (lv_lowerBound_1_0= RULE_INT ) ) - // InternalSolverLanguageParser.g:3907:6: (lv_lowerBound_1_0= RULE_INT ) + // InternalSolverLanguageParser.g:4474:5: ( (lv_lowerBound_1_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4475:6: (lv_lowerBound_1_0= RULE_INT ) { - // InternalSolverLanguageParser.g:3907:6: (lv_lowerBound_1_0= RULE_INT ) - // InternalSolverLanguageParser.g:3908:7: lv_lowerBound_1_0= RULE_INT + // InternalSolverLanguageParser.g:4475:6: (lv_lowerBound_1_0= RULE_INT ) + // InternalSolverLanguageParser.g:4476:7: lv_lowerBound_1_0= RULE_INT { - lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_56); + lv_lowerBound_1_0=(Token)match(input,RULE_INT,FOLLOW_63); - newLeafNode(lv_lowerBound_1_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); + newLeafNode(lv_lowerBound_1_0, grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_0_0_0()); if (current==null) { - current = createModelElement(grammarAccess.getLowerBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getLowerBoundedScopeRule()); } setWithLastConsumed( current, @@ -9941,25 +11462,25 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_2=(Token)match(input,LessThanSignEqualsSign,FOLLOW_8); + otherlv_2=(Token)match(input,LessThanSignEqualsSign,FOLLOW_3); - newLeafNode(otherlv_2, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLessThanSignEqualsSignKeyword_1_0_1()); + newLeafNode(otherlv_2, grammarAccess.getLowerBoundedScopeAccess().getLessThanSignEqualsSignKeyword_1_0_1()); - // InternalSolverLanguageParser.g:3928:5: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3929:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4496:5: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:4497:6: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3929:6: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3930:7: ruleQualifiedName + // InternalSolverLanguageParser.g:4497:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4498:7: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getLowerBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getLowerBoundedScopeRule()); } - newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_0_2_0()); + newCompositeNode(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_0_2_0()); - pushFollow(FOLLOW_2); + pushFollow(FOLLOW_4); ruleQualifiedName(); state._fsp--; @@ -9980,26 +11501,26 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:3946:4: ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) + // InternalSolverLanguageParser.g:4514:4: ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) { - // InternalSolverLanguageParser.g:3946:4: ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) - // InternalSolverLanguageParser.g:3947:5: ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4514:4: ( ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) ) + // InternalSolverLanguageParser.g:4515:5: ( ( ruleQualifiedName ) ) otherlv_5= GreaterThanSignEqualsSign ( (lv_lowerBound_6_0= RULE_INT ) ) { - // InternalSolverLanguageParser.g:3947:5: ( ( ruleQualifiedName ) ) - // InternalSolverLanguageParser.g:3948:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4515:5: ( ( ruleQualifiedName ) ) + // InternalSolverLanguageParser.g:4516:6: ( ruleQualifiedName ) { - // InternalSolverLanguageParser.g:3948:6: ( ruleQualifiedName ) - // InternalSolverLanguageParser.g:3949:7: ruleQualifiedName + // InternalSolverLanguageParser.g:4516:6: ( ruleQualifiedName ) + // InternalSolverLanguageParser.g:4517:7: ruleQualifiedName { if (current==null) { - current = createModelElement(grammarAccess.getLowerBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getLowerBoundedScopeRule()); } - newCompositeNode(grammarAccess.getLowerBoundedScopeDefinitionAccess().getTypeNamedElementCrossReference_1_1_0_0()); + newCompositeNode(grammarAccess.getLowerBoundedScopeAccess().getTypeSymbolCrossReference_1_1_0_0()); - pushFollow(FOLLOW_57); + pushFollow(FOLLOW_64); ruleQualifiedName(); state._fsp--; @@ -10013,23 +11534,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - otherlv_5=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_53); + otherlv_5=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_57); - newLeafNode(otherlv_5, grammarAccess.getLowerBoundedScopeDefinitionAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); + newLeafNode(otherlv_5, grammarAccess.getLowerBoundedScopeAccess().getGreaterThanSignEqualsSignKeyword_1_1_1()); - // InternalSolverLanguageParser.g:3967:5: ( (lv_lowerBound_6_0= RULE_INT ) ) - // InternalSolverLanguageParser.g:3968:6: (lv_lowerBound_6_0= RULE_INT ) + // InternalSolverLanguageParser.g:4535:5: ( (lv_lowerBound_6_0= RULE_INT ) ) + // InternalSolverLanguageParser.g:4536:6: (lv_lowerBound_6_0= RULE_INT ) { - // InternalSolverLanguageParser.g:3968:6: (lv_lowerBound_6_0= RULE_INT ) - // InternalSolverLanguageParser.g:3969:7: lv_lowerBound_6_0= RULE_INT + // InternalSolverLanguageParser.g:4536:6: (lv_lowerBound_6_0= RULE_INT ) + // InternalSolverLanguageParser.g:4537:7: lv_lowerBound_6_0= RULE_INT { - lv_lowerBound_6_0=(Token)match(input,RULE_INT,FOLLOW_2); + lv_lowerBound_6_0=(Token)match(input,RULE_INT,FOLLOW_4); - newLeafNode(lv_lowerBound_6_0, grammarAccess.getLowerBoundedScopeDefinitionAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); + newLeafNode(lv_lowerBound_6_0, grammarAccess.getLowerBoundedScopeAccess().getLowerBoundINTTerminalRuleCall_1_1_2_0()); if (current==null) { - current = createModelElement(grammarAccess.getLowerBoundedScopeDefinitionRule()); + current = createModelElement(grammarAccess.getLowerBoundedScopeRule()); } setWithLastConsumed( current, @@ -10052,6 +11573,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_7=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_7, grammarAccess.getLowerBoundedScopeAccess().getFULL_STOPTerminalRuleCall_2()); + } @@ -10071,28 +11596,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleLowerBoundedScopeDefinition" + // $ANTLR end "ruleLowerBoundedScope" - // $ANTLR start "entryRuleObjectiveDefinition" - // InternalSolverLanguageParser.g:3991:1: entryRuleObjectiveDefinition returns [EObject current=null] : iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF ; - public final EObject entryRuleObjectiveDefinition() throws RecognitionException { + // $ANTLR start "entryRuleObjectiveDeclaration" + // InternalSolverLanguageParser.g:4563:1: entryRuleObjectiveDeclaration returns [EObject current=null] : iv_ruleObjectiveDeclaration= ruleObjectiveDeclaration EOF ; + public final EObject entryRuleObjectiveDeclaration() throws RecognitionException { EObject current = null; - EObject iv_ruleObjectiveDefinition = null; + EObject iv_ruleObjectiveDeclaration = null; try { - // InternalSolverLanguageParser.g:3991:60: (iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF ) - // InternalSolverLanguageParser.g:3992:2: iv_ruleObjectiveDefinition= ruleObjectiveDefinition EOF + // InternalSolverLanguageParser.g:4563:61: (iv_ruleObjectiveDeclaration= ruleObjectiveDeclaration EOF ) + // InternalSolverLanguageParser.g:4564:2: iv_ruleObjectiveDeclaration= ruleObjectiveDeclaration EOF { - newCompositeNode(grammarAccess.getObjectiveDefinitionRule()); + newCompositeNode(grammarAccess.getObjectiveDeclarationRule()); pushFollow(FOLLOW_1); - iv_ruleObjectiveDefinition=ruleObjectiveDefinition(); + iv_ruleObjectiveDeclaration=ruleObjectiveDeclaration(); state._fsp--; - current =iv_ruleObjectiveDefinition; + current =iv_ruleObjectiveDeclaration; match(input,EOF,FOLLOW_2); } @@ -10107,14 +11632,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "entryRuleObjectiveDefinition" + // $ANTLR end "entryRuleObjectiveDeclaration" - // $ANTLR start "ruleObjectiveDefinition" - // InternalSolverLanguageParser.g:3998:1: ruleObjectiveDefinition returns [EObject current=null] : ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) ; - public final EObject ruleObjectiveDefinition() throws RecognitionException { + // $ANTLR start "ruleObjectiveDeclaration" + // InternalSolverLanguageParser.g:4570:1: ruleObjectiveDeclaration returns [EObject current=null] : ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) this_FULL_STOP_2= RULE_FULL_STOP ) ; + public final EObject ruleObjectiveDeclaration() throws RecognitionException { EObject current = null; + Token this_FULL_STOP_2=null; Enumerator lv_kind_0_0 = null; EObject lv_objective_1_0 = null; @@ -10124,29 +11650,29 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:4004:2: ( ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) ) - // InternalSolverLanguageParser.g:4005:2: ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) + // InternalSolverLanguageParser.g:4576:2: ( ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) this_FULL_STOP_2= RULE_FULL_STOP ) ) + // InternalSolverLanguageParser.g:4577:2: ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) this_FULL_STOP_2= RULE_FULL_STOP ) { - // InternalSolverLanguageParser.g:4005:2: ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) ) - // InternalSolverLanguageParser.g:4006:3: ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:4577:2: ( ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) this_FULL_STOP_2= RULE_FULL_STOP ) + // InternalSolverLanguageParser.g:4578:3: ( (lv_kind_0_0= ruleObjectiveKind ) ) ( (lv_objective_1_0= ruleExpression ) ) this_FULL_STOP_2= RULE_FULL_STOP { - // InternalSolverLanguageParser.g:4006:3: ( (lv_kind_0_0= ruleObjectiveKind ) ) - // InternalSolverLanguageParser.g:4007:4: (lv_kind_0_0= ruleObjectiveKind ) + // InternalSolverLanguageParser.g:4578:3: ( (lv_kind_0_0= ruleObjectiveKind ) ) + // InternalSolverLanguageParser.g:4579:4: (lv_kind_0_0= ruleObjectiveKind ) { - // InternalSolverLanguageParser.g:4007:4: (lv_kind_0_0= ruleObjectiveKind ) - // InternalSolverLanguageParser.g:4008:5: lv_kind_0_0= ruleObjectiveKind + // InternalSolverLanguageParser.g:4579:4: (lv_kind_0_0= ruleObjectiveKind ) + // InternalSolverLanguageParser.g:4580:5: lv_kind_0_0= ruleObjectiveKind { - newCompositeNode(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0()); + newCompositeNode(grammarAccess.getObjectiveDeclarationAccess().getKindObjectiveKindEnumRuleCall_0_0()); - pushFollow(FOLLOW_6); + pushFollow(FOLLOW_10); lv_kind_0_0=ruleObjectiveKind(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getObjectiveDefinitionRule()); + current = createModelElementForParent(grammarAccess.getObjectiveDeclarationRule()); } set( current, @@ -10161,23 +11687,23 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } - // InternalSolverLanguageParser.g:4025:3: ( (lv_objective_1_0= ruleExpression ) ) - // InternalSolverLanguageParser.g:4026:4: (lv_objective_1_0= ruleExpression ) + // InternalSolverLanguageParser.g:4597:3: ( (lv_objective_1_0= ruleExpression ) ) + // InternalSolverLanguageParser.g:4598:4: (lv_objective_1_0= ruleExpression ) { - // InternalSolverLanguageParser.g:4026:4: (lv_objective_1_0= ruleExpression ) - // InternalSolverLanguageParser.g:4027:5: lv_objective_1_0= ruleExpression + // InternalSolverLanguageParser.g:4598:4: (lv_objective_1_0= ruleExpression ) + // InternalSolverLanguageParser.g:4599:5: lv_objective_1_0= ruleExpression { - newCompositeNode(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0()); + newCompositeNode(grammarAccess.getObjectiveDeclarationAccess().getObjectiveExpressionParserRuleCall_1_0()); - pushFollow(FOLLOW_2); + pushFollow(FOLLOW_4); lv_objective_1_0=ruleExpression(); state._fsp--; if (current==null) { - current = createModelElementForParent(grammarAccess.getObjectiveDefinitionRule()); + current = createModelElementForParent(grammarAccess.getObjectiveDeclarationRule()); } set( current, @@ -10192,6 +11718,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } + this_FULL_STOP_2=(Token)match(input,RULE_FULL_STOP,FOLLOW_2); + + newLeafNode(this_FULL_STOP_2, grammarAccess.getObjectiveDeclarationAccess().getFULL_STOPTerminalRuleCall_2()); + } @@ -10211,11 +11741,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleObjectiveDefinition" + // $ANTLR end "ruleObjectiveDeclaration" // $ANTLR start "entryRuleUpperMultiplicty" - // InternalSolverLanguageParser.g:4048:1: entryRuleUpperMultiplicty returns [String current=null] : iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF ; + // InternalSolverLanguageParser.g:4624:1: entryRuleUpperMultiplicty returns [String current=null] : iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF ; public final String entryRuleUpperMultiplicty() throws RecognitionException { String current = null; @@ -10223,8 +11753,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { try { - // InternalSolverLanguageParser.g:4048:56: (iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF ) - // InternalSolverLanguageParser.g:4049:2: iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF + // InternalSolverLanguageParser.g:4624:56: (iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF ) + // InternalSolverLanguageParser.g:4625:2: iv_ruleUpperMultiplicty= ruleUpperMultiplicty EOF { newCompositeNode(grammarAccess.getUpperMultiplictyRule()); pushFollow(FOLLOW_1); @@ -10251,7 +11781,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleUpperMultiplicty" - // InternalSolverLanguageParser.g:4055:1: ruleUpperMultiplicty returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= Asterisk ) ; + // InternalSolverLanguageParser.g:4631:1: ruleUpperMultiplicty returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT | kw= Asterisk ) ; public final AntlrDatatypeRuleToken ruleUpperMultiplicty() throws RecognitionException { AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); @@ -10262,28 +11792,28 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:4061:2: ( (this_INT_0= RULE_INT | kw= Asterisk ) ) - // InternalSolverLanguageParser.g:4062:2: (this_INT_0= RULE_INT | kw= Asterisk ) + // InternalSolverLanguageParser.g:4637:2: ( (this_INT_0= RULE_INT | kw= Asterisk ) ) + // InternalSolverLanguageParser.g:4638:2: (this_INT_0= RULE_INT | kw= Asterisk ) { - // InternalSolverLanguageParser.g:4062:2: (this_INT_0= RULE_INT | kw= Asterisk ) - int alt49=2; - int LA49_0 = input.LA(1); + // InternalSolverLanguageParser.g:4638:2: (this_INT_0= RULE_INT | kw= Asterisk ) + int alt58=2; + int LA58_0 = input.LA(1); - if ( (LA49_0==RULE_INT) ) { - alt49=1; + if ( (LA58_0==RULE_INT) ) { + alt58=1; } - else if ( (LA49_0==Asterisk) ) { - alt49=2; + else if ( (LA58_0==Asterisk) ) { + alt58=2; } else { NoViableAltException nvae = - new NoViableAltException("", 49, 0, input); + new NoViableAltException("", 58, 0, input); throw nvae; } - switch (alt49) { + switch (alt58) { case 1 : - // InternalSolverLanguageParser.g:4063:3: this_INT_0= RULE_INT + // InternalSolverLanguageParser.g:4639:3: this_INT_0= RULE_INT { this_INT_0=(Token)match(input,RULE_INT,FOLLOW_2); @@ -10296,7 +11826,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:4071:3: kw= Asterisk + // InternalSolverLanguageParser.g:4647:3: kw= Asterisk { kw=(Token)match(input,Asterisk,FOLLOW_2); @@ -10329,7 +11859,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "entryRuleReal" - // InternalSolverLanguageParser.g:4080:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ; + // InternalSolverLanguageParser.g:4656:1: entryRuleReal returns [String current=null] : iv_ruleReal= ruleReal EOF ; public final String entryRuleReal() throws RecognitionException { String current = null; @@ -10340,8 +11870,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); try { - // InternalSolverLanguageParser.g:4082:2: (iv_ruleReal= ruleReal EOF ) - // InternalSolverLanguageParser.g:4083:2: iv_ruleReal= ruleReal EOF + // InternalSolverLanguageParser.g:4658:2: (iv_ruleReal= ruleReal EOF ) + // InternalSolverLanguageParser.g:4659:2: iv_ruleReal= ruleReal EOF { newCompositeNode(grammarAccess.getRealRule()); pushFollow(FOLLOW_1); @@ -10371,7 +11901,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleReal" - // InternalSolverLanguageParser.g:4092:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) ; + // InternalSolverLanguageParser.g:4668:1: ruleReal returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_INT_0= RULE_INT kw= FullStop this_INT_2= RULE_INT ) ; public final AntlrDatatypeRuleToken ruleReal() throws RecognitionException { AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); @@ -10384,48 +11914,171 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); try { - // InternalSolverLanguageParser.g:4099:2: ( (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) ) - // InternalSolverLanguageParser.g:4100:2: (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) + // InternalSolverLanguageParser.g:4675:2: ( (this_INT_0= RULE_INT kw= FullStop this_INT_2= RULE_INT ) ) + // InternalSolverLanguageParser.g:4676:2: (this_INT_0= RULE_INT kw= FullStop this_INT_2= RULE_INT ) { - // InternalSolverLanguageParser.g:4100:2: (this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? ) - // InternalSolverLanguageParser.g:4101:3: this_INT_0= RULE_INT (kw= FullStop this_INT_2= RULE_INT )? + // InternalSolverLanguageParser.g:4676:2: (this_INT_0= RULE_INT kw= FullStop this_INT_2= RULE_INT ) + // InternalSolverLanguageParser.g:4677:3: this_INT_0= RULE_INT kw= FullStop this_INT_2= RULE_INT { - this_INT_0=(Token)match(input,RULE_INT,FOLLOW_59); + this_INT_0=(Token)match(input,RULE_INT,FOLLOW_66); current.merge(this_INT_0); newLeafNode(this_INT_0, grammarAccess.getRealAccess().getINTTerminalRuleCall_0()); - // InternalSolverLanguageParser.g:4108:3: (kw= FullStop this_INT_2= RULE_INT )? - int alt50=2; - int LA50_0 = input.LA(1); + kw=(Token)match(input,FullStop,FOLLOW_57); + + current.merge(kw); + newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1()); + + this_INT_2=(Token)match(input,RULE_INT,FOLLOW_2); + + current.merge(this_INT_2); + + + newLeafNode(this_INT_2, grammarAccess.getRealAccess().getINTTerminalRuleCall_2()); + + + } + + + } + + + leaveRule(); + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + + myHiddenTokenState.restore(); + + } + return current; + } + // $ANTLR end "ruleReal" + + + // $ANTLR start "entryRuleQualifiedNameSegment" + // InternalSolverLanguageParser.g:4703:1: entryRuleQualifiedNameSegment returns [String current=null] : iv_ruleQualifiedNameSegment= ruleQualifiedNameSegment EOF ; + public final String entryRuleQualifiedNameSegment() throws RecognitionException { + String current = null; + + AntlrDatatypeRuleToken iv_ruleQualifiedNameSegment = null; + + + try { + // InternalSolverLanguageParser.g:4703:60: (iv_ruleQualifiedNameSegment= ruleQualifiedNameSegment EOF ) + // InternalSolverLanguageParser.g:4704:2: iv_ruleQualifiedNameSegment= ruleQualifiedNameSegment EOF + { + newCompositeNode(grammarAccess.getQualifiedNameSegmentRule()); + pushFollow(FOLLOW_1); + iv_ruleQualifiedNameSegment=ruleQualifiedNameSegment(); + + state._fsp--; + + current =iv_ruleQualifiedNameSegment.getText(); + match(input,EOF,FOLLOW_2); + + } + + } + + catch (RecognitionException re) { + recover(input,re); + appendSkippedTokens(); + } + finally { + } + return current; + } + // $ANTLR end "entryRuleQualifiedNameSegment" + + + // $ANTLR start "ruleQualifiedNameSegment" + // InternalSolverLanguageParser.g:4710:1: ruleQualifiedNameSegment returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_ID_0= RULE_ID | this_QUOTED_ID_1= RULE_QUOTED_ID | kw= Object ) ; + public final AntlrDatatypeRuleToken ruleQualifiedNameSegment() throws RecognitionException { + AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); + + Token this_ID_0=null; + Token this_QUOTED_ID_1=null; + Token kw=null; + + + enterRule(); + + try { + // InternalSolverLanguageParser.g:4716:2: ( (this_ID_0= RULE_ID | this_QUOTED_ID_1= RULE_QUOTED_ID | kw= Object ) ) + // InternalSolverLanguageParser.g:4717:2: (this_ID_0= RULE_ID | this_QUOTED_ID_1= RULE_QUOTED_ID | kw= Object ) + { + // InternalSolverLanguageParser.g:4717:2: (this_ID_0= RULE_ID | this_QUOTED_ID_1= RULE_QUOTED_ID | kw= Object ) + int alt59=3; + switch ( input.LA(1) ) { + case RULE_ID: + { + alt59=1; + } + break; + case RULE_QUOTED_ID: + { + alt59=2; + } + break; + case Object: + { + alt59=3; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 59, 0, input); - if ( (LA50_0==FullStop) ) { - alt50=1; + throw nvae; } - switch (alt50) { + + switch (alt59) { case 1 : - // InternalSolverLanguageParser.g:4109:4: kw= FullStop this_INT_2= RULE_INT + // InternalSolverLanguageParser.g:4718:3: this_ID_0= RULE_ID { - kw=(Token)match(input,FullStop,FOLLOW_53); + this_ID_0=(Token)match(input,RULE_ID,FOLLOW_2); - current.merge(kw); - newLeafNode(kw, grammarAccess.getRealAccess().getFullStopKeyword_1_0()); - - this_INT_2=(Token)match(input,RULE_INT,FOLLOW_2); + current.merge(this_ID_0); + - current.merge(this_INT_2); - + newLeafNode(this_ID_0, grammarAccess.getQualifiedNameSegmentAccess().getIDTerminalRuleCall_0()); + - newLeafNode(this_INT_2, grammarAccess.getRealAccess().getINTTerminalRuleCall_1_1()); - + } + break; + case 2 : + // InternalSolverLanguageParser.g:4726:3: this_QUOTED_ID_1= RULE_QUOTED_ID + { + this_QUOTED_ID_1=(Token)match(input,RULE_QUOTED_ID,FOLLOW_2); + + current.merge(this_QUOTED_ID_1); + + + newLeafNode(this_QUOTED_ID_1, grammarAccess.getQualifiedNameSegmentAccess().getQUOTED_IDTerminalRuleCall_1()); + } break; + case 3 : + // InternalSolverLanguageParser.g:4734:3: kw= Object + { + kw=(Token)match(input,Object,FOLLOW_2); - } + current.merge(kw); + newLeafNode(kw, grammarAccess.getQualifiedNameSegmentAccess().getObjectKeyword_2()); + + } + break; } @@ -10442,17 +12095,14 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { appendSkippedTokens(); } finally { - - myHiddenTokenState.restore(); - } return current; } - // $ANTLR end "ruleReal" + // $ANTLR end "ruleQualifiedNameSegment" // $ANTLR start "entryRuleQualifiedName" - // InternalSolverLanguageParser.g:4129:1: entryRuleQualifiedName returns [String current=null] : iv_ruleQualifiedName= ruleQualifiedName EOF ; + // InternalSolverLanguageParser.g:4743:1: entryRuleQualifiedName returns [String current=null] : iv_ruleQualifiedName= ruleQualifiedName EOF ; public final String entryRuleQualifiedName() throws RecognitionException { String current = null; @@ -10463,8 +12113,8 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); try { - // InternalSolverLanguageParser.g:4131:2: (iv_ruleQualifiedName= ruleQualifiedName EOF ) - // InternalSolverLanguageParser.g:4132:2: iv_ruleQualifiedName= ruleQualifiedName EOF + // InternalSolverLanguageParser.g:4745:2: (iv_ruleQualifiedName= ruleQualifiedName EOF ) + // InternalSolverLanguageParser.g:4746:2: iv_ruleQualifiedName= ruleQualifiedName EOF { newCompositeNode(grammarAccess.getQualifiedNameRule()); pushFollow(FOLLOW_1); @@ -10494,108 +12144,84 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleQualifiedName" - // InternalSolverLanguageParser.g:4141:1: ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) ; + // InternalSolverLanguageParser.g:4755:1: ruleQualifiedName returns [AntlrDatatypeRuleToken current=new AntlrDatatypeRuleToken()] : (this_QualifiedNameSegment_0= ruleQualifiedNameSegment (kw= ColonColon this_QualifiedNameSegment_2= ruleQualifiedNameSegment )* ) ; public final AntlrDatatypeRuleToken ruleQualifiedName() throws RecognitionException { AntlrDatatypeRuleToken current = new AntlrDatatypeRuleToken(); - Token this_ID_0=null; Token kw=null; - Token this_ID_2=null; - Token this_QUOTED_ID_3=null; + AntlrDatatypeRuleToken this_QualifiedNameSegment_0 = null; + + AntlrDatatypeRuleToken this_QualifiedNameSegment_2 = null; + enterRule(); HiddenTokens myHiddenTokenState = ((XtextTokenStream)input).setHiddenTokens(); try { - // InternalSolverLanguageParser.g:4148:2: ( ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) ) - // InternalSolverLanguageParser.g:4149:2: ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) + // InternalSolverLanguageParser.g:4762:2: ( (this_QualifiedNameSegment_0= ruleQualifiedNameSegment (kw= ColonColon this_QualifiedNameSegment_2= ruleQualifiedNameSegment )* ) ) + // InternalSolverLanguageParser.g:4763:2: (this_QualifiedNameSegment_0= ruleQualifiedNameSegment (kw= ColonColon this_QualifiedNameSegment_2= ruleQualifiedNameSegment )* ) + { + // InternalSolverLanguageParser.g:4763:2: (this_QualifiedNameSegment_0= ruleQualifiedNameSegment (kw= ColonColon this_QualifiedNameSegment_2= ruleQualifiedNameSegment )* ) + // InternalSolverLanguageParser.g:4764:3: this_QualifiedNameSegment_0= ruleQualifiedNameSegment (kw= ColonColon this_QualifiedNameSegment_2= ruleQualifiedNameSegment )* { - // InternalSolverLanguageParser.g:4149:2: ( (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) | this_QUOTED_ID_3= RULE_QUOTED_ID ) - int alt52=2; - int LA52_0 = input.LA(1); - - if ( (LA52_0==RULE_ID) ) { - alt52=1; - } - else if ( (LA52_0==RULE_QUOTED_ID) ) { - alt52=2; - } - else { - NoViableAltException nvae = - new NoViableAltException("", 52, 0, input); - - throw nvae; - } - switch (alt52) { - case 1 : - // InternalSolverLanguageParser.g:4150:3: (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) - { - // InternalSolverLanguageParser.g:4150:3: (this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* ) - // InternalSolverLanguageParser.g:4151:4: this_ID_0= RULE_ID (kw= FullStop this_ID_2= RULE_ID )* - { - this_ID_0=(Token)match(input,RULE_ID,FOLLOW_59); - current.merge(this_ID_0); - + newCompositeNode(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_0()); + + pushFollow(FOLLOW_67); + this_QualifiedNameSegment_0=ruleQualifiedNameSegment(); - newLeafNode(this_ID_0, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_0()); - - // InternalSolverLanguageParser.g:4158:4: (kw= FullStop this_ID_2= RULE_ID )* - loop51: - do { - int alt51=2; - int LA51_0 = input.LA(1); + state._fsp--; - if ( (LA51_0==FullStop) ) { - alt51=1; - } + current.merge(this_QualifiedNameSegment_0); + - switch (alt51) { - case 1 : - // InternalSolverLanguageParser.g:4159:5: kw= FullStop this_ID_2= RULE_ID - { - kw=(Token)match(input,FullStop,FOLLOW_20); + afterParserOrEnumRuleCall(); + + // InternalSolverLanguageParser.g:4774:3: (kw= ColonColon this_QualifiedNameSegment_2= ruleQualifiedNameSegment )* + loop60: + do { + int alt60=2; + int LA60_0 = input.LA(1); - current.merge(kw); - newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getFullStopKeyword_0_1_0()); - - this_ID_2=(Token)match(input,RULE_ID,FOLLOW_59); + if ( (LA60_0==ColonColon) ) { + alt60=1; + } - current.merge(this_ID_2); - - newLeafNode(this_ID_2, grammarAccess.getQualifiedNameAccess().getIDTerminalRuleCall_0_1_1()); - + switch (alt60) { + case 1 : + // InternalSolverLanguageParser.g:4775:4: kw= ColonColon this_QualifiedNameSegment_2= ruleQualifiedNameSegment + { + kw=(Token)match(input,ColonColon,FOLLOW_3); - } - break; + current.merge(kw); + newLeafNode(kw, grammarAccess.getQualifiedNameAccess().getColonColonKeyword_1_0()); + - default : - break loop51; - } - } while (true); + newCompositeNode(grammarAccess.getQualifiedNameAccess().getQualifiedNameSegmentParserRuleCall_1_1()); + + pushFollow(FOLLOW_67); + this_QualifiedNameSegment_2=ruleQualifiedNameSegment(); + state._fsp--; - } + current.merge(this_QualifiedNameSegment_2); + - } - break; - case 2 : - // InternalSolverLanguageParser.g:4174:3: this_QUOTED_ID_3= RULE_QUOTED_ID - { - this_QUOTED_ID_3=(Token)match(input,RULE_QUOTED_ID,FOLLOW_2); + afterParserOrEnumRuleCall(); + - current.merge(this_QUOTED_ID_3); - + } + break; - newLeafNode(this_QUOTED_ID_3, grammarAccess.getQualifiedNameAccess().getQUOTED_IDTerminalRuleCall_1()); - + default : + break loop60; + } + } while (true); - } - break; } @@ -10621,28 +12247,122 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleQualifiedName" - // $ANTLR start "ruleImplicationOperator" - // InternalSolverLanguageParser.g:4188:1: ruleImplicationOperator returns [Enumerator current=null] : (enumLiteral_0= EqualsSignGreaterThanSign ) ; - public final Enumerator ruleImplicationOperator() throws RecognitionException { + // $ANTLR start "ruleAttributeKind" + // InternalSolverLanguageParser.g:4798:1: ruleAttributeKind returns [Enumerator current=null] : ( (enumLiteral_0= Functional ) | (enumLiteral_1= Error ) | (enumLiteral_2= Root ) | (enumLiteral_3= Containment ) ) ; + public final Enumerator ruleAttributeKind() throws RecognitionException { Enumerator current = null; Token enumLiteral_0=null; + Token enumLiteral_1=null; + Token enumLiteral_2=null; + Token enumLiteral_3=null; enterRule(); try { - // InternalSolverLanguageParser.g:4194:2: ( (enumLiteral_0= EqualsSignGreaterThanSign ) ) - // InternalSolverLanguageParser.g:4195:2: (enumLiteral_0= EqualsSignGreaterThanSign ) - { - // InternalSolverLanguageParser.g:4195:2: (enumLiteral_0= EqualsSignGreaterThanSign ) - // InternalSolverLanguageParser.g:4196:3: enumLiteral_0= EqualsSignGreaterThanSign + // InternalSolverLanguageParser.g:4804:2: ( ( (enumLiteral_0= Functional ) | (enumLiteral_1= Error ) | (enumLiteral_2= Root ) | (enumLiteral_3= Containment ) ) ) + // InternalSolverLanguageParser.g:4805:2: ( (enumLiteral_0= Functional ) | (enumLiteral_1= Error ) | (enumLiteral_2= Root ) | (enumLiteral_3= Containment ) ) { - enumLiteral_0=(Token)match(input,EqualsSignGreaterThanSign,FOLLOW_2); + // InternalSolverLanguageParser.g:4805:2: ( (enumLiteral_0= Functional ) | (enumLiteral_1= Error ) | (enumLiteral_2= Root ) | (enumLiteral_3= Containment ) ) + int alt61=4; + switch ( input.LA(1) ) { + case Functional: + { + alt61=1; + } + break; + case Error: + { + alt61=2; + } + break; + case Root: + { + alt61=3; + } + break; + case Containment: + { + alt61=4; + } + break; + default: + NoViableAltException nvae = + new NoViableAltException("", 61, 0, input); - current = grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getImplicationOperatorAccess().getIMPLIESEnumLiteralDeclaration()); - + throw nvae; + } + + switch (alt61) { + case 1 : + // InternalSolverLanguageParser.g:4806:3: (enumLiteral_0= Functional ) + { + // InternalSolverLanguageParser.g:4806:3: (enumLiteral_0= Functional ) + // InternalSolverLanguageParser.g:4807:4: enumLiteral_0= Functional + { + enumLiteral_0=(Token)match(input,Functional,FOLLOW_2); + + current = grammarAccess.getAttributeKindAccess().getFUNCTIONALEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getAttributeKindAccess().getFUNCTIONALEnumLiteralDeclaration_0()); + + + } + + + } + break; + case 2 : + // InternalSolverLanguageParser.g:4814:3: (enumLiteral_1= Error ) + { + // InternalSolverLanguageParser.g:4814:3: (enumLiteral_1= Error ) + // InternalSolverLanguageParser.g:4815:4: enumLiteral_1= Error + { + enumLiteral_1=(Token)match(input,Error,FOLLOW_2); + + current = grammarAccess.getAttributeKindAccess().getERROREnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getAttributeKindAccess().getERROREnumLiteralDeclaration_1()); + + + } + + + } + break; + case 3 : + // InternalSolverLanguageParser.g:4822:3: (enumLiteral_2= Root ) + { + // InternalSolverLanguageParser.g:4822:3: (enumLiteral_2= Root ) + // InternalSolverLanguageParser.g:4823:4: enumLiteral_2= Root + { + enumLiteral_2=(Token)match(input,Root,FOLLOW_2); + + current = grammarAccess.getAttributeKindAccess().getROOTEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getAttributeKindAccess().getROOTEnumLiteralDeclaration_2()); + + + } + + + } + break; + case 4 : + // InternalSolverLanguageParser.g:4830:3: (enumLiteral_3= Containment ) + { + // InternalSolverLanguageParser.g:4830:3: (enumLiteral_3= Containment ) + // InternalSolverLanguageParser.g:4831:4: enumLiteral_3= Containment + { + enumLiteral_3=(Token)match(input,Containment,FOLLOW_2); + + current = grammarAccess.getAttributeKindAccess().getCONTAINMENTEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getAttributeKindAccess().getCONTAINMENTEnumLiteralDeclaration_3()); + + + } + + + } + break; } @@ -10662,11 +12382,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleImplicationOperator" + // $ANTLR end "ruleAttributeKind" // $ANTLR start "ruleComparisonOperator" - // InternalSolverLanguageParser.g:4205:1: ruleComparisonOperator returns [Enumerator current=null] : ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) ; + // InternalSolverLanguageParser.g:4841:1: ruleComparisonOperator returns [Enumerator current=null] : ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) ; public final Enumerator ruleComparisonOperator() throws RecognitionException { Enumerator current = null; @@ -10682,65 +12402,65 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:4211:2: ( ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) ) - // InternalSolverLanguageParser.g:4212:2: ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) + // InternalSolverLanguageParser.g:4847:2: ( ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) ) + // InternalSolverLanguageParser.g:4848:2: ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) { - // InternalSolverLanguageParser.g:4212:2: ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) - int alt53=7; + // InternalSolverLanguageParser.g:4848:2: ( (enumLiteral_0= EqualsSignEqualsSign ) | (enumLiteral_1= ExclamationMarkEqualsSign ) | (enumLiteral_2= LessThanSign ) | (enumLiteral_3= LessThanSignEqualsSign ) | (enumLiteral_4= GreaterThanSign ) | (enumLiteral_5= GreaterThanSignEqualsSign ) | (enumLiteral_6= In ) ) + int alt62=7; switch ( input.LA(1) ) { case EqualsSignEqualsSign: { - alt53=1; + alt62=1; } break; case ExclamationMarkEqualsSign: { - alt53=2; + alt62=2; } break; case LessThanSign: { - alt53=3; + alt62=3; } break; case LessThanSignEqualsSign: { - alt53=4; + alt62=4; } break; case GreaterThanSign: { - alt53=5; + alt62=5; } break; case GreaterThanSignEqualsSign: { - alt53=6; + alt62=6; } break; case In: { - alt53=7; + alt62=7; } break; default: NoViableAltException nvae = - new NoViableAltException("", 53, 0, input); + new NoViableAltException("", 62, 0, input); throw nvae; } - switch (alt53) { + switch (alt62) { case 1 : - // InternalSolverLanguageParser.g:4213:3: (enumLiteral_0= EqualsSignEqualsSign ) + // InternalSolverLanguageParser.g:4849:3: (enumLiteral_0= EqualsSignEqualsSign ) { - // InternalSolverLanguageParser.g:4213:3: (enumLiteral_0= EqualsSignEqualsSign ) - // InternalSolverLanguageParser.g:4214:4: enumLiteral_0= EqualsSignEqualsSign + // InternalSolverLanguageParser.g:4849:3: (enumLiteral_0= EqualsSignEqualsSign ) + // InternalSolverLanguageParser.g:4850:4: enumLiteral_0= EqualsSignEqualsSign { enumLiteral_0=(Token)match(input,EqualsSignEqualsSign,FOLLOW_2); - current = grammarAccess.getComparisonOperatorAccess().getEQEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getComparisonOperatorAccess().getEQEnumLiteralDeclaration_0()); + current = grammarAccess.getComparisonOperatorAccess().getEQUALSEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getComparisonOperatorAccess().getEQUALSEnumLiteralDeclaration_0()); } @@ -10749,15 +12469,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:4221:3: (enumLiteral_1= ExclamationMarkEqualsSign ) + // InternalSolverLanguageParser.g:4857:3: (enumLiteral_1= ExclamationMarkEqualsSign ) { - // InternalSolverLanguageParser.g:4221:3: (enumLiteral_1= ExclamationMarkEqualsSign ) - // InternalSolverLanguageParser.g:4222:4: enumLiteral_1= ExclamationMarkEqualsSign + // InternalSolverLanguageParser.g:4857:3: (enumLiteral_1= ExclamationMarkEqualsSign ) + // InternalSolverLanguageParser.g:4858:4: enumLiteral_1= ExclamationMarkEqualsSign { enumLiteral_1=(Token)match(input,ExclamationMarkEqualsSign,FOLLOW_2); - current = grammarAccess.getComparisonOperatorAccess().getNOT_EQEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getComparisonOperatorAccess().getNOT_EQEnumLiteralDeclaration_1()); + current = grammarAccess.getComparisonOperatorAccess().getNOT_EQUALSEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getComparisonOperatorAccess().getNOT_EQUALSEnumLiteralDeclaration_1()); } @@ -10766,10 +12486,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 3 : - // InternalSolverLanguageParser.g:4229:3: (enumLiteral_2= LessThanSign ) + // InternalSolverLanguageParser.g:4865:3: (enumLiteral_2= LessThanSign ) { - // InternalSolverLanguageParser.g:4229:3: (enumLiteral_2= LessThanSign ) - // InternalSolverLanguageParser.g:4230:4: enumLiteral_2= LessThanSign + // InternalSolverLanguageParser.g:4865:3: (enumLiteral_2= LessThanSign ) + // InternalSolverLanguageParser.g:4866:4: enumLiteral_2= LessThanSign { enumLiteral_2=(Token)match(input,LessThanSign,FOLLOW_2); @@ -10783,15 +12503,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 4 : - // InternalSolverLanguageParser.g:4237:3: (enumLiteral_3= LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:4873:3: (enumLiteral_3= LessThanSignEqualsSign ) { - // InternalSolverLanguageParser.g:4237:3: (enumLiteral_3= LessThanSignEqualsSign ) - // InternalSolverLanguageParser.g:4238:4: enumLiteral_3= LessThanSignEqualsSign + // InternalSolverLanguageParser.g:4873:3: (enumLiteral_3= LessThanSignEqualsSign ) + // InternalSolverLanguageParser.g:4874:4: enumLiteral_3= LessThanSignEqualsSign { enumLiteral_3=(Token)match(input,LessThanSignEqualsSign,FOLLOW_2); - current = grammarAccess.getComparisonOperatorAccess().getLESS_EQEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_3, grammarAccess.getComparisonOperatorAccess().getLESS_EQEnumLiteralDeclaration_3()); + current = grammarAccess.getComparisonOperatorAccess().getLESS_EQUALSEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getComparisonOperatorAccess().getLESS_EQUALSEnumLiteralDeclaration_3()); } @@ -10800,10 +12520,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 5 : - // InternalSolverLanguageParser.g:4245:3: (enumLiteral_4= GreaterThanSign ) + // InternalSolverLanguageParser.g:4881:3: (enumLiteral_4= GreaterThanSign ) { - // InternalSolverLanguageParser.g:4245:3: (enumLiteral_4= GreaterThanSign ) - // InternalSolverLanguageParser.g:4246:4: enumLiteral_4= GreaterThanSign + // InternalSolverLanguageParser.g:4881:3: (enumLiteral_4= GreaterThanSign ) + // InternalSolverLanguageParser.g:4882:4: enumLiteral_4= GreaterThanSign { enumLiteral_4=(Token)match(input,GreaterThanSign,FOLLOW_2); @@ -10817,15 +12537,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 6 : - // InternalSolverLanguageParser.g:4253:3: (enumLiteral_5= GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:4889:3: (enumLiteral_5= GreaterThanSignEqualsSign ) { - // InternalSolverLanguageParser.g:4253:3: (enumLiteral_5= GreaterThanSignEqualsSign ) - // InternalSolverLanguageParser.g:4254:4: enumLiteral_5= GreaterThanSignEqualsSign + // InternalSolverLanguageParser.g:4889:3: (enumLiteral_5= GreaterThanSignEqualsSign ) + // InternalSolverLanguageParser.g:4890:4: enumLiteral_5= GreaterThanSignEqualsSign { enumLiteral_5=(Token)match(input,GreaterThanSignEqualsSign,FOLLOW_2); - current = grammarAccess.getComparisonOperatorAccess().getGREATER_EQEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_5, grammarAccess.getComparisonOperatorAccess().getGREATER_EQEnumLiteralDeclaration_5()); + current = grammarAccess.getComparisonOperatorAccess().getGREATER_EQUALSEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_5, grammarAccess.getComparisonOperatorAccess().getGREATER_EQUALSEnumLiteralDeclaration_5()); } @@ -10834,10 +12554,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 7 : - // InternalSolverLanguageParser.g:4261:3: (enumLiteral_6= In ) + // InternalSolverLanguageParser.g:4897:3: (enumLiteral_6= In ) { - // InternalSolverLanguageParser.g:4261:3: (enumLiteral_6= In ) - // InternalSolverLanguageParser.g:4262:4: enumLiteral_6= In + // InternalSolverLanguageParser.g:4897:3: (enumLiteral_6= In ) + // InternalSolverLanguageParser.g:4898:4: enumLiteral_6= In { enumLiteral_6=(Token)match(input,In,FOLLOW_2); @@ -10873,7 +12593,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleAdditiveBinaryOperator" - // InternalSolverLanguageParser.g:4272:1: ruleAdditiveBinaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) ; + // InternalSolverLanguageParser.g:4908:1: ruleAdditiveBinaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) ; public final Enumerator ruleAdditiveBinaryOperator() throws RecognitionException { Enumerator current = null; @@ -10884,36 +12604,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:4278:2: ( ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) ) - // InternalSolverLanguageParser.g:4279:2: ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) + // InternalSolverLanguageParser.g:4914:2: ( ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) ) + // InternalSolverLanguageParser.g:4915:2: ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) { - // InternalSolverLanguageParser.g:4279:2: ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) - int alt54=2; - int LA54_0 = input.LA(1); + // InternalSolverLanguageParser.g:4915:2: ( (enumLiteral_0= PlusSign ) | (enumLiteral_1= HyphenMinus ) ) + int alt63=2; + int LA63_0 = input.LA(1); - if ( (LA54_0==PlusSign) ) { - alt54=1; + if ( (LA63_0==PlusSign) ) { + alt63=1; } - else if ( (LA54_0==HyphenMinus) ) { - alt54=2; + else if ( (LA63_0==HyphenMinus) ) { + alt63=2; } else { NoViableAltException nvae = - new NoViableAltException("", 54, 0, input); + new NoViableAltException("", 63, 0, input); throw nvae; } - switch (alt54) { + switch (alt63) { case 1 : - // InternalSolverLanguageParser.g:4280:3: (enumLiteral_0= PlusSign ) + // InternalSolverLanguageParser.g:4916:3: (enumLiteral_0= PlusSign ) { - // InternalSolverLanguageParser.g:4280:3: (enumLiteral_0= PlusSign ) - // InternalSolverLanguageParser.g:4281:4: enumLiteral_0= PlusSign + // InternalSolverLanguageParser.g:4916:3: (enumLiteral_0= PlusSign ) + // InternalSolverLanguageParser.g:4917:4: enumLiteral_0= PlusSign { enumLiteral_0=(Token)match(input,PlusSign,FOLLOW_2); - current = grammarAccess.getAdditiveBinaryOperatorAccess().getADDEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getAdditiveBinaryOperatorAccess().getADDEnumLiteralDeclaration_0()); + current = grammarAccess.getAdditiveBinaryOperatorAccess().getPLUSEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getAdditiveBinaryOperatorAccess().getPLUSEnumLiteralDeclaration_0()); } @@ -10922,15 +12642,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:4288:3: (enumLiteral_1= HyphenMinus ) + // InternalSolverLanguageParser.g:4924:3: (enumLiteral_1= HyphenMinus ) { - // InternalSolverLanguageParser.g:4288:3: (enumLiteral_1= HyphenMinus ) - // InternalSolverLanguageParser.g:4289:4: enumLiteral_1= HyphenMinus + // InternalSolverLanguageParser.g:4924:3: (enumLiteral_1= HyphenMinus ) + // InternalSolverLanguageParser.g:4925:4: enumLiteral_1= HyphenMinus { enumLiteral_1=(Token)match(input,HyphenMinus,FOLLOW_2); - current = grammarAccess.getAdditiveBinaryOperatorAccess().getSUBEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getAdditiveBinaryOperatorAccess().getSUBEnumLiteralDeclaration_1()); + current = grammarAccess.getAdditiveBinaryOperatorAccess().getMINUSEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getAdditiveBinaryOperatorAccess().getMINUSEnumLiteralDeclaration_1()); } @@ -10961,7 +12681,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleMultiplicativeBinaryOperator" - // InternalSolverLanguageParser.g:4299:1: ruleMultiplicativeBinaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) ; + // InternalSolverLanguageParser.g:4935:1: ruleMultiplicativeBinaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) ; public final Enumerator ruleMultiplicativeBinaryOperator() throws RecognitionException { Enumerator current = null; @@ -10972,36 +12692,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:4305:2: ( ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) ) - // InternalSolverLanguageParser.g:4306:2: ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) + // InternalSolverLanguageParser.g:4941:2: ( ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) ) + // InternalSolverLanguageParser.g:4942:2: ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) { - // InternalSolverLanguageParser.g:4306:2: ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) - int alt55=2; - int LA55_0 = input.LA(1); + // InternalSolverLanguageParser.g:4942:2: ( (enumLiteral_0= Asterisk ) | (enumLiteral_1= Solidus ) ) + int alt64=2; + int LA64_0 = input.LA(1); - if ( (LA55_0==Asterisk) ) { - alt55=1; + if ( (LA64_0==Asterisk) ) { + alt64=1; } - else if ( (LA55_0==Solidus) ) { - alt55=2; + else if ( (LA64_0==Solidus) ) { + alt64=2; } else { NoViableAltException nvae = - new NoViableAltException("", 55, 0, input); + new NoViableAltException("", 64, 0, input); throw nvae; } - switch (alt55) { + switch (alt64) { case 1 : - // InternalSolverLanguageParser.g:4307:3: (enumLiteral_0= Asterisk ) + // InternalSolverLanguageParser.g:4943:3: (enumLiteral_0= Asterisk ) { - // InternalSolverLanguageParser.g:4307:3: (enumLiteral_0= Asterisk ) - // InternalSolverLanguageParser.g:4308:4: enumLiteral_0= Asterisk + // InternalSolverLanguageParser.g:4943:3: (enumLiteral_0= Asterisk ) + // InternalSolverLanguageParser.g:4944:4: enumLiteral_0= Asterisk { enumLiteral_0=(Token)match(input,Asterisk,FOLLOW_2); - current = grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULEnumLiteralDeclaration_0()); + current = grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULTIPLYEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getMultiplicativeBinaryOperatorAccess().getMULTIPLYEnumLiteralDeclaration_0()); } @@ -11010,15 +12730,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:4315:3: (enumLiteral_1= Solidus ) + // InternalSolverLanguageParser.g:4951:3: (enumLiteral_1= Solidus ) { - // InternalSolverLanguageParser.g:4315:3: (enumLiteral_1= Solidus ) - // InternalSolverLanguageParser.g:4316:4: enumLiteral_1= Solidus + // InternalSolverLanguageParser.g:4951:3: (enumLiteral_1= Solidus ) + // InternalSolverLanguageParser.g:4952:4: enumLiteral_1= Solidus { enumLiteral_1=(Token)match(input,Solidus,FOLLOW_2); - current = grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVEnumLiteralDeclaration_1()); + current = grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVIDEEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getMultiplicativeBinaryOperatorAccess().getDIVIDEEnumLiteralDeclaration_1()); } @@ -11049,7 +12769,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleExponentialOp" - // InternalSolverLanguageParser.g:4326:1: ruleExponentialOp returns [Enumerator current=null] : (enumLiteral_0= CircumflexAccent ) ; + // InternalSolverLanguageParser.g:4962:1: ruleExponentialOp returns [Enumerator current=null] : (enumLiteral_0= CircumflexAccent ) ; public final Enumerator ruleExponentialOp() throws RecognitionException { Enumerator current = null; @@ -11059,11 +12779,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:4332:2: ( (enumLiteral_0= CircumflexAccent ) ) - // InternalSolverLanguageParser.g:4333:2: (enumLiteral_0= CircumflexAccent ) + // InternalSolverLanguageParser.g:4968:2: ( (enumLiteral_0= CircumflexAccent ) ) + // InternalSolverLanguageParser.g:4969:2: (enumLiteral_0= CircumflexAccent ) { - // InternalSolverLanguageParser.g:4333:2: (enumLiteral_0= CircumflexAccent ) - // InternalSolverLanguageParser.g:4334:3: enumLiteral_0= CircumflexAccent + // InternalSolverLanguageParser.g:4969:2: (enumLiteral_0= CircumflexAccent ) + // InternalSolverLanguageParser.g:4970:3: enumLiteral_0= CircumflexAccent { enumLiteral_0=(Token)match(input,CircumflexAccent,FOLLOW_2); @@ -11092,76 +12812,64 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR end "ruleExponentialOp" - // $ANTLR start "ruleUnaryOp" - // InternalSolverLanguageParser.g:4343:1: ruleUnaryOp returns [Enumerator current=null] : ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) ; - public final Enumerator ruleUnaryOp() throws RecognitionException { + // $ANTLR start "ruleUnaryOperator" + // InternalSolverLanguageParser.g:4979:1: ruleUnaryOperator returns [Enumerator current=null] : ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= QuestionMark ) ) ; + public final Enumerator ruleUnaryOperator() throws RecognitionException { Enumerator current = null; Token enumLiteral_0=null; Token enumLiteral_1=null; Token enumLiteral_2=null; Token enumLiteral_3=null; - Token enumLiteral_4=null; - Token enumLiteral_5=null; enterRule(); try { - // InternalSolverLanguageParser.g:4349:2: ( ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) ) - // InternalSolverLanguageParser.g:4350:2: ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) + // InternalSolverLanguageParser.g:4985:2: ( ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= QuestionMark ) ) ) + // InternalSolverLanguageParser.g:4986:2: ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= QuestionMark ) ) { - // InternalSolverLanguageParser.g:4350:2: ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= May ) | (enumLiteral_4= Must ) | (enumLiteral_5= Current ) ) - int alt56=6; + // InternalSolverLanguageParser.g:4986:2: ( (enumLiteral_0= ExclamationMark ) | (enumLiteral_1= PlusSign ) | (enumLiteral_2= HyphenMinus ) | (enumLiteral_3= QuestionMark ) ) + int alt65=4; switch ( input.LA(1) ) { case ExclamationMark: { - alt56=1; + alt65=1; } break; case PlusSign: { - alt56=2; + alt65=2; } break; case HyphenMinus: { - alt56=3; - } - break; - case May: - { - alt56=4; - } - break; - case Must: - { - alt56=5; + alt65=3; } break; - case Current: + case QuestionMark: { - alt56=6; + alt65=4; } break; default: NoViableAltException nvae = - new NoViableAltException("", 56, 0, input); + new NoViableAltException("", 65, 0, input); throw nvae; } - switch (alt56) { + switch (alt65) { case 1 : - // InternalSolverLanguageParser.g:4351:3: (enumLiteral_0= ExclamationMark ) + // InternalSolverLanguageParser.g:4987:3: (enumLiteral_0= ExclamationMark ) { - // InternalSolverLanguageParser.g:4351:3: (enumLiteral_0= ExclamationMark ) - // InternalSolverLanguageParser.g:4352:4: enumLiteral_0= ExclamationMark + // InternalSolverLanguageParser.g:4987:3: (enumLiteral_0= ExclamationMark ) + // InternalSolverLanguageParser.g:4988:4: enumLiteral_0= ExclamationMark { enumLiteral_0=(Token)match(input,ExclamationMark,FOLLOW_2); - current = grammarAccess.getUnaryOpAccess().getNEGEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getUnaryOpAccess().getNEGEnumLiteralDeclaration_0()); + current = grammarAccess.getUnaryOperatorAccess().getNOTEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getUnaryOperatorAccess().getNOTEnumLiteralDeclaration_0()); } @@ -11170,15 +12878,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:4359:3: (enumLiteral_1= PlusSign ) + // InternalSolverLanguageParser.g:4995:3: (enumLiteral_1= PlusSign ) { - // InternalSolverLanguageParser.g:4359:3: (enumLiteral_1= PlusSign ) - // InternalSolverLanguageParser.g:4360:4: enumLiteral_1= PlusSign + // InternalSolverLanguageParser.g:4995:3: (enumLiteral_1= PlusSign ) + // InternalSolverLanguageParser.g:4996:4: enumLiteral_1= PlusSign { enumLiteral_1=(Token)match(input,PlusSign,FOLLOW_2); - current = grammarAccess.getUnaryOpAccess().getPLUSEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getUnaryOpAccess().getPLUSEnumLiteralDeclaration_1()); + current = grammarAccess.getUnaryOperatorAccess().getPLUSEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getUnaryOperatorAccess().getPLUSEnumLiteralDeclaration_1()); } @@ -11187,15 +12895,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 3 : - // InternalSolverLanguageParser.g:4367:3: (enumLiteral_2= HyphenMinus ) + // InternalSolverLanguageParser.g:5003:3: (enumLiteral_2= HyphenMinus ) { - // InternalSolverLanguageParser.g:4367:3: (enumLiteral_2= HyphenMinus ) - // InternalSolverLanguageParser.g:4368:4: enumLiteral_2= HyphenMinus + // InternalSolverLanguageParser.g:5003:3: (enumLiteral_2= HyphenMinus ) + // InternalSolverLanguageParser.g:5004:4: enumLiteral_2= HyphenMinus { enumLiteral_2=(Token)match(input,HyphenMinus,FOLLOW_2); - current = grammarAccess.getUnaryOpAccess().getMINUSEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_2, grammarAccess.getUnaryOpAccess().getMINUSEnumLiteralDeclaration_2()); + current = grammarAccess.getUnaryOperatorAccess().getMINUSEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_2, grammarAccess.getUnaryOperatorAccess().getMINUSEnumLiteralDeclaration_2()); } @@ -11204,164 +12912,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 4 : - // InternalSolverLanguageParser.g:4375:3: (enumLiteral_3= May ) - { - // InternalSolverLanguageParser.g:4375:3: (enumLiteral_3= May ) - // InternalSolverLanguageParser.g:4376:4: enumLiteral_3= May - { - enumLiteral_3=(Token)match(input,May,FOLLOW_2); - - current = grammarAccess.getUnaryOpAccess().getMAYEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_3, grammarAccess.getUnaryOpAccess().getMAYEnumLiteralDeclaration_3()); - - - } - - - } - break; - case 5 : - // InternalSolverLanguageParser.g:4383:3: (enumLiteral_4= Must ) - { - // InternalSolverLanguageParser.g:4383:3: (enumLiteral_4= Must ) - // InternalSolverLanguageParser.g:4384:4: enumLiteral_4= Must - { - enumLiteral_4=(Token)match(input,Must,FOLLOW_2); - - current = grammarAccess.getUnaryOpAccess().getMUSTEnumLiteralDeclaration_4().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_4, grammarAccess.getUnaryOpAccess().getMUSTEnumLiteralDeclaration_4()); - - - } - - - } - break; - case 6 : - // InternalSolverLanguageParser.g:4391:3: (enumLiteral_5= Current ) - { - // InternalSolverLanguageParser.g:4391:3: (enumLiteral_5= Current ) - // InternalSolverLanguageParser.g:4392:4: enumLiteral_5= Current - { - enumLiteral_5=(Token)match(input,Current,FOLLOW_2); - - current = grammarAccess.getUnaryOpAccess().getCURRENTEnumLiteralDeclaration_5().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_5, grammarAccess.getUnaryOpAccess().getCURRENTEnumLiteralDeclaration_5()); - - - } - - - } - break; - - } - - - } - - - leaveRule(); - - } - - catch (RecognitionException re) { - recover(input,re); - appendSkippedTokens(); - } - finally { - } - return current; - } - // $ANTLR end "ruleUnaryOp" - - - // $ANTLR start "ruleQuantifier" - // InternalSolverLanguageParser.g:4402:1: ruleQuantifier returns [Enumerator current=null] : ( (enumLiteral_0= Exists ) | (enumLiteral_1= Forall ) | (enumLiteral_2= Count ) ) ; - public final Enumerator ruleQuantifier() throws RecognitionException { - Enumerator current = null; - - Token enumLiteral_0=null; - Token enumLiteral_1=null; - Token enumLiteral_2=null; - - - enterRule(); - - try { - // InternalSolverLanguageParser.g:4408:2: ( ( (enumLiteral_0= Exists ) | (enumLiteral_1= Forall ) | (enumLiteral_2= Count ) ) ) - // InternalSolverLanguageParser.g:4409:2: ( (enumLiteral_0= Exists ) | (enumLiteral_1= Forall ) | (enumLiteral_2= Count ) ) - { - // InternalSolverLanguageParser.g:4409:2: ( (enumLiteral_0= Exists ) | (enumLiteral_1= Forall ) | (enumLiteral_2= Count ) ) - int alt57=3; - switch ( input.LA(1) ) { - case Exists: - { - alt57=1; - } - break; - case Forall: - { - alt57=2; - } - break; - case Count: - { - alt57=3; - } - break; - default: - NoViableAltException nvae = - new NoViableAltException("", 57, 0, input); - - throw nvae; - } - - switch (alt57) { - case 1 : - // InternalSolverLanguageParser.g:4410:3: (enumLiteral_0= Exists ) - { - // InternalSolverLanguageParser.g:4410:3: (enumLiteral_0= Exists ) - // InternalSolverLanguageParser.g:4411:4: enumLiteral_0= Exists - { - enumLiteral_0=(Token)match(input,Exists,FOLLOW_2); - - current = grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getQuantifierAccess().getEXISTSEnumLiteralDeclaration_0()); - - - } - - - } - break; - case 2 : - // InternalSolverLanguageParser.g:4418:3: (enumLiteral_1= Forall ) - { - // InternalSolverLanguageParser.g:4418:3: (enumLiteral_1= Forall ) - // InternalSolverLanguageParser.g:4419:4: enumLiteral_1= Forall + // InternalSolverLanguageParser.g:5011:3: (enumLiteral_3= QuestionMark ) { - enumLiteral_1=(Token)match(input,Forall,FOLLOW_2); - - current = grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getQuantifierAccess().getFORALLEnumLiteralDeclaration_1()); - - - } - - - } - break; - case 3 : - // InternalSolverLanguageParser.g:4426:3: (enumLiteral_2= Count ) - { - // InternalSolverLanguageParser.g:4426:3: (enumLiteral_2= Count ) - // InternalSolverLanguageParser.g:4427:4: enumLiteral_2= Count + // InternalSolverLanguageParser.g:5011:3: (enumLiteral_3= QuestionMark ) + // InternalSolverLanguageParser.g:5012:4: enumLiteral_3= QuestionMark { - enumLiteral_2=(Token)match(input,Count,FOLLOW_2); + enumLiteral_3=(Token)match(input,QuestionMark,FOLLOW_2); - current = grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_2, grammarAccess.getQuantifierAccess().getCOUNTEnumLiteralDeclaration_2()); + current = grammarAccess.getUnaryOperatorAccess().getMAYBEEnumLiteralDeclaration_3().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_3, grammarAccess.getUnaryOperatorAccess().getMAYBEEnumLiteralDeclaration_3()); } @@ -11388,11 +12947,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } return current; } - // $ANTLR end "ruleQuantifier" + // $ANTLR end "ruleUnaryOperator" // $ANTLR start "ruleLogicValue" - // InternalSolverLanguageParser.g:4437:1: ruleLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) ; + // InternalSolverLanguageParser.g:5022:1: ruleLogicValue returns [Enumerator current=null] : ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) ; public final Enumerator ruleLogicValue() throws RecognitionException { Enumerator current = null; @@ -11405,45 +12964,45 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:4443:2: ( ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) ) - // InternalSolverLanguageParser.g:4444:2: ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) + // InternalSolverLanguageParser.g:5028:2: ( ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) ) + // InternalSolverLanguageParser.g:5029:2: ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) { - // InternalSolverLanguageParser.g:4444:2: ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) - int alt58=4; + // InternalSolverLanguageParser.g:5029:2: ( (enumLiteral_0= True ) | (enumLiteral_1= False ) | (enumLiteral_2= Unknown ) | (enumLiteral_3= Error ) ) + int alt66=4; switch ( input.LA(1) ) { case True: { - alt58=1; + alt66=1; } break; case False: { - alt58=2; + alt66=2; } break; case Unknown: { - alt58=3; + alt66=3; } break; case Error: { - alt58=4; + alt66=4; } break; default: NoViableAltException nvae = - new NoViableAltException("", 58, 0, input); + new NoViableAltException("", 66, 0, input); throw nvae; } - switch (alt58) { + switch (alt66) { case 1 : - // InternalSolverLanguageParser.g:4445:3: (enumLiteral_0= True ) + // InternalSolverLanguageParser.g:5030:3: (enumLiteral_0= True ) { - // InternalSolverLanguageParser.g:4445:3: (enumLiteral_0= True ) - // InternalSolverLanguageParser.g:4446:4: enumLiteral_0= True + // InternalSolverLanguageParser.g:5030:3: (enumLiteral_0= True ) + // InternalSolverLanguageParser.g:5031:4: enumLiteral_0= True { enumLiteral_0=(Token)match(input,True,FOLLOW_2); @@ -11457,10 +13016,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:4453:3: (enumLiteral_1= False ) + // InternalSolverLanguageParser.g:5038:3: (enumLiteral_1= False ) { - // InternalSolverLanguageParser.g:4453:3: (enumLiteral_1= False ) - // InternalSolverLanguageParser.g:4454:4: enumLiteral_1= False + // InternalSolverLanguageParser.g:5038:3: (enumLiteral_1= False ) + // InternalSolverLanguageParser.g:5039:4: enumLiteral_1= False { enumLiteral_1=(Token)match(input,False,FOLLOW_2); @@ -11474,10 +13033,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 3 : - // InternalSolverLanguageParser.g:4461:3: (enumLiteral_2= Unknown ) + // InternalSolverLanguageParser.g:5046:3: (enumLiteral_2= Unknown ) { - // InternalSolverLanguageParser.g:4461:3: (enumLiteral_2= Unknown ) - // InternalSolverLanguageParser.g:4462:4: enumLiteral_2= Unknown + // InternalSolverLanguageParser.g:5046:3: (enumLiteral_2= Unknown ) + // InternalSolverLanguageParser.g:5047:4: enumLiteral_2= Unknown { enumLiteral_2=(Token)match(input,Unknown,FOLLOW_2); @@ -11491,10 +13050,10 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 4 : - // InternalSolverLanguageParser.g:4469:3: (enumLiteral_3= Error ) + // InternalSolverLanguageParser.g:5054:3: (enumLiteral_3= Error ) { - // InternalSolverLanguageParser.g:4469:3: (enumLiteral_3= Error ) - // InternalSolverLanguageParser.g:4470:4: enumLiteral_3= Error + // InternalSolverLanguageParser.g:5054:3: (enumLiteral_3= Error ) + // InternalSolverLanguageParser.g:5055:4: enumLiteral_3= Error { enumLiteral_3=(Token)match(input,Error,FOLLOW_2); @@ -11530,7 +13089,7 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // $ANTLR start "ruleObjectiveKind" - // InternalSolverLanguageParser.g:4480:1: ruleObjectiveKind returns [Enumerator current=null] : ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) ; + // InternalSolverLanguageParser.g:5065:1: ruleObjectiveKind returns [Enumerator current=null] : ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) ; public final Enumerator ruleObjectiveKind() throws RecognitionException { Enumerator current = null; @@ -11541,36 +13100,36 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { enterRule(); try { - // InternalSolverLanguageParser.g:4486:2: ( ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) ) - // InternalSolverLanguageParser.g:4487:2: ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) + // InternalSolverLanguageParser.g:5071:2: ( ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) ) + // InternalSolverLanguageParser.g:5072:2: ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) { - // InternalSolverLanguageParser.g:4487:2: ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) - int alt59=2; - int LA59_0 = input.LA(1); + // InternalSolverLanguageParser.g:5072:2: ( (enumLiteral_0= Minimize ) | (enumLiteral_1= Maximize ) ) + int alt67=2; + int LA67_0 = input.LA(1); - if ( (LA59_0==Minimize) ) { - alt59=1; + if ( (LA67_0==Minimize) ) { + alt67=1; } - else if ( (LA59_0==Maximize) ) { - alt59=2; + else if ( (LA67_0==Maximize) ) { + alt67=2; } else { NoViableAltException nvae = - new NoViableAltException("", 59, 0, input); + new NoViableAltException("", 67, 0, input); throw nvae; } - switch (alt59) { + switch (alt67) { case 1 : - // InternalSolverLanguageParser.g:4488:3: (enumLiteral_0= Minimize ) + // InternalSolverLanguageParser.g:5073:3: (enumLiteral_0= Minimize ) { - // InternalSolverLanguageParser.g:4488:3: (enumLiteral_0= Minimize ) - // InternalSolverLanguageParser.g:4489:4: enumLiteral_0= Minimize + // InternalSolverLanguageParser.g:5073:3: (enumLiteral_0= Minimize ) + // InternalSolverLanguageParser.g:5074:4: enumLiteral_0= Minimize { enumLiteral_0=(Token)match(input,Minimize,FOLLOW_2); - current = grammarAccess.getObjectiveKindAccess().getMINIMIZEEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_0, grammarAccess.getObjectiveKindAccess().getMINIMIZEEnumLiteralDeclaration_0()); + current = grammarAccess.getObjectiveKindAccess().getMINIMIZATIONEnumLiteralDeclaration_0().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_0, grammarAccess.getObjectiveKindAccess().getMINIMIZATIONEnumLiteralDeclaration_0()); } @@ -11579,15 +13138,15 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { } break; case 2 : - // InternalSolverLanguageParser.g:4496:3: (enumLiteral_1= Maximize ) + // InternalSolverLanguageParser.g:5081:3: (enumLiteral_1= Maximize ) { - // InternalSolverLanguageParser.g:4496:3: (enumLiteral_1= Maximize ) - // InternalSolverLanguageParser.g:4497:4: enumLiteral_1= Maximize + // InternalSolverLanguageParser.g:5081:3: (enumLiteral_1= Maximize ) + // InternalSolverLanguageParser.g:5082:4: enumLiteral_1= Maximize { enumLiteral_1=(Token)match(input,Maximize,FOLLOW_2); - current = grammarAccess.getObjectiveKindAccess().getMAXIMIZEEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); - newLeafNode(enumLiteral_1, grammarAccess.getObjectiveKindAccess().getMAXIMIZEEnumLiteralDeclaration_1()); + current = grammarAccess.getObjectiveKindAccess().getMAXIMIZATIONEnumLiteralDeclaration_1().getEnumLiteral().getInstance(); + newLeafNode(enumLiteral_1, grammarAccess.getObjectiveKindAccess().getMAXIMIZATIONEnumLiteralDeclaration_1()); } @@ -11619,44 +13178,47 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { // Delegated rules - protected DFA2 dfa2 = new DFA2(this); - protected DFA23 dfa23 = new DFA23(this); - protected DFA29 dfa29 = new DFA29(this); - protected DFA33 dfa33 = new DFA33(this); - protected DFA44 dfa44 = new DFA44(this); - static final String dfa_1s = "\33\uffff"; - static final String dfa_2s = "\1\4\1\uffff\2\40\1\4\2\uffff\1\7\3\uffff\1\105\2\uffff\2\54\1\uffff\1\40\1\105\2\54\1\uffff\1\54\1\105\2\uffff\1\54"; - static final String dfa_3s = "\1\106\1\uffff\3\105\2\uffff\1\105\3\uffff\1\105\2\uffff\2\105\1\uffff\2\105\2\74\1\uffff\2\105\2\uffff\1\74"; - static final String dfa_4s = "\1\uffff\1\1\3\uffff\1\2\1\4\1\uffff\1\12\1\13\1\14\1\uffff\1\5\1\3\2\uffff\1\11\4\uffff\1\6\2\uffff\1\7\1\10\1\uffff"; - static final String dfa_5s = "\33\uffff}>"; + protected DFA4 dfa4 = new DFA4(this); + protected DFA13 dfa13 = new DFA13(this); + protected DFA30 dfa30 = new DFA30(this); + protected DFA31 dfa31 = new DFA31(this); + protected DFA34 dfa34 = new DFA34(this); + protected DFA53 dfa53 = new DFA53(this); + static final String dfa_1s = "\35\uffff"; + static final String dfa_2s = "\1\4\1\uffff\3\22\1\5\1\22\1\uffff\1\6\6\uffff\1\22\2\uffff\3\45\1\uffff\4\22\3\45"; + static final String dfa_3s = "\1\113\1\uffff\5\112\1\uffff\1\112\6\uffff\1\112\2\uffff\3\111\1\uffff\4\112\3\111"; + static final String dfa_4s = "\1\uffff\1\1\5\uffff\1\4\1\uffff\1\6\1\7\1\10\1\11\1\12\1\13\1\uffff\1\5\1\2\3\uffff\1\3\7\uffff"; + static final String dfa_5s = "\35\uffff}>"; static final String[] dfa_6s = { - "\1\5\1\10\2\uffff\2\12\1\uffff\1\1\1\6\1\uffff\2\1\1\7\1\1\1\10\2\1\1\4\1\1\1\11\1\uffff\1\1\1\uffff\1\1\1\uffff\3\1\11\uffff\1\1\1\uffff\2\1\2\uffff\1\1\1\uffff\1\1\7\uffff\1\1\5\uffff\1\1\1\3\4\uffff\1\2\1\1", + "\1\11\1\6\1\15\2\uffff\2\14\1\uffff\1\7\2\uffff\1\1\1\12\1\uffff\1\4\1\uffff\1\15\2\1\1\5\1\1\1\13\1\uffff\1\16\1\10\1\uffff\1\1\1\uffff\2\1\12\uffff\1\1\1\uffff\2\1\2\uffff\1\1\1\uffff\1\1\7\uffff\2\1\5\uffff\2\1\1\3\4\uffff\1\2\1\1", "", - "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\13\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14", - "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\uffff\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14", - "\1\5\33\uffff\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\15\1\uffff\4\1\1\uffff\6\1\2\uffff\1\1\4\uffff\1\5\3\uffff\1\1\1\5", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\21\14\uffff\1\24\17\uffff\3\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\25\1\uffff\4\1\1\uffff\4\1\1\uffff\1\1\3\uffff\1\1\3\uffff\1\21\1\uffff\1\23\3\uffff\1\1\1\22", + "\1\24\4\uffff\1\21\53\uffff\1\21\1\uffff\1\23\4\uffff\1\22", "", + "\1\15\13\uffff\1\11\1\uffff\1\15\7\uffff\1\15\50\uffff\1\11\4\uffff\1\11", "", - "\1\20\70\uffff\1\17\4\uffff\1\16", "", "", "", - "\1\21", "", "", - "\1\25\5\uffff\1\22\15\uffff\1\24\4\uffff\1\23", - "\1\25\23\uffff\1\24\4\uffff\1\23", + "\1\30\62\uffff\1\27\4\uffff\1\26", "", - "\2\1\1\uffff\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\4\1\1\13\7\1\1\uffff\2\1\3\uffff\1\14\1\uffff\3\1\1\14", - "\1\26", - "\1\30\5\uffff\1\27\11\uffff\1\31", - "\1\30\17\uffff\1\31", "", - "\1\25\5\uffff\1\22\15\uffff\1\24\4\uffff\1\23", - "\1\32", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", "", - "", - "\1\30\5\uffff\1\27\11\uffff\1\31" + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\20\17\uffff\3\1\1\17\6\1\1\uffff\1\1\1\uffff\1\1\1\uffff\11\1\1\uffff\1\1\3\uffff\2\1\2\uffff\1\20\1\uffff\1\20\1\uffff\3\1\1\20", + "\1\34\62\uffff\1\33\4\uffff\1\32", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11", + "\1\31\11\uffff\1\21\5\uffff\1\21\21\uffff\2\21\1\11" }; static final short[] dfa_1 = DFA.unpackEncodedString(dfa_1s); @@ -11666,11 +13228,11 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { static final short[] dfa_5 = DFA.unpackEncodedString(dfa_5s); static final short[][] dfa_6 = unpackEncodedStringArray(dfa_6s); - class DFA2 extends DFA { + class DFA4 extends DFA { - public DFA2(BaseRecognizer recognizer) { + public DFA4(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 2; + this.decisionNumber = 4; this.eot = dfa_1; this.eof = dfa_1; this.min = dfa_2; @@ -11680,243 +13242,336 @@ public class InternalSolverLanguageParser extends AbstractInternalAntlrParser { this.transition = dfa_6; } public String getDescription() { - return "109:3: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPrediateDefinition_2= ruleUnnamedErrorPrediateDefinition | this_DefaultDefinition_3= ruleDefaultDefinition | this_MetricDefinition_4= ruleMetricDefinition | this_ExternPredicateDefinition_5= ruleExternPredicateDefinition | this_ExternMetricDefinition_6= ruleExternMetricDefinition | this_ExternAggregatorDefinition_7= ruleExternAggregatorDefinition | this_ExternDatatypeDefinition_8= ruleExternDatatypeDefinition | this_ClassDefinition_9= ruleClassDefinition | this_ScopeDefinition_10= ruleScopeDefinition | this_ObjectiveDefinition_11= ruleObjectiveDefinition )"; - } - } - static final String dfa_7s = "\10\uffff"; - static final String dfa_8s = "\1\uffff\2\3\4\uffff\1\3"; - static final String dfa_9s = "\1\16\2\30\2\uffff\1\105\1\uffff\1\30"; - static final String dfa_10s = "\1\106\2\104\2\uffff\1\105\1\uffff\1\104"; - static final String dfa_11s = "\3\uffff\1\1\1\2\1\uffff\1\3\1\uffff"; - static final String dfa_12s = "\10\uffff}>"; - static final String[] dfa_13s = { - "\1\3\1\4\1\uffff\1\4\1\uffff\1\4\3\3\4\uffff\1\3\1\uffff\1\3\16\uffff\1\3\14\uffff\1\3\5\uffff\1\3\1\2\4\uffff\1\1\1\3", - "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\5\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3", - "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\uffff\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3", + return "158:2: (this_AssertionOrDefinition_0= ruleAssertionOrDefinition | this_PredicateDefinition_1= rulePredicateDefinition | this_UnnamedErrorPredicateDefintion_2= ruleUnnamedErrorPredicateDefintion | this_DefaultAssertion_3= ruleDefaultAssertion | this_FunctionDefinition_4= ruleFunctionDefinition | this_Attribute_5= ruleAttribute | this_ExternDeclaration_6= ruleExternDeclaration | this_ScopeDeclaration_7= ruleScopeDeclaration | this_ObjectiveDeclaration_8= ruleObjectiveDeclaration | this_ClassDeclaration_9= ruleClassDeclaration | this_EnumDeclaration_10= ruleEnumDeclaration )"; + } + } + static final String dfa_7s = "\24\uffff"; + static final String dfa_8s = "\1\20\1\5\2\uffff\4\22\3\45\4\22\2\uffff\3\45"; + static final String dfa_9s = "\1\20\1\112\2\uffff\4\112\3\100\4\112\2\uffff\3\100"; + static final String dfa_10s = "\2\uffff\1\4\1\1\13\uffff\1\3\1\2\3\uffff"; + static final String dfa_11s = "\24\uffff}>"; + static final String[] dfa_12s = { + "\1\1", + "\1\3\2\uffff\1\2\11\uffff\1\6\4\uffff\1\3\55\uffff\1\5\4\uffff\1\4", "", "", - "\1\7", + "\1\12\22\uffff\1\7\11\uffff\1\3\25\uffff\1\11\4\uffff\1\10", + "\1\12\22\uffff\1\7\11\uffff\1\3\25\uffff\1\11\4\uffff\1\10", + "\1\12\22\uffff\1\7\11\uffff\1\3\25\uffff\1\11\4\uffff\1\10", + "\1\15\62\uffff\1\14\4\uffff\1\13", + "\1\16\11\uffff\1\20\20\uffff\1\17", + "\1\16\11\uffff\1\20\20\uffff\1\17", + "\1\16\11\uffff\1\20\20\uffff\1\17", + "\1\12\22\uffff\1\7\11\uffff\1\3\25\uffff\1\11\4\uffff\1\10", + "\1\12\22\uffff\1\7\11\uffff\1\3\25\uffff\1\11\4\uffff\1\10", + "\1\12\22\uffff\1\7\11\uffff\1\3\25\uffff\1\11\4\uffff\1\10", + "\1\23\62\uffff\1\22\4\uffff\1\21", "", - "\1\3\1\uffff\1\3\5\uffff\11\3\1\uffff\1\3\1\uffff\6\3\1\5\6\3\1\6\2\3\1\6\2\3\3\uffff\3\3" + "", + "\1\16\11\uffff\1\20\20\uffff\1\17", + "\1\16\11\uffff\1\20\20\uffff\1\17", + "\1\16\11\uffff\1\20\20\uffff\1\17" }; static final short[] dfa_7 = DFA.unpackEncodedString(dfa_7s); - static final short[] dfa_8 = DFA.unpackEncodedString(dfa_8s); + static final char[] dfa_8 = DFA.unpackEncodedStringToUnsignedChars(dfa_8s); static final char[] dfa_9 = DFA.unpackEncodedStringToUnsignedChars(dfa_9s); - static final char[] dfa_10 = DFA.unpackEncodedStringToUnsignedChars(dfa_10s); + static final short[] dfa_10 = DFA.unpackEncodedString(dfa_10s); static final short[] dfa_11 = DFA.unpackEncodedString(dfa_11s); - static final short[] dfa_12 = DFA.unpackEncodedString(dfa_12s); - static final short[][] dfa_13 = unpackEncodedStringArray(dfa_13s); + static final short[][] dfa_12 = unpackEncodedStringArray(dfa_12s); - class DFA23 extends DFA { + class DFA13 extends DFA { - public DFA23(BaseRecognizer recognizer) { + public DFA13(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 23; + this.decisionNumber = 13; this.eot = dfa_7; - this.eof = dfa_8; - this.min = dfa_9; - this.max = dfa_10; - this.accept = dfa_11; - this.special = dfa_12; - this.transition = dfa_13; + this.eof = dfa_7; + this.min = dfa_8; + this.max = dfa_9; + this.accept = dfa_10; + this.special = dfa_11; + this.transition = dfa_12; } public String getDescription() { - return "2100:2: (this_AtomicExpression_0= ruleAtomicExpression | this_QuantifiedExpression_1= ruleQuantifiedExpression | this_Aggregation_2= ruleAggregation )"; - } - } - static final String dfa_14s = "\12\uffff"; - static final String dfa_15s = "\1\uffff\2\10\6\uffff\1\10"; - static final String dfa_16s = "\1\16\2\30\3\uffff\1\105\2\uffff\1\30"; - static final String dfa_17s = "\1\106\2\104\3\uffff\1\105\2\uffff\1\104"; - static final String dfa_18s = "\3\uffff\1\3\1\4\1\5\1\uffff\1\2\1\1\1\uffff"; - static final String dfa_19s = "\12\uffff}>"; - static final String[] dfa_20s = { - "\1\4\5\uffff\3\4\4\uffff\1\4\1\uffff\1\4\16\uffff\1\5\14\uffff\1\3\5\uffff\1\4\1\2\4\uffff\1\1\1\4", - "\1\10\1\uffff\1\10\5\uffff\11\10\1\uffff\1\10\1\uffff\1\7\5\10\1\6\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10", - "\1\10\1\uffff\1\10\5\uffff\11\10\1\uffff\1\10\1\uffff\1\7\5\10\1\uffff\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10", - "", - "", + return "1041:2: (this_ExternPredicateDeclaration_0= ruleExternPredicateDeclaration | this_ExternFunctionDeclaration_1= ruleExternFunctionDeclaration | this_ExternAggregationOperatorDeclaration_2= ruleExternAggregationOperatorDeclaration | this_ExternDatatypeDeclaration_3= ruleExternDatatypeDeclaration )"; + } + } + static final String dfa_13s = "\13\uffff"; + static final String dfa_14s = "\2\uffff\3\1\3\uffff\3\1"; + static final String dfa_15s = "\1\17\1\uffff\3\32\1\uffff\1\22\1\uffff\3\32"; + static final String dfa_16s = "\1\113\1\uffff\3\111\1\uffff\1\112\1\uffff\3\111"; + static final String dfa_17s = "\1\uffff\1\1\3\uffff\1\3\1\uffff\1\2\3\uffff"; + static final String dfa_18s = "\13\uffff}>"; + static final String[] dfa_19s = { + "\1\1\2\uffff\1\4\2\uffff\1\5\3\1\5\uffff\1\1\1\uffff\1\1\16\uffff\1\1\15\uffff\1\1\5\uffff\2\1\1\3\4\uffff\1\2\1\1", "", - "\1\11", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", "", + "\1\12\62\uffff\1\11\4\uffff\1\10", "", - "\1\10\1\uffff\1\10\5\uffff\11\10\1\uffff\1\10\1\uffff\1\7\5\10\1\6\6\10\1\uffff\2\10\1\uffff\2\10\3\uffff\2\7\1\10" + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1", + "\1\1\2\uffff\1\1\4\uffff\3\1\1\6\6\1\1\uffff\1\1\1\uffff\13\1\1\uffff\1\1\2\uffff\2\1\1\7\2\1\4\uffff\3\1" }; + static final short[] dfa_13 = DFA.unpackEncodedString(dfa_13s); static final short[] dfa_14 = DFA.unpackEncodedString(dfa_14s); - static final short[] dfa_15 = DFA.unpackEncodedString(dfa_15s); + static final char[] dfa_15 = DFA.unpackEncodedStringToUnsignedChars(dfa_15s); static final char[] dfa_16 = DFA.unpackEncodedStringToUnsignedChars(dfa_16s); - static final char[] dfa_17 = DFA.unpackEncodedStringToUnsignedChars(dfa_17s); + static final short[] dfa_17 = DFA.unpackEncodedString(dfa_17s); static final short[] dfa_18 = DFA.unpackEncodedString(dfa_18s); - static final short[] dfa_19 = DFA.unpackEncodedString(dfa_19s); - static final short[][] dfa_20 = unpackEncodedStringArray(dfa_20s); + static final short[][] dfa_19 = unpackEncodedStringArray(dfa_19s); - class DFA29 extends DFA { + class DFA30 extends DFA { - public DFA29(BaseRecognizer recognizer) { + public DFA30(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 29; - this.eot = dfa_14; - this.eof = dfa_15; - this.min = dfa_16; - this.max = dfa_17; - this.accept = dfa_18; - this.special = dfa_19; - this.transition = dfa_20; + this.decisionNumber = 30; + this.eot = dfa_13; + this.eof = dfa_14; + this.min = dfa_15; + this.max = dfa_16; + this.accept = dfa_17; + this.special = dfa_18; + this.transition = dfa_19; } public String getDescription() { - return "2415:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) )"; - } - } - static final String dfa_21s = "\1\uffff\2\3\3\uffff\1\11\1\uffff\1\3\1\uffff"; - static final String dfa_22s = "\1\13\2\40\2\uffff\1\105\1\13\1\uffff\1\40\1\uffff"; - static final String dfa_23s = "\1\106\2\105\2\uffff\1\105\1\106\1\uffff\1\105\1\uffff"; - static final String dfa_24s = "\3\uffff\1\1\1\2\2\uffff\1\3\1\uffff\1\4"; - static final String[] dfa_25s = { - "\1\3\2\uffff\2\3\1\uffff\1\3\1\uffff\4\3\2\uffff\1\3\1\uffff\1\3\1\uffff\1\3\1\uffff\1\3\13\uffff\2\3\1\uffff\1\4\1\3\1\uffff\1\3\7\uffff\1\3\5\uffff\1\3\1\2\4\uffff\1\1\1\3", - "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\6\3\3\1\5\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\7\1\uffff\2\3\1\uffff\1\7", - "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\6\3\3\1\uffff\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\7\1\uffff\2\3\1\uffff\1\7", + return "2451:2: (this_AtomicExpression_0= ruleAtomicExpression | this_Aggregation_1= ruleAggregation | this_Count_2= ruleCount )"; + } + } + static final String dfa_20s = "\33\uffff"; + static final String dfa_21s = "\2\uffff\3\14\4\uffff\2\14\3\uffff\3\14\1\uffff\3\14\1\uffff\5\14"; + static final String dfa_22s = "\1\17\1\22\3\32\3\uffff\1\22\2\32\1\22\2\uffff\3\32\1\22\3\32\1\22\5\32"; + static final String dfa_23s = "\1\113\1\112\3\111\3\uffff\1\112\2\111\1\112\2\uffff\3\111\1\112\3\111\1\112\5\111"; + static final String dfa_24s = "\5\uffff\1\3\1\4\1\5\4\uffff\1\1\1\2\15\uffff"; + static final String dfa_25s = "\33\uffff}>"; + static final String[] dfa_26s = { + "\1\6\2\uffff\1\4\3\uffff\3\6\5\uffff\1\6\1\uffff\1\6\16\uffff\1\7\15\uffff\1\5\5\uffff\1\1\1\6\1\3\4\uffff\1\2\1\6", + "\1\4\62\uffff\1\3\4\uffff\1\2", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\10\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\11\1\12\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\10\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\11\1\12\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\10\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\11\1\12\1\14", "", "", - "\1\10", - "\1\3\2\uffff\2\3\1\uffff\1\3\1\uffff\4\3\2\uffff\1\3\1\uffff\1\3\1\uffff\1\3\1\uffff\1\3\13\uffff\2\3\1\11\1\uffff\1\3\1\11\1\3\7\uffff\1\3\5\uffff\2\3\4\uffff\2\3", "", - "\1\3\3\uffff\2\3\1\uffff\2\3\1\uffff\1\3\1\uffff\2\3\1\6\3\3\1\5\1\3\2\uffff\1\3\1\uffff\2\3\1\uffff\2\3\3\uffff\1\7\1\uffff\2\3\1\uffff\1\7", - "" + "\1\20\62\uffff\1\17\4\uffff\1\16", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\uffff\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\6\uffff\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\uffff\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\6\uffff\1\14", + "\1\24\60\uffff\1\21\1\uffff\1\23\4\uffff\1\22", + "", + "", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\10\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\11\1\12\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\10\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\11\1\12\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\10\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\11\1\12\1\14", + "\1\24\62\uffff\1\23\4\uffff\1\22", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\25\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\26\1\27\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\25\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\26\1\27\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\25\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\26\1\27\1\14", + "\1\32\62\uffff\1\31\4\uffff\1\30", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\uffff\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\6\uffff\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\uffff\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\6\uffff\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\25\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\26\1\27\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\25\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\26\1\27\1\14", + "\1\14\2\uffff\1\14\4\uffff\3\14\1\25\6\14\1\uffff\1\14\1\uffff\1\15\5\14\1\13\4\14\1\uffff\1\14\2\uffff\2\14\1\uffff\2\14\4\uffff\1\26\1\27\1\14" }; + + static final short[] dfa_20 = DFA.unpackEncodedString(dfa_20s); static final short[] dfa_21 = DFA.unpackEncodedString(dfa_21s); static final char[] dfa_22 = DFA.unpackEncodedStringToUnsignedChars(dfa_22s); static final char[] dfa_23 = DFA.unpackEncodedStringToUnsignedChars(dfa_23s); static final short[] dfa_24 = DFA.unpackEncodedString(dfa_24s); - static final short[][] dfa_25 = unpackEncodedStringArray(dfa_25s); + static final short[] dfa_25 = DFA.unpackEncodedString(dfa_25s); + static final short[][] dfa_26 = unpackEncodedStringArray(dfa_26s); - class DFA33 extends DFA { + class DFA31 extends DFA { - public DFA33(BaseRecognizer recognizer) { + public DFA31(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 33; - this.eot = dfa_14; + this.decisionNumber = 31; + this.eot = dfa_20; this.eof = dfa_21; this.min = dfa_22; this.max = dfa_23; this.accept = dfa_24; - this.special = dfa_19; - this.transition = dfa_25; + this.special = dfa_25; + this.transition = dfa_26; } public String getDescription() { - return "2664:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedArgument_2= ruleTypedArgument | this_TypedStarArgument_3= ruleTypedStarArgument )"; + return "2631:2: (this_Reference_0= ruleReference | this_Call_1= ruleCall | this_Interval_2= ruleInterval | this_Literal_3= ruleLiteral | (otherlv_4= LeftParenthesis this_Expression_5= ruleExpression otherlv_6= RightParenthesis ) )"; } } - static final String dfa_26s = "\17\uffff"; - static final String dfa_27s = "\12\uffff\2\10\2\uffff\1\10"; - static final String dfa_28s = "\1\27\1\100\3\44\1\100\1\uffff\1\105\2\uffff\3\44\1\105\1\44"; - static final String dfa_29s = "\1\27\1\106\1\47\1\62\1\47\1\105\1\uffff\1\105\2\uffff\2\104\1\62\1\105\1\104"; - static final String dfa_30s = "\6\uffff\1\2\1\uffff\1\3\1\1\5\uffff"; - static final String dfa_31s = "\17\uffff}>"; - static final String[] dfa_32s = { - "\1\1", - "\1\4\4\uffff\1\3\1\2", - "\1\5\2\uffff\1\6", - "\1\6\1\11\1\uffff\1\10\12\uffff\1\7", - "\1\6\1\11\1\uffff\1\10", - "\1\13\4\uffff\1\12", + static final String dfa_27s = "\16\uffff"; + static final String dfa_28s = "\2\uffff\3\1\2\uffff\1\15\2\uffff\3\1\1\uffff"; + static final String dfa_29s = "\1\17\1\uffff\3\22\1\uffff\1\22\1\17\1\61\1\uffff\3\22\1\uffff"; + static final String dfa_30s = "\1\113\1\uffff\3\112\1\uffff\1\112\1\113\1\112\1\uffff\3\112\1\uffff"; + static final String dfa_31s = "\1\uffff\1\1\3\uffff\1\2\3\uffff\1\3\3\uffff\1\4"; + static final String dfa_32s = "\16\uffff}>"; + static final String[] dfa_33s = { + "\1\1\2\uffff\1\4\2\uffff\4\1\5\uffff\1\1\1\uffff\1\1\15\uffff\2\1\1\uffff\1\5\1\1\1\uffff\1\1\7\uffff\2\1\5\uffff\2\1\1\3\4\uffff\1\2\1\1", "", - "\1\14", + "\1\10\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\7\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\11", + "\1\10\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\7\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\11", + "\1\10\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\7\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\11", "", + "\1\14\62\uffff\1\13\4\uffff\1\12", + "\1\1\2\uffff\1\1\2\uffff\4\1\5\uffff\1\1\1\uffff\1\1\15\uffff\2\1\1\15\1\uffff\1\1\1\15\1\1\7\uffff\2\1\5\uffff\3\1\4\uffff\2\1", + "\1\15\30\uffff\1\11", "", - "\1\6\15\uffff\1\15\21\uffff\1\10", - "\1\6\37\uffff\1\10", - "\1\6\1\11\1\uffff\1\10\12\uffff\1\7", - "\1\16", - "\1\6\15\uffff\1\15\21\uffff\1\10" + "\1\10\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\7\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\11", + "\1\10\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\7\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\11", + "\1\10\17\uffff\1\1\2\uffff\1\6\1\uffff\2\1\1\uffff\2\1\1\uffff\1\1\1\uffff\2\1\1\7\5\1\2\uffff\1\1\1\uffff\1\1\3\uffff\2\1\6\uffff\2\1\1\uffff\1\11", + "" }; - static final short[] dfa_26 = DFA.unpackEncodedString(dfa_26s); static final short[] dfa_27 = DFA.unpackEncodedString(dfa_27s); - static final char[] dfa_28 = DFA.unpackEncodedStringToUnsignedChars(dfa_28s); + static final short[] dfa_28 = DFA.unpackEncodedString(dfa_28s); static final char[] dfa_29 = DFA.unpackEncodedStringToUnsignedChars(dfa_29s); - static final short[] dfa_30 = DFA.unpackEncodedString(dfa_30s); + static final char[] dfa_30 = DFA.unpackEncodedStringToUnsignedChars(dfa_30s); static final short[] dfa_31 = DFA.unpackEncodedString(dfa_31s); - static final short[][] dfa_32 = unpackEncodedStringArray(dfa_32s); + static final short[] dfa_32 = DFA.unpackEncodedString(dfa_32s); + static final short[][] dfa_33 = unpackEncodedStringArray(dfa_33s); + + class DFA34 extends DFA { + + public DFA34(BaseRecognizer recognizer) { + this.recognizer = recognizer; + this.decisionNumber = 34; + this.eot = dfa_27; + this.eof = dfa_28; + this.min = dfa_29; + this.max = dfa_30; + this.accept = dfa_31; + this.special = dfa_32; + this.transition = dfa_33; + } + public String getDescription() { + return "2841:2: (this_ExpressionArgument_0= ruleExpressionArgument | this_StarArgument_1= ruleStarArgument | this_TypedVariableArgument_2= ruleTypedVariableArgument | this_TypedStarArgument_3= ruleTypedStarArgument )"; + } + } + static final String dfa_34s = "\25\uffff"; + static final String dfa_35s = "\1\31\1\22\1\47\3\45\1\22\1\uffff\1\22\2\uffff\6\45\1\22\3\45"; + static final String dfa_36s = "\1\31\1\113\4\52\1\112\1\uffff\1\112\2\uffff\3\111\3\52\1\112\3\111"; + static final String dfa_37s = "\7\uffff\1\2\1\uffff\1\1\1\3\12\uffff"; + static final String dfa_38s = "\25\uffff}>"; + static final String[] dfa_39s = { + "\1\1", + "\1\5\62\uffff\1\4\4\uffff\1\3\1\2", + "\1\6\2\uffff\1\7", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\15\62\uffff\1\14\4\uffff\1\13", + "", + "\1\20\62\uffff\1\17\4\uffff\1\16", + "", + "", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\10\1\uffff\1\7\1\11\1\uffff\1\12", + "\1\24\62\uffff\1\23\4\uffff\1\22", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\21\1\uffff\1\7\41\uffff\1\12", + "\1\21\1\uffff\1\7\41\uffff\1\12" + }; + + static final short[] dfa_34 = DFA.unpackEncodedString(dfa_34s); + static final char[] dfa_35 = DFA.unpackEncodedStringToUnsignedChars(dfa_35s); + static final char[] dfa_36 = DFA.unpackEncodedStringToUnsignedChars(dfa_36s); + static final short[] dfa_37 = DFA.unpackEncodedString(dfa_37s); + static final short[] dfa_38 = DFA.unpackEncodedString(dfa_38s); + static final short[][] dfa_39 = unpackEncodedStringArray(dfa_39s); - class DFA44 extends DFA { + class DFA53 extends DFA { - public DFA44(BaseRecognizer recognizer) { + public DFA53(BaseRecognizer recognizer) { this.recognizer = recognizer; - this.decisionNumber = 44; - this.eot = dfa_26; - this.eof = dfa_27; - this.min = dfa_28; - this.max = dfa_29; - this.accept = dfa_30; - this.special = dfa_31; - this.transition = dfa_32; + this.decisionNumber = 53; + this.eot = dfa_34; + this.eof = dfa_34; + this.min = dfa_35; + this.max = dfa_36; + this.accept = dfa_37; + this.special = dfa_38; + this.transition = dfa_39; } public String getDescription() { - return "3639:2: (this_ExactScopeDefinition_0= ruleExactScopeDefinition | this_BoundedScopeDefinition_1= ruleBoundedScopeDefinition | this_LowerBoundedScopeDefinition_2= ruleLowerBoundedScopeDefinition )"; + return "4199:2: (this_ExactScope_0= ruleExactScope | this_BoundedScope_1= ruleBoundedScope | this_LowerBoundedScope_2= ruleLowerBoundedScope )"; } } public static final BitSet FOLLOW_1 = new BitSet(new long[]{0x0000000000000000L}); public static final BitSet FOLLOW_2 = new BitSet(new long[]{0x0000000000000002L}); - public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x82029A00EAFFDB32L,0x0000000000000061L}); - public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L}); - public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x0090000800000002L}); - public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x82029A00EA7AC800L,0x0000000000000061L}); - public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000200000L,0x0000000000000021L}); - public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000021L}); - public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0000000000000010L,0x0000000000000021L}); - public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x0000000800000000L}); - public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000100000000000L}); - public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0010000000000000L}); - public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0080000000000000L}); - public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x1000000000000000L}); - public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000000010000000L}); - public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x4000000000000000L}); - public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000000000000080L}); - public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000002000L}); - public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0001000000000002L}); - public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L}); - public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000004000000L}); - public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000001000000L}); - public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0001040000000000L}); - public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000004000000002L}); - public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0020000200000002L}); - public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0020000000000002L}); - public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0000000200000000L}); - public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x014004B100000002L}); - public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0002800000000002L}); - public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0008400000000002L}); - public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0800000000000002L}); - public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000010000000002L}); - public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x82001000287AC000L,0x0000000000000061L}); - public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0400000000000000L,0x0000000000000021L}); - public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0401000000000000L}); - public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x1200000000000000L}); - public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x6000000000000000L}); - public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000200000000000L}); - public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x0000100000000000L,0x000000000000000CL}); - public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x8202FA00EA7AC800L,0x0000000000000061L}); - public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0001200000000000L}); - public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x8202DA00EA7AC800L,0x0000000000000061L}); - public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0000400000000000L}); - public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x0000000400000000L}); - public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0400000000000000L}); - public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0000000000040000L}); - public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x1000000000002000L}); - public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x1001000000000000L}); - public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x4000000000000040L,0x0000000000000021L}); - public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x0200000000000000L,0x0000000000000020L}); - public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0020000000000402L}); - public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x0000400000000000L,0x0000000000000040L}); - public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L}); - public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x0000002000000000L}); - public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000061L}); - public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0000001000000000L}); - public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0000008000000000L}); - public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000008000000002L}); - public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0004000000000002L}); - -} \ No newline at end of file + public static final BitSet FOLLOW_3 = new BitSet(new long[]{0x0000000000040000L,0x0000000000000420L}); + public static final BitSet FOLLOW_4 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_5 = new BitSet(new long[]{0x3014D0035BF79672L,0x0000000000000C38L}); + public static final BitSet FOLLOW_6 = new BitSet(new long[]{0x3014D0035BF59672L,0x0000000000000C38L}); + public static final BitSet FOLLOW_7 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L}); + public static final BitSet FOLLOW_8 = new BitSet(new long[]{0x0000080000000000L}); + public static final BitSet FOLLOW_9 = new BitSet(new long[]{0x0080005000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_10 = new BitSet(new long[]{0x3014D00341E48000L,0x0000000000000C38L}); + public static final BitSet FOLLOW_11 = new BitSet(new long[]{0x0000000000840000L,0x0000000000000428L}); + public static final BitSet FOLLOW_12 = new BitSet(new long[]{0x0000000000040000L,0x0000000000000428L}); + public static final BitSet FOLLOW_13 = new BitSet(new long[]{0x0000000000040020L,0x0000000000000428L}); + public static final BitSet FOLLOW_14 = new BitSet(new long[]{0x0000001000000000L}); + public static final BitSet FOLLOW_15 = new BitSet(new long[]{0x0000800000000000L}); + public static final BitSet FOLLOW_16 = new BitSet(new long[]{0x0080000000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_17 = new BitSet(new long[]{0x0000004000000000L}); + public static final BitSet FOLLOW_18 = new BitSet(new long[]{0x0000000000040002L}); + public static final BitSet FOLLOW_19 = new BitSet(new long[]{0x0000000000840020L,0x0000000000000420L}); + public static final BitSet FOLLOW_20 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000001L}); + public static final BitSet FOLLOW_21 = new BitSet(new long[]{0x0000000080000000L}); + public static final BitSet FOLLOW_22 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000004L}); + public static final BitSet FOLLOW_23 = new BitSet(new long[]{0x0000000000000100L}); + public static final BitSet FOLLOW_24 = new BitSet(new long[]{0x0000020000000002L}); + public static final BitSet FOLLOW_25 = new BitSet(new long[]{0x0000000020000000L}); + public static final BitSet FOLLOW_26 = new BitSet(new long[]{0x0000000004000000L}); + public static final BitSet FOLLOW_27 = new BitSet(new long[]{0x0008200000000000L}); + public static final BitSet FOLLOW_28 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000400L}); + public static final BitSet FOLLOW_29 = new BitSet(new long[]{0x0400000000000000L}); + public static final BitSet FOLLOW_30 = new BitSet(new long[]{0x0100000800000002L}); + public static final BitSet FOLLOW_31 = new BitSet(new long[]{0x0100000000000002L}); + public static final BitSet FOLLOW_32 = new BitSet(new long[]{0x0000000800000000L}); + public static final BitSet FOLLOW_33 = new BitSet(new long[]{0x0008000000000002L}); + public static final BitSet FOLLOW_34 = new BitSet(new long[]{0x0A00258400000002L}); + public static final BitSet FOLLOW_35 = new BitSet(new long[]{0x0014000000000002L}); + public static final BitSet FOLLOW_36 = new BitSet(new long[]{0x0042000000000002L}); + public static final BitSet FOLLOW_37 = new BitSet(new long[]{0x8000000000000002L}); + public static final BitSet FOLLOW_38 = new BitSet(new long[]{0x0000080000000002L}); + public static final BitSet FOLLOW_39 = new BitSet(new long[]{0x2000800141E48000L,0x0000000000000C38L}); + public static final BitSet FOLLOW_40 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000002L}); + public static final BitSet FOLLOW_41 = new BitSet(new long[]{0x0001000000000000L}); + public static final BitSet FOLLOW_42 = new BitSet(new long[]{0x3017D00341E48000L,0x0000000000000C38L}); + public static final BitSet FOLLOW_43 = new BitSet(new long[]{0x0009000000000000L}); + public static final BitSet FOLLOW_44 = new BitSet(new long[]{0x3016D00341E48000L,0x0000000000000C38L}); + public static final BitSet FOLLOW_45 = new BitSet(new long[]{0x0002000000000000L}); + public static final BitSet FOLLOW_46 = new BitSet(new long[]{0x0020000000000002L}); + public static final BitSet FOLLOW_47 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000180L}); + public static final BitSet FOLLOW_48 = new BitSet(new long[]{0x0008000000000000L}); + public static final BitSet FOLLOW_49 = new BitSet(new long[]{0x4000000000000000L}); + public static final BitSet FOLLOW_50 = new BitSet(new long[]{0x0000000010100040L}); + public static final BitSet FOLLOW_51 = new BitSet(new long[]{0x0000000000002000L,0x0000000000000201L}); + public static final BitSet FOLLOW_52 = new BitSet(new long[]{0x0008000000000000L,0x0000000000000201L}); + public static final BitSet FOLLOW_53 = new BitSet(new long[]{0x00000000000C0080L,0x0000000000000424L}); + public static final BitSet FOLLOW_54 = new BitSet(new long[]{0x2000000000000000L,0x0000000000000400L}); + public static final BitSet FOLLOW_55 = new BitSet(new long[]{0x0100000000000802L}); + public static final BitSet FOLLOW_56 = new BitSet(new long[]{0x0002000000000000L,0x0000000000000800L}); + public static final BitSet FOLLOW_57 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000800L}); + public static final BitSet FOLLOW_58 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000201L}); + public static final BitSet FOLLOW_59 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000404L}); + public static final BitSet FOLLOW_60 = new BitSet(new long[]{0x0008000000000000L,0x0000000000000404L}); + public static final BitSet FOLLOW_61 = new BitSet(new long[]{0x0000010000000000L}); + public static final BitSet FOLLOW_62 = new BitSet(new long[]{0x0000000000040000L,0x0000000000000C20L}); + public static final BitSet FOLLOW_63 = new BitSet(new long[]{0x0000008000000000L}); + public static final BitSet FOLLOW_64 = new BitSet(new long[]{0x0000040000000000L}); + public static final BitSet FOLLOW_65 = new BitSet(new long[]{0x0000040000000000L,0x0000000000000200L}); + public static final BitSet FOLLOW_66 = new BitSet(new long[]{0x0020000000000000L}); + public static final BitSet FOLLOW_67 = new BitSet(new long[]{0x0000002000000002L}); + +} diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.tokens b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.tokens index 736b2f0a..591c0e60 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.tokens +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/internal/InternalSolverLanguageParser.tokens @@ -1,70 +1,75 @@ -'!'=43 -'!='=32 -'('=44 -')'=45 -'*'=46 -'+'=47 -','=48 -'-'=49 -'->'=33 -'.'=50 -'..'=34 -'...'=28 -'/'=51 -':'=52 -':-'=35 -';'=53 -'<'=54 -'<='=36 -'='=55 -'=='=37 -'=>'=38 -'>'=56 -'>='=39 -'['=57 -']'=58 -'^'=59 -'abstract'=5 -'as'=40 -'class'=18 -'contains'=6 -'count'=19 -'current'=11 -'datatype'=7 +'!'=46 +'!='=34 +'('=47 +')'=48 +'*'=49 +'+'=50 +','=51 +'-'=52 +'->'=35 +'.'=53 +'...'=31 +'/'=54 +':'=55 +':-'=36 +'::'=37 +':='=38 +';'=56 +'<'=57 +'<='=39 +'='=58 +'=='=40 +'=>'=41 +'>'=59 +'>='=42 +'?'=60 +'['=61 +']'=62 +'^'=63 +'abstract'=6 +'as'=43 +'class'=20 +'containment'=4 +'contains'=7 +'count'=21 +'datatype'=8 'default'=12 -'else'=24 -'empty'=20 -'error'=21 -'exists'=15 +'else'=26 +'empty'=22 +'enum'=27 +'error'=23 'extends'=13 'extern'=16 -'false'=22 -'forall'=17 -'functional'=4 -'if'=41 -'in'=42 -'inf'=29 -'let'=30 -'maximize'=8 -'may'=31 -'minimize'=9 -'must'=25 -'opposite'=10 -'scope'=23 -'then'=26 -'true'=27 -'unknown'=14 -'{'=60 -'|'=61 -'}'=62 -RULE_ANY_OTHER=73 -RULE_FULL_STOP=68 -RULE_ID=69 -RULE_INT=70 -RULE_ML_COMMENT=71 -RULE_QUOTED_ID=64 -RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67 -RULE_SL_COMMENT=65 -RULE_STRING=63 -RULE_TRANSITIVE_CLOSURE=66 -RULE_WS=72 +'false'=24 +'functional'=5 +'if'=44 +'import'=17 +'in'=45 +'inf'=32 +'let'=33 +'maximize'=9 +'minimize'=10 +'object'=18 +'opposite'=11 +'problem'=14 +'refers'=19 +'root'=28 +'scope'=25 +'then'=29 +'true'=30 +'unknown'=15 +'{'=64 +'|'=65 +'}'=66 +'~'=67 +RULE_ANY_OTHER=78 +RULE_FULL_STOP=73 +RULE_ID=74 +RULE_INT=75 +RULE_ML_COMMENT=76 +RULE_QUOTED_ID=69 +RULE_REFLEXIVE_TRANSITIVE_CLOSURE=72 +RULE_SL_COMMENT=70 +RULE_STRING=68 +RULE_TRANSITIVE_CLOSURE=71 +RULE_WS=77 diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.g b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.g index 3c496e8a..074932ca 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.g +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.g @@ -11,6 +11,8 @@ package org.eclipse.viatra.solver.language.parser.antlr.lexer; import org.eclipse.xtext.parser.antlr.Lexer; } +Containment : 'containment'; + Functional : 'functional'; Abstract : 'abstract'; @@ -25,19 +27,21 @@ Minimize : 'minimize'; Opposite : 'opposite'; -Current : 'current'; - Default : 'default'; Extends : 'extends'; -Unknown : 'unknown'; +Problem : 'problem'; -Exists : 'exists'; +Unknown : 'unknown'; Extern : 'extern'; -Forall : 'forall'; +Import : 'import'; + +Object : 'object'; + +Refers : 'refers'; Class : 'class'; @@ -53,7 +57,9 @@ Scope : 'scope'; Else : 'else'; -Must : 'must'; +Enum : 'enum'; + +Root : 'root'; Then : 'then'; @@ -65,16 +71,16 @@ Inf : 'inf'; Let : 'let'; -May : 'may'; - ExclamationMarkEqualsSign : '!='; HyphenMinusGreaterThanSign : '->'; -FullStopFullStop : '..'; - ColonHyphenMinus : ':-'; +ColonColon : '::'; + +ColonEqualsSign : ':='; + LessThanSignEqualsSign : '<='; EqualsSignEqualsSign : '=='; @@ -117,6 +123,8 @@ EqualsSign : '='; GreaterThanSign : '>'; +QuestionMark : '?'; + LeftSquareBracket : '['; RightSquareBracket : ']'; @@ -129,6 +137,8 @@ VerticalLine : '|'; RightCurlyBracket : '}'; +Tilde : '~'; + RULE_STRING : '"' ('\\' .|~(('\\'|'"')))* '"'; RULE_QUOTED_ID : '\'' ('\\' .|~(('\\'|'\'')))* '\''; diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.java index b113baaf..4281bac0 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.java +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.java @@ -12,77 +12,82 @@ import java.util.ArrayList; @SuppressWarnings("all") public class InternalSolverLanguageLexer extends Lexer { - public static final int EqualsSignGreaterThanSign=38; - public static final int True=27; - public static final int Count=19; - public static final int False=22; - public static final int Must=25; - public static final int FullStopFullStopFullStop=28; - public static final int LessThanSign=54; - public static final int Datatype=7; - public static final int LeftParenthesis=44; - public static final int Unknown=14; - public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67; - public static final int FullStopFullStop=34; - public static final int Then=26; + public static final int Enum=27; + public static final int Import=17; + public static final int EqualsSignGreaterThanSign=41; + public static final int True=30; + public static final int Count=21; + public static final int False=24; + public static final int FullStopFullStopFullStop=31; + public static final int LessThanSign=57; + public static final int Datatype=8; + public static final int LeftParenthesis=47; + public static final int Unknown=15; + public static final int RULE_REFLEXIVE_TRANSITIVE_CLOSURE=72; + public static final int Then=29; public static final int Extends=13; - public static final int Forall=17; - public static final int RightSquareBracket=58; - public static final int ExclamationMark=43; - public static final int Opposite=10; - public static final int GreaterThanSign=56; - public static final int RULE_ID=69; - public static final int RULE_QUOTED_ID=64; - public static final int RightParenthesis=45; - public static final int GreaterThanSignEqualsSign=39; - public static final int Functional=4; - public static final int EqualsSignEqualsSign=37; - public static final int VerticalLine=61; - public static final int PlusSign=47; - public static final int RULE_INT=70; - public static final int Contains=6; - public static final int RULE_ML_COMMENT=71; - public static final int RULE_TRANSITIVE_CLOSURE=66; - public static final int Class=18; - public static final int LeftSquareBracket=57; - public static final int RULE_FULL_STOP=68; - public static final int Current=11; - public static final int If=41; - public static final int Inf=29; - public static final int May=31; - public static final int In=42; - public static final int RULE_STRING=63; + public static final int RightSquareBracket=62; + public static final int ExclamationMark=46; + public static final int Opposite=11; + public static final int GreaterThanSign=59; + public static final int Root=28; + public static final int RULE_ID=74; + public static final int RULE_QUOTED_ID=69; + public static final int RightParenthesis=48; + public static final int ColonEqualsSign=38; + public static final int GreaterThanSignEqualsSign=42; + public static final int Functional=5; + public static final int ColonColon=37; + public static final int EqualsSignEqualsSign=40; + public static final int VerticalLine=65; + public static final int PlusSign=50; + public static final int RULE_INT=75; + public static final int Contains=7; + public static final int RULE_ML_COMMENT=76; + public static final int RULE_TRANSITIVE_CLOSURE=71; + public static final int Problem=14; + public static final int Object=18; + public static final int Class=20; + public static final int LeftSquareBracket=61; + public static final int RULE_FULL_STOP=73; + public static final int If=44; + public static final int Refers=19; + public static final int Inf=32; + public static final int In=45; + public static final int RULE_STRING=68; public static final int Extern=16; - public static final int RULE_SL_COMMENT=65; - public static final int Comma=48; - public static final int EqualsSign=55; - public static final int Empty=20; - public static final int As=40; - public static final int HyphenMinus=49; - public static final int Maximize=8; - public static final int LessThanSignEqualsSign=36; - public static final int Solidus=51; - public static final int Colon=52; - public static final int RightCurlyBracket=62; + public static final int RULE_SL_COMMENT=70; + public static final int Comma=51; + public static final int EqualsSign=58; + public static final int Empty=22; + public static final int As=43; + public static final int HyphenMinus=52; + public static final int Maximize=9; + public static final int LessThanSignEqualsSign=39; + public static final int Solidus=54; + public static final int Colon=55; + public static final int RightCurlyBracket=66; public static final int EOF=-1; - public static final int Asterisk=46; - public static final int FullStop=50; - public static final int RULE_WS=72; - public static final int Abstract=5; - public static final int Minimize=9; - public static final int LeftCurlyBracket=60; - public static final int Error=21; - public static final int RULE_ANY_OTHER=73; + public static final int Asterisk=49; + public static final int Containment=4; + public static final int FullStop=53; + public static final int RULE_WS=77; + public static final int Abstract=6; + public static final int Minimize=10; + public static final int LeftCurlyBracket=64; + public static final int Error=23; + public static final int Tilde=67; + public static final int RULE_ANY_OTHER=78; public static final int Default=12; - public static final int ColonHyphenMinus=35; - public static final int CircumflexAccent=59; - public static final int Semicolon=53; - public static final int Scope=23; - public static final int Exists=15; - public static final int Else=24; - public static final int Let=30; - public static final int ExclamationMarkEqualsSign=32; - public static final int HyphenMinusGreaterThanSign=33; + public static final int ColonHyphenMinus=36; + public static final int CircumflexAccent=63; + public static final int Semicolon=56; + public static final int Scope=25; + public static final int QuestionMark=60; + public static final int Else=26; + public static final int Let=33; + public static final int ExclamationMarkEqualsSign=34; + public static final int HyphenMinusGreaterThanSign=35; // delegates // delegators @@ -97,13 +102,34 @@ public class InternalSolverLanguageLexer extends Lexer { } public String getGrammarFileName() { return "InternalSolverLanguageLexer.g"; } + // $ANTLR start "Containment" + public final void mContainment() throws RecognitionException { + try { + int _type = Containment; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:14:13: ( 'containment' ) + // InternalSolverLanguageLexer.g:14:15: 'containment' + { + match("containment"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Containment" + // $ANTLR start "Functional" public final void mFunctional() throws RecognitionException { try { int _type = Functional; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:14:12: ( 'functional' ) - // InternalSolverLanguageLexer.g:14:14: 'functional' + // InternalSolverLanguageLexer.g:16:12: ( 'functional' ) + // InternalSolverLanguageLexer.g:16:14: 'functional' { match("functional"); @@ -123,8 +149,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Abstract; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:16:10: ( 'abstract' ) - // InternalSolverLanguageLexer.g:16:12: 'abstract' + // InternalSolverLanguageLexer.g:18:10: ( 'abstract' ) + // InternalSolverLanguageLexer.g:18:12: 'abstract' { match("abstract"); @@ -144,8 +170,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Contains; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:18:10: ( 'contains' ) - // InternalSolverLanguageLexer.g:18:12: 'contains' + // InternalSolverLanguageLexer.g:20:10: ( 'contains' ) + // InternalSolverLanguageLexer.g:20:12: 'contains' { match("contains"); @@ -165,8 +191,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Datatype; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:20:10: ( 'datatype' ) - // InternalSolverLanguageLexer.g:20:12: 'datatype' + // InternalSolverLanguageLexer.g:22:10: ( 'datatype' ) + // InternalSolverLanguageLexer.g:22:12: 'datatype' { match("datatype"); @@ -186,8 +212,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Maximize; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:22:10: ( 'maximize' ) - // InternalSolverLanguageLexer.g:22:12: 'maximize' + // InternalSolverLanguageLexer.g:24:10: ( 'maximize' ) + // InternalSolverLanguageLexer.g:24:12: 'maximize' { match("maximize"); @@ -207,8 +233,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Minimize; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:24:10: ( 'minimize' ) - // InternalSolverLanguageLexer.g:24:12: 'minimize' + // InternalSolverLanguageLexer.g:26:10: ( 'minimize' ) + // InternalSolverLanguageLexer.g:26:12: 'minimize' { match("minimize"); @@ -228,8 +254,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Opposite; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:26:10: ( 'opposite' ) - // InternalSolverLanguageLexer.g:26:12: 'opposite' + // InternalSolverLanguageLexer.g:28:10: ( 'opposite' ) + // InternalSolverLanguageLexer.g:28:12: 'opposite' { match("opposite"); @@ -244,27 +270,6 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Opposite" - // $ANTLR start "Current" - public final void mCurrent() throws RecognitionException { - try { - int _type = Current; - int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:28:9: ( 'current' ) - // InternalSolverLanguageLexer.g:28:11: 'current' - { - match("current"); - - - } - - state.type = _type; - state.channel = _channel; - } - finally { - } - } - // $ANTLR end "Current" - // $ANTLR start "Default" public final void mDefault() throws RecognitionException { try { @@ -307,15 +312,15 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Extends" - // $ANTLR start "Unknown" - public final void mUnknown() throws RecognitionException { + // $ANTLR start "Problem" + public final void mProblem() throws RecognitionException { try { - int _type = Unknown; + int _type = Problem; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:34:9: ( 'unknown' ) - // InternalSolverLanguageLexer.g:34:11: 'unknown' + // InternalSolverLanguageLexer.g:34:9: ( 'problem' ) + // InternalSolverLanguageLexer.g:34:11: 'problem' { - match("unknown"); + match("problem"); } @@ -326,17 +331,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "Unknown" + // $ANTLR end "Problem" - // $ANTLR start "Exists" - public final void mExists() throws RecognitionException { + // $ANTLR start "Unknown" + public final void mUnknown() throws RecognitionException { try { - int _type = Exists; + int _type = Unknown; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:36:8: ( 'exists' ) - // InternalSolverLanguageLexer.g:36:10: 'exists' + // InternalSolverLanguageLexer.g:36:9: ( 'unknown' ) + // InternalSolverLanguageLexer.g:36:11: 'unknown' { - match("exists"); + match("unknown"); } @@ -347,7 +352,7 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "Exists" + // $ANTLR end "Unknown" // $ANTLR start "Extern" public final void mExtern() throws RecognitionException { @@ -370,15 +375,15 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Extern" - // $ANTLR start "Forall" - public final void mForall() throws RecognitionException { + // $ANTLR start "Import" + public final void mImport() throws RecognitionException { try { - int _type = Forall; + int _type = Import; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:40:8: ( 'forall' ) - // InternalSolverLanguageLexer.g:40:10: 'forall' + // InternalSolverLanguageLexer.g:40:8: ( 'import' ) + // InternalSolverLanguageLexer.g:40:10: 'import' { - match("forall"); + match("import"); } @@ -389,15 +394,57 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "Forall" + // $ANTLR end "Import" + + // $ANTLR start "Object" + public final void mObject() throws RecognitionException { + try { + int _type = Object; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:42:8: ( 'object' ) + // InternalSolverLanguageLexer.g:42:10: 'object' + { + match("object"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Object" + + // $ANTLR start "Refers" + public final void mRefers() throws RecognitionException { + try { + int _type = Refers; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:44:8: ( 'refers' ) + // InternalSolverLanguageLexer.g:44:10: 'refers' + { + match("refers"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Refers" // $ANTLR start "Class" public final void mClass() throws RecognitionException { try { int _type = Class; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:42:7: ( 'class' ) - // InternalSolverLanguageLexer.g:42:9: 'class' + // InternalSolverLanguageLexer.g:46:7: ( 'class' ) + // InternalSolverLanguageLexer.g:46:9: 'class' { match("class"); @@ -417,8 +464,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Count; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:44:7: ( 'count' ) - // InternalSolverLanguageLexer.g:44:9: 'count' + // InternalSolverLanguageLexer.g:48:7: ( 'count' ) + // InternalSolverLanguageLexer.g:48:9: 'count' { match("count"); @@ -438,8 +485,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Empty; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:46:7: ( 'empty' ) - // InternalSolverLanguageLexer.g:46:9: 'empty' + // InternalSolverLanguageLexer.g:50:7: ( 'empty' ) + // InternalSolverLanguageLexer.g:50:9: 'empty' { match("empty"); @@ -459,8 +506,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Error; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:48:7: ( 'error' ) - // InternalSolverLanguageLexer.g:48:9: 'error' + // InternalSolverLanguageLexer.g:52:7: ( 'error' ) + // InternalSolverLanguageLexer.g:52:9: 'error' { match("error"); @@ -480,8 +527,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = False; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:50:7: ( 'false' ) - // InternalSolverLanguageLexer.g:50:9: 'false' + // InternalSolverLanguageLexer.g:54:7: ( 'false' ) + // InternalSolverLanguageLexer.g:54:9: 'false' { match("false"); @@ -501,8 +548,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Scope; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:52:7: ( 'scope' ) - // InternalSolverLanguageLexer.g:52:9: 'scope' + // InternalSolverLanguageLexer.g:56:7: ( 'scope' ) + // InternalSolverLanguageLexer.g:56:9: 'scope' { match("scope"); @@ -522,8 +569,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Else; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:54:6: ( 'else' ) - // InternalSolverLanguageLexer.g:54:8: 'else' + // InternalSolverLanguageLexer.g:58:6: ( 'else' ) + // InternalSolverLanguageLexer.g:58:8: 'else' { match("else"); @@ -538,15 +585,15 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Else" - // $ANTLR start "Must" - public final void mMust() throws RecognitionException { + // $ANTLR start "Enum" + public final void mEnum() throws RecognitionException { try { - int _type = Must; + int _type = Enum; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:56:6: ( 'must' ) - // InternalSolverLanguageLexer.g:56:8: 'must' + // InternalSolverLanguageLexer.g:60:6: ( 'enum' ) + // InternalSolverLanguageLexer.g:60:8: 'enum' { - match("must"); + match("enum"); } @@ -557,15 +604,36 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "Must" + // $ANTLR end "Enum" + + // $ANTLR start "Root" + public final void mRoot() throws RecognitionException { + try { + int _type = Root; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:62:6: ( 'root' ) + // InternalSolverLanguageLexer.g:62:8: 'root' + { + match("root"); + + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Root" // $ANTLR start "Then" public final void mThen() throws RecognitionException { try { int _type = Then; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:58:6: ( 'then' ) - // InternalSolverLanguageLexer.g:58:8: 'then' + // InternalSolverLanguageLexer.g:64:6: ( 'then' ) + // InternalSolverLanguageLexer.g:64:8: 'then' { match("then"); @@ -585,8 +653,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = True; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:60:6: ( 'true' ) - // InternalSolverLanguageLexer.g:60:8: 'true' + // InternalSolverLanguageLexer.g:66:6: ( 'true' ) + // InternalSolverLanguageLexer.g:66:8: 'true' { match("true"); @@ -606,8 +674,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = FullStopFullStopFullStop; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:62:26: ( '...' ) - // InternalSolverLanguageLexer.g:62:28: '...' + // InternalSolverLanguageLexer.g:68:26: ( '...' ) + // InternalSolverLanguageLexer.g:68:28: '...' { match("..."); @@ -627,8 +695,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Inf; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:64:5: ( 'inf' ) - // InternalSolverLanguageLexer.g:64:7: 'inf' + // InternalSolverLanguageLexer.g:70:5: ( 'inf' ) + // InternalSolverLanguageLexer.g:70:7: 'inf' { match("inf"); @@ -648,8 +716,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Let; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:66:5: ( 'let' ) - // InternalSolverLanguageLexer.g:66:7: 'let' + // InternalSolverLanguageLexer.g:72:5: ( 'let' ) + // InternalSolverLanguageLexer.g:72:7: 'let' { match("let"); @@ -664,15 +732,15 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "Let" - // $ANTLR start "May" - public final void mMay() throws RecognitionException { + // $ANTLR start "ExclamationMarkEqualsSign" + public final void mExclamationMarkEqualsSign() throws RecognitionException { try { - int _type = May; + int _type = ExclamationMarkEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:68:5: ( 'may' ) - // InternalSolverLanguageLexer.g:68:7: 'may' + // InternalSolverLanguageLexer.g:74:27: ( '!=' ) + // InternalSolverLanguageLexer.g:74:29: '!=' { - match("may"); + match("!="); } @@ -683,17 +751,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "May" + // $ANTLR end "ExclamationMarkEqualsSign" - // $ANTLR start "ExclamationMarkEqualsSign" - public final void mExclamationMarkEqualsSign() throws RecognitionException { + // $ANTLR start "HyphenMinusGreaterThanSign" + public final void mHyphenMinusGreaterThanSign() throws RecognitionException { try { - int _type = ExclamationMarkEqualsSign; + int _type = HyphenMinusGreaterThanSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:70:27: ( '!=' ) - // InternalSolverLanguageLexer.g:70:29: '!=' + // InternalSolverLanguageLexer.g:76:28: ( '->' ) + // InternalSolverLanguageLexer.g:76:30: '->' { - match("!="); + match("->"); } @@ -704,17 +772,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "ExclamationMarkEqualsSign" + // $ANTLR end "HyphenMinusGreaterThanSign" - // $ANTLR start "HyphenMinusGreaterThanSign" - public final void mHyphenMinusGreaterThanSign() throws RecognitionException { + // $ANTLR start "ColonHyphenMinus" + public final void mColonHyphenMinus() throws RecognitionException { try { - int _type = HyphenMinusGreaterThanSign; + int _type = ColonHyphenMinus; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:72:28: ( '->' ) - // InternalSolverLanguageLexer.g:72:30: '->' + // InternalSolverLanguageLexer.g:78:18: ( ':-' ) + // InternalSolverLanguageLexer.g:78:20: ':-' { - match("->"); + match(":-"); } @@ -725,17 +793,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "HyphenMinusGreaterThanSign" + // $ANTLR end "ColonHyphenMinus" - // $ANTLR start "FullStopFullStop" - public final void mFullStopFullStop() throws RecognitionException { + // $ANTLR start "ColonColon" + public final void mColonColon() throws RecognitionException { try { - int _type = FullStopFullStop; + int _type = ColonColon; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:74:18: ( '..' ) - // InternalSolverLanguageLexer.g:74:20: '..' + // InternalSolverLanguageLexer.g:80:12: ( '::' ) + // InternalSolverLanguageLexer.g:80:14: '::' { - match(".."); + match("::"); } @@ -746,17 +814,17 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "FullStopFullStop" + // $ANTLR end "ColonColon" - // $ANTLR start "ColonHyphenMinus" - public final void mColonHyphenMinus() throws RecognitionException { + // $ANTLR start "ColonEqualsSign" + public final void mColonEqualsSign() throws RecognitionException { try { - int _type = ColonHyphenMinus; + int _type = ColonEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:76:18: ( ':-' ) - // InternalSolverLanguageLexer.g:76:20: ':-' + // InternalSolverLanguageLexer.g:82:17: ( ':=' ) + // InternalSolverLanguageLexer.g:82:19: ':=' { - match(":-"); + match(":="); } @@ -767,15 +835,15 @@ public class InternalSolverLanguageLexer extends Lexer { finally { } } - // $ANTLR end "ColonHyphenMinus" + // $ANTLR end "ColonEqualsSign" // $ANTLR start "LessThanSignEqualsSign" public final void mLessThanSignEqualsSign() throws RecognitionException { try { int _type = LessThanSignEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:78:24: ( '<=' ) - // InternalSolverLanguageLexer.g:78:26: '<=' + // InternalSolverLanguageLexer.g:84:24: ( '<=' ) + // InternalSolverLanguageLexer.g:84:26: '<=' { match("<="); @@ -795,8 +863,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = EqualsSignEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:80:22: ( '==' ) - // InternalSolverLanguageLexer.g:80:24: '==' + // InternalSolverLanguageLexer.g:86:22: ( '==' ) + // InternalSolverLanguageLexer.g:86:24: '==' { match("=="); @@ -816,8 +884,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = EqualsSignGreaterThanSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:82:27: ( '=>' ) - // InternalSolverLanguageLexer.g:82:29: '=>' + // InternalSolverLanguageLexer.g:88:27: ( '=>' ) + // InternalSolverLanguageLexer.g:88:29: '=>' { match("=>"); @@ -837,8 +905,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = GreaterThanSignEqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:84:27: ( '>=' ) - // InternalSolverLanguageLexer.g:84:29: '>=' + // InternalSolverLanguageLexer.g:90:27: ( '>=' ) + // InternalSolverLanguageLexer.g:90:29: '>=' { match(">="); @@ -858,8 +926,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = As; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:86:4: ( 'as' ) - // InternalSolverLanguageLexer.g:86:6: 'as' + // InternalSolverLanguageLexer.g:92:4: ( 'as' ) + // InternalSolverLanguageLexer.g:92:6: 'as' { match("as"); @@ -879,8 +947,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = If; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:88:4: ( 'if' ) - // InternalSolverLanguageLexer.g:88:6: 'if' + // InternalSolverLanguageLexer.g:94:4: ( 'if' ) + // InternalSolverLanguageLexer.g:94:6: 'if' { match("if"); @@ -900,8 +968,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = In; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:90:4: ( 'in' ) - // InternalSolverLanguageLexer.g:90:6: 'in' + // InternalSolverLanguageLexer.g:96:4: ( 'in' ) + // InternalSolverLanguageLexer.g:96:6: 'in' { match("in"); @@ -921,8 +989,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = ExclamationMark; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:92:17: ( '!' ) - // InternalSolverLanguageLexer.g:92:19: '!' + // InternalSolverLanguageLexer.g:98:17: ( '!' ) + // InternalSolverLanguageLexer.g:98:19: '!' { match('!'); @@ -941,8 +1009,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = LeftParenthesis; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:94:17: ( '(' ) - // InternalSolverLanguageLexer.g:94:19: '(' + // InternalSolverLanguageLexer.g:100:17: ( '(' ) + // InternalSolverLanguageLexer.g:100:19: '(' { match('('); @@ -961,8 +1029,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RightParenthesis; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:96:18: ( ')' ) - // InternalSolverLanguageLexer.g:96:20: ')' + // InternalSolverLanguageLexer.g:102:18: ( ')' ) + // InternalSolverLanguageLexer.g:102:20: ')' { match(')'); @@ -981,8 +1049,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Asterisk; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:98:10: ( '*' ) - // InternalSolverLanguageLexer.g:98:12: '*' + // InternalSolverLanguageLexer.g:104:10: ( '*' ) + // InternalSolverLanguageLexer.g:104:12: '*' { match('*'); @@ -1001,8 +1069,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = PlusSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:100:10: ( '+' ) - // InternalSolverLanguageLexer.g:100:12: '+' + // InternalSolverLanguageLexer.g:106:10: ( '+' ) + // InternalSolverLanguageLexer.g:106:12: '+' { match('+'); @@ -1021,8 +1089,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Comma; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:102:7: ( ',' ) - // InternalSolverLanguageLexer.g:102:9: ',' + // InternalSolverLanguageLexer.g:108:7: ( ',' ) + // InternalSolverLanguageLexer.g:108:9: ',' { match(','); @@ -1041,8 +1109,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = HyphenMinus; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:104:13: ( '-' ) - // InternalSolverLanguageLexer.g:104:15: '-' + // InternalSolverLanguageLexer.g:110:13: ( '-' ) + // InternalSolverLanguageLexer.g:110:15: '-' { match('-'); @@ -1061,8 +1129,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = FullStop; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:106:10: ( '.' ) - // InternalSolverLanguageLexer.g:106:12: '.' + // InternalSolverLanguageLexer.g:112:10: ( '.' ) + // InternalSolverLanguageLexer.g:112:12: '.' { match('.'); @@ -1081,8 +1149,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Solidus; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:108:9: ( '/' ) - // InternalSolverLanguageLexer.g:108:11: '/' + // InternalSolverLanguageLexer.g:114:9: ( '/' ) + // InternalSolverLanguageLexer.g:114:11: '/' { match('/'); @@ -1101,8 +1169,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Colon; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:110:7: ( ':' ) - // InternalSolverLanguageLexer.g:110:9: ':' + // InternalSolverLanguageLexer.g:116:7: ( ':' ) + // InternalSolverLanguageLexer.g:116:9: ':' { match(':'); @@ -1121,8 +1189,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = Semicolon; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:112:11: ( ';' ) - // InternalSolverLanguageLexer.g:112:13: ';' + // InternalSolverLanguageLexer.g:118:11: ( ';' ) + // InternalSolverLanguageLexer.g:118:13: ';' { match(';'); @@ -1141,8 +1209,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = LessThanSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:114:14: ( '<' ) - // InternalSolverLanguageLexer.g:114:16: '<' + // InternalSolverLanguageLexer.g:120:14: ( '<' ) + // InternalSolverLanguageLexer.g:120:16: '<' { match('<'); @@ -1161,8 +1229,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = EqualsSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:116:12: ( '=' ) - // InternalSolverLanguageLexer.g:116:14: '=' + // InternalSolverLanguageLexer.g:122:12: ( '=' ) + // InternalSolverLanguageLexer.g:122:14: '=' { match('='); @@ -1181,8 +1249,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = GreaterThanSign; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:118:17: ( '>' ) - // InternalSolverLanguageLexer.g:118:19: '>' + // InternalSolverLanguageLexer.g:124:17: ( '>' ) + // InternalSolverLanguageLexer.g:124:19: '>' { match('>'); @@ -1196,13 +1264,33 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "GreaterThanSign" + // $ANTLR start "QuestionMark" + public final void mQuestionMark() throws RecognitionException { + try { + int _type = QuestionMark; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:126:14: ( '?' ) + // InternalSolverLanguageLexer.g:126:16: '?' + { + match('?'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "QuestionMark" + // $ANTLR start "LeftSquareBracket" public final void mLeftSquareBracket() throws RecognitionException { try { int _type = LeftSquareBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:120:19: ( '[' ) - // InternalSolverLanguageLexer.g:120:21: '[' + // InternalSolverLanguageLexer.g:128:19: ( '[' ) + // InternalSolverLanguageLexer.g:128:21: '[' { match('['); @@ -1221,8 +1309,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RightSquareBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:122:20: ( ']' ) - // InternalSolverLanguageLexer.g:122:22: ']' + // InternalSolverLanguageLexer.g:130:20: ( ']' ) + // InternalSolverLanguageLexer.g:130:22: ']' { match(']'); @@ -1241,8 +1329,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = CircumflexAccent; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:124:18: ( '^' ) - // InternalSolverLanguageLexer.g:124:20: '^' + // InternalSolverLanguageLexer.g:132:18: ( '^' ) + // InternalSolverLanguageLexer.g:132:20: '^' { match('^'); @@ -1261,8 +1349,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = LeftCurlyBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:126:18: ( '{' ) - // InternalSolverLanguageLexer.g:126:20: '{' + // InternalSolverLanguageLexer.g:134:18: ( '{' ) + // InternalSolverLanguageLexer.g:134:20: '{' { match('{'); @@ -1281,8 +1369,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = VerticalLine; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:128:14: ( '|' ) - // InternalSolverLanguageLexer.g:128:16: '|' + // InternalSolverLanguageLexer.g:136:14: ( '|' ) + // InternalSolverLanguageLexer.g:136:16: '|' { match('|'); @@ -1301,8 +1389,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RightCurlyBracket; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:130:19: ( '}' ) - // InternalSolverLanguageLexer.g:130:21: '}' + // InternalSolverLanguageLexer.g:138:19: ( '}' ) + // InternalSolverLanguageLexer.g:138:21: '}' { match('}'); @@ -1316,16 +1404,36 @@ public class InternalSolverLanguageLexer extends Lexer { } // $ANTLR end "RightCurlyBracket" + // $ANTLR start "Tilde" + public final void mTilde() throws RecognitionException { + try { + int _type = Tilde; + int _channel = DEFAULT_TOKEN_CHANNEL; + // InternalSolverLanguageLexer.g:140:7: ( '~' ) + // InternalSolverLanguageLexer.g:140:9: '~' + { + match('~'); + + } + + state.type = _type; + state.channel = _channel; + } + finally { + } + } + // $ANTLR end "Tilde" + // $ANTLR start "RULE_STRING" public final void mRULE_STRING() throws RecognitionException { try { int _type = RULE_STRING; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:132:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' ) - // InternalSolverLanguageLexer.g:132:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' + // InternalSolverLanguageLexer.g:142:13: ( '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' ) + // InternalSolverLanguageLexer.g:142:15: '\"' ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* '\"' { match('\"'); - // InternalSolverLanguageLexer.g:132:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* + // InternalSolverLanguageLexer.g:142:19: ( '\\\\' . | ~ ( ( '\\\\' | '\"' ) ) )* loop1: do { int alt1=3; @@ -1341,7 +1449,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt1) { case 1 : - // InternalSolverLanguageLexer.g:132:20: '\\\\' . + // InternalSolverLanguageLexer.g:142:20: '\\\\' . { match('\\'); matchAny(); @@ -1349,7 +1457,7 @@ public class InternalSolverLanguageLexer extends Lexer { } break; case 2 : - // InternalSolverLanguageLexer.g:132:27: ~ ( ( '\\\\' | '\"' ) ) + // InternalSolverLanguageLexer.g:142:27: ~ ( ( '\\\\' | '\"' ) ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1386,11 +1494,11 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_QUOTED_ID; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:134:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) - // InternalSolverLanguageLexer.g:134:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' + // InternalSolverLanguageLexer.g:144:16: ( '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) + // InternalSolverLanguageLexer.g:144:18: '\\'' ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' { match('\''); - // InternalSolverLanguageLexer.g:134:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* + // InternalSolverLanguageLexer.g:144:23: ( '\\\\' . | ~ ( ( '\\\\' | '\\'' ) ) )* loop2: do { int alt2=3; @@ -1406,7 +1514,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt2) { case 1 : - // InternalSolverLanguageLexer.g:134:24: '\\\\' . + // InternalSolverLanguageLexer.g:144:24: '\\\\' . { match('\\'); matchAny(); @@ -1414,7 +1522,7 @@ public class InternalSolverLanguageLexer extends Lexer { } break; case 2 : - // InternalSolverLanguageLexer.g:134:31: ~ ( ( '\\\\' | '\\'' ) ) + // InternalSolverLanguageLexer.g:144:31: ~ ( ( '\\\\' | '\\'' ) ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1451,10 +1559,10 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_SL_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:136:17: ( ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) - // InternalSolverLanguageLexer.g:136:19: ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? + // InternalSolverLanguageLexer.g:146:17: ( ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? ) + // InternalSolverLanguageLexer.g:146:19: ( '%' | '//' ) (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? { - // InternalSolverLanguageLexer.g:136:19: ( '%' | '//' ) + // InternalSolverLanguageLexer.g:146:19: ( '%' | '//' ) int alt3=2; int LA3_0 = input.LA(1); @@ -1472,14 +1580,14 @@ public class InternalSolverLanguageLexer extends Lexer { } switch (alt3) { case 1 : - // InternalSolverLanguageLexer.g:136:20: '%' + // InternalSolverLanguageLexer.g:146:20: '%' { match('%'); } break; case 2 : - // InternalSolverLanguageLexer.g:136:24: '//' + // InternalSolverLanguageLexer.g:146:24: '//' { match("//"); @@ -1489,7 +1597,7 @@ public class InternalSolverLanguageLexer extends Lexer { } - // InternalSolverLanguageLexer.g:136:30: (~ ( ( '\\n' | '\\r' ) ) )* + // InternalSolverLanguageLexer.g:146:30: (~ ( ( '\\n' | '\\r' ) ) )* loop4: do { int alt4=2; @@ -1502,7 +1610,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt4) { case 1 : - // InternalSolverLanguageLexer.g:136:30: ~ ( ( '\\n' | '\\r' ) ) + // InternalSolverLanguageLexer.g:146:30: ~ ( ( '\\n' | '\\r' ) ) { if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFF') ) { input.consume(); @@ -1522,7 +1630,7 @@ public class InternalSolverLanguageLexer extends Lexer { } } while (true); - // InternalSolverLanguageLexer.g:136:46: ( ( '\\r' )? '\\n' )? + // InternalSolverLanguageLexer.g:146:46: ( ( '\\r' )? '\\n' )? int alt6=2; int LA6_0 = input.LA(1); @@ -1531,9 +1639,9 @@ public class InternalSolverLanguageLexer extends Lexer { } switch (alt6) { case 1 : - // InternalSolverLanguageLexer.g:136:47: ( '\\r' )? '\\n' + // InternalSolverLanguageLexer.g:146:47: ( '\\r' )? '\\n' { - // InternalSolverLanguageLexer.g:136:47: ( '\\r' )? + // InternalSolverLanguageLexer.g:146:47: ( '\\r' )? int alt5=2; int LA5_0 = input.LA(1); @@ -1542,7 +1650,7 @@ public class InternalSolverLanguageLexer extends Lexer { } switch (alt5) { case 1 : - // InternalSolverLanguageLexer.g:136:47: '\\r' + // InternalSolverLanguageLexer.g:146:47: '\\r' { match('\r'); @@ -1572,8 +1680,8 @@ public class InternalSolverLanguageLexer extends Lexer { // $ANTLR start "RULE_TRANSITIVE_CLOSURE" public final void mRULE_TRANSITIVE_CLOSURE() throws RecognitionException { try { - // InternalSolverLanguageLexer.g:138:34: () - // InternalSolverLanguageLexer.g:138:36: + // InternalSolverLanguageLexer.g:148:34: () + // InternalSolverLanguageLexer.g:148:36: { } @@ -1586,8 +1694,8 @@ public class InternalSolverLanguageLexer extends Lexer { // $ANTLR start "RULE_REFLEXIVE_TRANSITIVE_CLOSURE" public final void mRULE_REFLEXIVE_TRANSITIVE_CLOSURE() throws RecognitionException { try { - // InternalSolverLanguageLexer.g:140:44: () - // InternalSolverLanguageLexer.g:140:46: + // InternalSolverLanguageLexer.g:150:44: () + // InternalSolverLanguageLexer.g:150:46: { } @@ -1600,8 +1708,8 @@ public class InternalSolverLanguageLexer extends Lexer { // $ANTLR start "RULE_FULL_STOP" public final void mRULE_FULL_STOP() throws RecognitionException { try { - // InternalSolverLanguageLexer.g:142:25: () - // InternalSolverLanguageLexer.g:142:27: + // InternalSolverLanguageLexer.g:152:25: () + // InternalSolverLanguageLexer.g:152:27: { } @@ -1616,10 +1724,10 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_ID; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:144:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) - // InternalSolverLanguageLexer.g:144:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + // InternalSolverLanguageLexer.g:154:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* ) + // InternalSolverLanguageLexer.g:154:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* { - // InternalSolverLanguageLexer.g:144:11: ( '^' )? + // InternalSolverLanguageLexer.g:154:11: ( '^' )? int alt7=2; int LA7_0 = input.LA(1); @@ -1628,7 +1736,7 @@ public class InternalSolverLanguageLexer extends Lexer { } switch (alt7) { case 1 : - // InternalSolverLanguageLexer.g:144:11: '^' + // InternalSolverLanguageLexer.g:154:11: '^' { match('^'); @@ -1646,7 +1754,7 @@ public class InternalSolverLanguageLexer extends Lexer { recover(mse); throw mse;} - // InternalSolverLanguageLexer.g:144:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* + // InternalSolverLanguageLexer.g:154:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* loop8: do { int alt8=2; @@ -1695,10 +1803,10 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_INT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:146:10: ( ( '0' .. '9' )+ ) - // InternalSolverLanguageLexer.g:146:12: ( '0' .. '9' )+ + // InternalSolverLanguageLexer.g:156:10: ( ( '0' .. '9' )+ ) + // InternalSolverLanguageLexer.g:156:12: ( '0' .. '9' )+ { - // InternalSolverLanguageLexer.g:146:12: ( '0' .. '9' )+ + // InternalSolverLanguageLexer.g:156:12: ( '0' .. '9' )+ int cnt9=0; loop9: do { @@ -1712,7 +1820,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt9) { case 1 : - // InternalSolverLanguageLexer.g:146:13: '0' .. '9' + // InternalSolverLanguageLexer.g:156:13: '0' .. '9' { matchRange('0','9'); @@ -1744,12 +1852,12 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_ML_COMMENT; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:148:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) - // InternalSolverLanguageLexer.g:148:19: '/*' ( options {greedy=false; } : . )* '*/' + // InternalSolverLanguageLexer.g:158:17: ( '/*' ( options {greedy=false; } : . )* '*/' ) + // InternalSolverLanguageLexer.g:158:19: '/*' ( options {greedy=false; } : . )* '*/' { match("/*"); - // InternalSolverLanguageLexer.g:148:24: ( options {greedy=false; } : . )* + // InternalSolverLanguageLexer.g:158:24: ( options {greedy=false; } : . )* loop10: do { int alt10=2; @@ -1774,7 +1882,7 @@ public class InternalSolverLanguageLexer extends Lexer { switch (alt10) { case 1 : - // InternalSolverLanguageLexer.g:148:52: . + // InternalSolverLanguageLexer.g:158:52: . { matchAny(); @@ -1804,10 +1912,10 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_WS; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:150:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) - // InternalSolverLanguageLexer.g:150:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // InternalSolverLanguageLexer.g:160:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ ) + // InternalSolverLanguageLexer.g:160:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ { - // InternalSolverLanguageLexer.g:150:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ + // InternalSolverLanguageLexer.g:160:11: ( ' ' | '\\t' | '\\r' | '\\n' )+ int cnt11=0; loop11: do { @@ -1861,8 +1969,8 @@ public class InternalSolverLanguageLexer extends Lexer { try { int _type = RULE_ANY_OTHER; int _channel = DEFAULT_TOKEN_CHANNEL; - // InternalSolverLanguageLexer.g:152:16: ( . ) - // InternalSolverLanguageLexer.g:152:18: . + // InternalSolverLanguageLexer.g:162:16: ( . ) + // InternalSolverLanguageLexer.g:162:18: . { matchAny(); @@ -1877,474 +1985,509 @@ public class InternalSolverLanguageLexer extends Lexer { // $ANTLR end "RULE_ANY_OTHER" public void mTokens() throws RecognitionException { - // InternalSolverLanguageLexer.g:1:8: ( Functional | Abstract | Contains | Datatype | Maximize | Minimize | Opposite | Current | Default | Extends | Unknown | Exists | Extern | Forall | Class | Count | Empty | Error | False | Scope | Else | Must | Then | True | FullStopFullStopFullStop | Inf | Let | May | ExclamationMarkEqualsSign | HyphenMinusGreaterThanSign | FullStopFullStop | ColonHyphenMinus | LessThanSignEqualsSign | EqualsSignEqualsSign | EqualsSignGreaterThanSign | GreaterThanSignEqualsSign | As | If | In | ExclamationMark | LeftParenthesis | RightParenthesis | Asterisk | PlusSign | Comma | HyphenMinus | FullStop | Solidus | Colon | Semicolon | LessThanSign | EqualsSign | GreaterThanSign | LeftSquareBracket | RightSquareBracket | CircumflexAccent | LeftCurlyBracket | VerticalLine | RightCurlyBracket | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER ) - int alt12=67; + // InternalSolverLanguageLexer.g:1:8: ( Containment | Functional | Abstract | Contains | Datatype | Maximize | Minimize | Opposite | Default | Extends | Problem | Unknown | Extern | Import | Object | Refers | Class | Count | Empty | Error | False | Scope | Else | Enum | Root | Then | True | FullStopFullStopFullStop | Inf | Let | ExclamationMarkEqualsSign | HyphenMinusGreaterThanSign | ColonHyphenMinus | ColonColon | ColonEqualsSign | LessThanSignEqualsSign | EqualsSignEqualsSign | EqualsSignGreaterThanSign | GreaterThanSignEqualsSign | As | If | In | ExclamationMark | LeftParenthesis | RightParenthesis | Asterisk | PlusSign | Comma | HyphenMinus | FullStop | Solidus | Colon | Semicolon | LessThanSign | EqualsSign | GreaterThanSign | QuestionMark | LeftSquareBracket | RightSquareBracket | CircumflexAccent | LeftCurlyBracket | VerticalLine | RightCurlyBracket | Tilde | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER ) + int alt12=72; alt12 = dfa12.predict(input); switch (alt12) { case 1 : - // InternalSolverLanguageLexer.g:1:10: Functional + // InternalSolverLanguageLexer.g:1:10: Containment { - mFunctional(); + mContainment(); } break; case 2 : - // InternalSolverLanguageLexer.g:1:21: Abstract + // InternalSolverLanguageLexer.g:1:22: Functional { - mAbstract(); + mFunctional(); } break; case 3 : - // InternalSolverLanguageLexer.g:1:30: Contains + // InternalSolverLanguageLexer.g:1:33: Abstract { - mContains(); + mAbstract(); } break; case 4 : - // InternalSolverLanguageLexer.g:1:39: Datatype + // InternalSolverLanguageLexer.g:1:42: Contains { - mDatatype(); + mContains(); } break; case 5 : - // InternalSolverLanguageLexer.g:1:48: Maximize + // InternalSolverLanguageLexer.g:1:51: Datatype { - mMaximize(); + mDatatype(); } break; case 6 : - // InternalSolverLanguageLexer.g:1:57: Minimize + // InternalSolverLanguageLexer.g:1:60: Maximize { - mMinimize(); + mMaximize(); } break; case 7 : - // InternalSolverLanguageLexer.g:1:66: Opposite + // InternalSolverLanguageLexer.g:1:69: Minimize { - mOpposite(); + mMinimize(); } break; case 8 : - // InternalSolverLanguageLexer.g:1:75: Current + // InternalSolverLanguageLexer.g:1:78: Opposite { - mCurrent(); + mOpposite(); } break; case 9 : - // InternalSolverLanguageLexer.g:1:83: Default + // InternalSolverLanguageLexer.g:1:87: Default { mDefault(); } break; case 10 : - // InternalSolverLanguageLexer.g:1:91: Extends + // InternalSolverLanguageLexer.g:1:95: Extends { mExtends(); } break; case 11 : - // InternalSolverLanguageLexer.g:1:99: Unknown + // InternalSolverLanguageLexer.g:1:103: Problem { - mUnknown(); + mProblem(); } break; case 12 : - // InternalSolverLanguageLexer.g:1:107: Exists + // InternalSolverLanguageLexer.g:1:111: Unknown { - mExists(); + mUnknown(); } break; case 13 : - // InternalSolverLanguageLexer.g:1:114: Extern + // InternalSolverLanguageLexer.g:1:119: Extern { mExtern(); } break; case 14 : - // InternalSolverLanguageLexer.g:1:121: Forall + // InternalSolverLanguageLexer.g:1:126: Import { - mForall(); + mImport(); } break; case 15 : - // InternalSolverLanguageLexer.g:1:128: Class + // InternalSolverLanguageLexer.g:1:133: Object { - mClass(); + mObject(); } break; case 16 : - // InternalSolverLanguageLexer.g:1:134: Count + // InternalSolverLanguageLexer.g:1:140: Refers { - mCount(); + mRefers(); } break; case 17 : - // InternalSolverLanguageLexer.g:1:140: Empty + // InternalSolverLanguageLexer.g:1:147: Class { - mEmpty(); + mClass(); } break; case 18 : - // InternalSolverLanguageLexer.g:1:146: Error + // InternalSolverLanguageLexer.g:1:153: Count { - mError(); + mCount(); } break; case 19 : - // InternalSolverLanguageLexer.g:1:152: False + // InternalSolverLanguageLexer.g:1:159: Empty { - mFalse(); + mEmpty(); } break; case 20 : - // InternalSolverLanguageLexer.g:1:158: Scope + // InternalSolverLanguageLexer.g:1:165: Error { - mScope(); + mError(); } break; case 21 : - // InternalSolverLanguageLexer.g:1:164: Else + // InternalSolverLanguageLexer.g:1:171: False { - mElse(); + mFalse(); } break; case 22 : - // InternalSolverLanguageLexer.g:1:169: Must + // InternalSolverLanguageLexer.g:1:177: Scope { - mMust(); + mScope(); } break; case 23 : - // InternalSolverLanguageLexer.g:1:174: Then + // InternalSolverLanguageLexer.g:1:183: Else { - mThen(); + mElse(); } break; case 24 : - // InternalSolverLanguageLexer.g:1:179: True + // InternalSolverLanguageLexer.g:1:188: Enum { - mTrue(); + mEnum(); } break; case 25 : - // InternalSolverLanguageLexer.g:1:184: FullStopFullStopFullStop + // InternalSolverLanguageLexer.g:1:193: Root { - mFullStopFullStopFullStop(); + mRoot(); } break; case 26 : - // InternalSolverLanguageLexer.g:1:209: Inf + // InternalSolverLanguageLexer.g:1:198: Then { - mInf(); + mThen(); } break; case 27 : - // InternalSolverLanguageLexer.g:1:213: Let + // InternalSolverLanguageLexer.g:1:203: True { - mLet(); + mTrue(); } break; case 28 : - // InternalSolverLanguageLexer.g:1:217: May + // InternalSolverLanguageLexer.g:1:208: FullStopFullStopFullStop { - mMay(); + mFullStopFullStopFullStop(); } break; case 29 : - // InternalSolverLanguageLexer.g:1:221: ExclamationMarkEqualsSign + // InternalSolverLanguageLexer.g:1:233: Inf { - mExclamationMarkEqualsSign(); + mInf(); } break; case 30 : - // InternalSolverLanguageLexer.g:1:247: HyphenMinusGreaterThanSign + // InternalSolverLanguageLexer.g:1:237: Let { - mHyphenMinusGreaterThanSign(); + mLet(); } break; case 31 : - // InternalSolverLanguageLexer.g:1:274: FullStopFullStop + // InternalSolverLanguageLexer.g:1:241: ExclamationMarkEqualsSign { - mFullStopFullStop(); + mExclamationMarkEqualsSign(); } break; case 32 : - // InternalSolverLanguageLexer.g:1:291: ColonHyphenMinus + // InternalSolverLanguageLexer.g:1:267: HyphenMinusGreaterThanSign { - mColonHyphenMinus(); + mHyphenMinusGreaterThanSign(); } break; case 33 : - // InternalSolverLanguageLexer.g:1:308: LessThanSignEqualsSign + // InternalSolverLanguageLexer.g:1:294: ColonHyphenMinus { - mLessThanSignEqualsSign(); + mColonHyphenMinus(); } break; case 34 : - // InternalSolverLanguageLexer.g:1:331: EqualsSignEqualsSign + // InternalSolverLanguageLexer.g:1:311: ColonColon { - mEqualsSignEqualsSign(); + mColonColon(); } break; case 35 : - // InternalSolverLanguageLexer.g:1:352: EqualsSignGreaterThanSign + // InternalSolverLanguageLexer.g:1:322: ColonEqualsSign { - mEqualsSignGreaterThanSign(); + mColonEqualsSign(); } break; case 36 : - // InternalSolverLanguageLexer.g:1:378: GreaterThanSignEqualsSign + // InternalSolverLanguageLexer.g:1:338: LessThanSignEqualsSign { - mGreaterThanSignEqualsSign(); + mLessThanSignEqualsSign(); } break; case 37 : - // InternalSolverLanguageLexer.g:1:404: As + // InternalSolverLanguageLexer.g:1:361: EqualsSignEqualsSign { - mAs(); + mEqualsSignEqualsSign(); } break; case 38 : - // InternalSolverLanguageLexer.g:1:407: If + // InternalSolverLanguageLexer.g:1:382: EqualsSignGreaterThanSign { - mIf(); + mEqualsSignGreaterThanSign(); } break; case 39 : - // InternalSolverLanguageLexer.g:1:410: In + // InternalSolverLanguageLexer.g:1:408: GreaterThanSignEqualsSign { - mIn(); + mGreaterThanSignEqualsSign(); } break; case 40 : - // InternalSolverLanguageLexer.g:1:413: ExclamationMark + // InternalSolverLanguageLexer.g:1:434: As { - mExclamationMark(); + mAs(); } break; case 41 : - // InternalSolverLanguageLexer.g:1:429: LeftParenthesis + // InternalSolverLanguageLexer.g:1:437: If { - mLeftParenthesis(); + mIf(); } break; case 42 : - // InternalSolverLanguageLexer.g:1:445: RightParenthesis + // InternalSolverLanguageLexer.g:1:440: In { - mRightParenthesis(); + mIn(); } break; case 43 : - // InternalSolverLanguageLexer.g:1:462: Asterisk + // InternalSolverLanguageLexer.g:1:443: ExclamationMark { - mAsterisk(); + mExclamationMark(); } break; case 44 : - // InternalSolverLanguageLexer.g:1:471: PlusSign + // InternalSolverLanguageLexer.g:1:459: LeftParenthesis { - mPlusSign(); + mLeftParenthesis(); } break; case 45 : - // InternalSolverLanguageLexer.g:1:480: Comma + // InternalSolverLanguageLexer.g:1:475: RightParenthesis { - mComma(); + mRightParenthesis(); } break; case 46 : - // InternalSolverLanguageLexer.g:1:486: HyphenMinus + // InternalSolverLanguageLexer.g:1:492: Asterisk { - mHyphenMinus(); + mAsterisk(); } break; case 47 : - // InternalSolverLanguageLexer.g:1:498: FullStop + // InternalSolverLanguageLexer.g:1:501: PlusSign { - mFullStop(); + mPlusSign(); } break; case 48 : - // InternalSolverLanguageLexer.g:1:507: Solidus + // InternalSolverLanguageLexer.g:1:510: Comma { - mSolidus(); + mComma(); } break; case 49 : - // InternalSolverLanguageLexer.g:1:515: Colon + // InternalSolverLanguageLexer.g:1:516: HyphenMinus { - mColon(); + mHyphenMinus(); } break; case 50 : - // InternalSolverLanguageLexer.g:1:521: Semicolon + // InternalSolverLanguageLexer.g:1:528: FullStop { - mSemicolon(); + mFullStop(); } break; case 51 : - // InternalSolverLanguageLexer.g:1:531: LessThanSign + // InternalSolverLanguageLexer.g:1:537: Solidus { - mLessThanSign(); + mSolidus(); } break; case 52 : - // InternalSolverLanguageLexer.g:1:544: EqualsSign + // InternalSolverLanguageLexer.g:1:545: Colon { - mEqualsSign(); + mColon(); } break; case 53 : - // InternalSolverLanguageLexer.g:1:555: GreaterThanSign + // InternalSolverLanguageLexer.g:1:551: Semicolon { - mGreaterThanSign(); + mSemicolon(); } break; case 54 : - // InternalSolverLanguageLexer.g:1:571: LeftSquareBracket + // InternalSolverLanguageLexer.g:1:561: LessThanSign { - mLeftSquareBracket(); + mLessThanSign(); } break; case 55 : - // InternalSolverLanguageLexer.g:1:589: RightSquareBracket + // InternalSolverLanguageLexer.g:1:574: EqualsSign { - mRightSquareBracket(); + mEqualsSign(); } break; case 56 : - // InternalSolverLanguageLexer.g:1:608: CircumflexAccent + // InternalSolverLanguageLexer.g:1:585: GreaterThanSign { - mCircumflexAccent(); + mGreaterThanSign(); } break; case 57 : - // InternalSolverLanguageLexer.g:1:625: LeftCurlyBracket + // InternalSolverLanguageLexer.g:1:601: QuestionMark { - mLeftCurlyBracket(); + mQuestionMark(); } break; case 58 : - // InternalSolverLanguageLexer.g:1:642: VerticalLine + // InternalSolverLanguageLexer.g:1:614: LeftSquareBracket { - mVerticalLine(); + mLeftSquareBracket(); } break; case 59 : - // InternalSolverLanguageLexer.g:1:655: RightCurlyBracket + // InternalSolverLanguageLexer.g:1:632: RightSquareBracket { - mRightCurlyBracket(); + mRightSquareBracket(); } break; case 60 : - // InternalSolverLanguageLexer.g:1:673: RULE_STRING + // InternalSolverLanguageLexer.g:1:651: CircumflexAccent { - mRULE_STRING(); + mCircumflexAccent(); } break; case 61 : - // InternalSolverLanguageLexer.g:1:685: RULE_QUOTED_ID + // InternalSolverLanguageLexer.g:1:668: LeftCurlyBracket { - mRULE_QUOTED_ID(); + mLeftCurlyBracket(); } break; case 62 : - // InternalSolverLanguageLexer.g:1:700: RULE_SL_COMMENT + // InternalSolverLanguageLexer.g:1:685: VerticalLine { - mRULE_SL_COMMENT(); + mVerticalLine(); } break; case 63 : - // InternalSolverLanguageLexer.g:1:716: RULE_ID + // InternalSolverLanguageLexer.g:1:698: RightCurlyBracket { - mRULE_ID(); + mRightCurlyBracket(); } break; case 64 : - // InternalSolverLanguageLexer.g:1:724: RULE_INT + // InternalSolverLanguageLexer.g:1:716: Tilde { - mRULE_INT(); + mTilde(); } break; case 65 : - // InternalSolverLanguageLexer.g:1:733: RULE_ML_COMMENT + // InternalSolverLanguageLexer.g:1:722: RULE_STRING { - mRULE_ML_COMMENT(); + mRULE_STRING(); } break; case 66 : - // InternalSolverLanguageLexer.g:1:749: RULE_WS + // InternalSolverLanguageLexer.g:1:734: RULE_QUOTED_ID { - mRULE_WS(); + mRULE_QUOTED_ID(); } break; case 67 : - // InternalSolverLanguageLexer.g:1:757: RULE_ANY_OTHER + // InternalSolverLanguageLexer.g:1:749: RULE_SL_COMMENT + { + mRULE_SL_COMMENT(); + + } + break; + case 68 : + // InternalSolverLanguageLexer.g:1:765: RULE_ID + { + mRULE_ID(); + + } + break; + case 69 : + // InternalSolverLanguageLexer.g:1:773: RULE_INT + { + mRULE_INT(); + + } + break; + case 70 : + // InternalSolverLanguageLexer.g:1:782: RULE_ML_COMMENT + { + mRULE_ML_COMMENT(); + + } + break; + case 71 : + // InternalSolverLanguageLexer.g:1:798: RULE_WS + { + mRULE_WS(); + + } + break; + case 72 : + // InternalSolverLanguageLexer.g:1:806: RULE_ANY_OTHER { mRULE_ANY_OTHER(); @@ -2358,74 +2501,69 @@ public class InternalSolverLanguageLexer extends Lexer { protected DFA12 dfa12 = new DFA12(this); static final String DFA12_eotS = - "\1\uffff\12\53\1\100\2\53\1\105\1\107\1\111\1\113\1\116\1\120\5\uffff\1\130\3\uffff\1\134\3\uffff\2\47\5\uffff\3\53\1\uffff\1\53\1\150\21\53\1\176\1\uffff\1\u0080\1\u0081\1\53\40\uffff\4\53\1\uffff\7\53\1\u008e\14\53\2\uffff\1\u009b\2\uffff\1\u009c\13\53\1\uffff\1\53\1\u00a9\5\53\1\u00b0\2\53\1\u00b3\1\u00b4\2\uffff\2\53\1\u00b7\2\53\1\u00ba\1\53\1\u00bc\4\53\1\uffff\4\53\1\u00c5\1\u00c6\1\uffff\1\53\1\u00c8\2\uffff\1\53\1\u00ca\1\uffff\2\53\1\uffff\1\53\1\uffff\6\53\1\u00d4\1\u00d5\2\uffff\1\53\1\uffff\1\53\1\uffff\2\53\1\u00da\1\53\1\u00dc\3\53\1\u00e0\2\uffff\1\u00e1\1\53\1\u00e3\1\u00e4\1\uffff\1\u00e5\1\uffff\1\u00e6\1\u00e7\1\u00e8\2\uffff\1\53\6\uffff\1\u00ea\1\uffff"; + "\1\uffff\15\56\1\111\1\56\1\114\1\116\1\122\1\124\1\127\1\131\5\uffff\1\141\4\uffff\1\146\4\uffff\2\53\5\uffff\2\56\1\uffff\3\56\1\165\16\56\1\u0085\1\u0086\5\56\2\uffff\1\56\44\uffff\6\56\1\uffff\16\56\1\u00a1\2\uffff\5\56\1\u00a7\17\56\1\u00b8\1\u00b9\3\56\1\uffff\1\56\1\u00be\1\56\1\u00c0\1\u00c1\1\uffff\1\56\1\u00c3\1\u00c4\1\56\1\u00c6\11\56\1\u00d0\1\u00d1\2\uffff\4\56\1\uffff\1\u00d6\2\uffff\1\56\2\uffff\1\56\1\uffff\6\56\1\u00df\1\56\1\u00e1\2\uffff\2\56\1\u00e4\1\u00e5\1\uffff\4\56\1\u00eb\3\56\1\uffff\1\u00ef\1\uffff\1\u00f0\1\u00f1\2\uffff\1\56\1\u00f3\1\56\1\u00f5\1\u00f6\1\uffff\1\u00f7\1\u00f8\1\u00f9\3\uffff\1\56\1\uffff\1\56\5\uffff\1\56\1\u00fd\1\u00fe\2\uffff"; static final String DFA12_eofS = - "\u00eb\uffff"; + "\u00ff\uffff"; static final String DFA12_minS = - "\1\0\1\141\1\142\1\154\2\141\1\160\1\154\1\156\1\143\1\150\1\56\1\146\1\145\1\75\1\76\1\55\3\75\5\uffff\1\52\3\uffff\1\101\3\uffff\2\0\5\uffff\1\156\1\162\1\154\1\uffff\1\163\1\60\1\156\1\162\1\141\1\164\1\146\1\170\1\156\1\163\1\160\1\151\1\160\1\162\1\163\1\153\1\157\1\145\1\165\1\56\1\uffff\2\60\1\164\40\uffff\1\143\1\141\1\163\1\164\1\uffff\1\164\1\156\1\162\1\163\2\141\1\151\1\60\1\151\1\164\1\157\1\145\1\163\1\164\1\157\1\145\1\156\1\160\1\156\1\145\2\uffff\1\60\2\uffff\1\60\1\164\1\154\1\145\1\162\1\141\1\164\1\145\1\163\1\164\1\165\1\155\1\uffff\1\155\1\60\1\163\1\156\1\164\1\171\1\162\1\60\1\157\1\145\2\60\2\uffff\1\151\1\154\1\60\1\141\1\151\1\60\1\156\1\60\1\171\1\154\2\151\1\uffff\1\151\1\144\1\156\1\163\2\60\1\uffff\1\167\1\60\2\uffff\1\157\1\60\1\uffff\1\143\1\156\1\uffff\1\164\1\uffff\1\160\1\164\2\172\1\164\1\163\2\60\2\uffff\1\156\1\uffff\1\156\1\uffff\1\164\1\163\1\60\1\145\1\60\3\145\1\60\2\uffff\1\60\1\141\2\60\1\uffff\1\60\1\uffff\3\60\2\uffff\1\154\6\uffff\1\60\1\uffff"; + "\1\0\1\154\1\141\1\142\2\141\1\142\1\154\1\162\1\156\1\146\1\145\1\143\1\150\1\56\1\145\1\75\1\76\1\55\3\75\5\uffff\1\52\4\uffff\1\101\4\uffff\2\0\5\uffff\1\156\1\141\1\uffff\1\156\1\154\1\163\1\60\1\164\1\146\1\170\1\156\1\160\1\152\1\164\1\160\1\162\1\163\1\165\1\157\1\153\1\160\2\60\1\146\2\157\1\145\1\165\2\uffff\1\164\44\uffff\1\164\1\156\1\163\1\143\1\163\1\164\1\uffff\2\141\2\151\1\157\2\145\1\164\1\157\1\145\1\155\1\142\1\156\1\157\1\60\2\uffff\1\145\1\164\1\160\1\156\1\145\1\60\1\141\1\164\1\163\1\164\1\145\1\162\1\164\1\165\2\155\1\163\1\143\1\156\1\171\1\162\2\60\1\154\1\157\1\162\1\uffff\1\162\1\60\1\145\2\60\1\uffff\1\151\2\60\1\151\1\60\1\141\1\171\1\154\3\151\1\164\1\144\1\156\2\60\2\uffff\1\145\1\167\1\164\1\163\1\uffff\1\60\2\uffff\1\156\2\uffff\1\157\1\uffff\1\143\1\160\1\164\2\172\1\164\1\60\1\163\1\60\2\uffff\1\155\1\156\2\60\1\uffff\1\155\1\156\1\164\1\145\1\60\3\145\1\uffff\1\60\1\uffff\2\60\2\uffff\1\145\1\60\1\141\2\60\1\uffff\3\60\3\uffff\1\156\1\uffff\1\154\5\uffff\1\164\2\60\2\uffff"; static final String DFA12_maxS = - "\1\uffff\1\165\1\163\1\165\1\145\1\165\1\160\1\170\1\156\1\143\1\162\1\56\1\156\1\145\1\75\1\76\1\55\1\75\1\76\1\75\5\uffff\1\57\3\uffff\1\172\3\uffff\2\uffff\5\uffff\1\156\1\162\1\154\1\uffff\1\163\1\172\1\165\1\162\1\141\1\164\1\146\1\171\1\156\1\163\1\160\1\164\1\160\1\162\1\163\1\153\1\157\1\145\1\165\1\56\1\uffff\2\172\1\164\40\uffff\1\143\1\141\1\163\1\164\1\uffff\1\164\1\156\1\162\1\163\2\141\1\151\1\172\1\151\1\164\1\157\1\145\1\163\1\164\1\157\1\145\1\156\1\160\1\156\1\145\2\uffff\1\172\2\uffff\1\172\1\164\1\154\1\145\1\162\1\141\1\164\1\145\1\163\1\164\1\165\1\155\1\uffff\1\155\1\172\1\163\1\162\1\164\1\171\1\162\1\172\1\157\1\145\2\172\2\uffff\1\151\1\154\1\172\1\141\1\151\1\172\1\156\1\172\1\171\1\154\2\151\1\uffff\1\151\1\144\1\156\1\163\2\172\1\uffff\1\167\1\172\2\uffff\1\157\1\172\1\uffff\1\143\1\156\1\uffff\1\164\1\uffff\1\160\1\164\2\172\1\164\1\163\2\172\2\uffff\1\156\1\uffff\1\156\1\uffff\1\164\1\163\1\172\1\145\1\172\3\145\1\172\2\uffff\1\172\1\141\2\172\1\uffff\1\172\1\uffff\3\172\2\uffff\1\154\6\uffff\1\172\1\uffff"; + "\1\uffff\1\157\1\165\1\163\1\145\1\151\1\160\1\170\1\162\2\156\1\157\1\143\1\162\1\56\1\145\1\75\1\76\2\75\1\76\1\75\5\uffff\1\57\4\uffff\1\172\4\uffff\2\uffff\5\uffff\1\165\1\141\1\uffff\1\156\1\154\1\163\1\172\1\164\1\146\1\170\1\156\1\160\1\152\1\164\1\160\1\162\1\163\1\165\1\157\1\153\1\160\2\172\1\146\2\157\1\145\1\165\2\uffff\1\164\44\uffff\1\164\1\156\1\163\1\143\1\163\1\164\1\uffff\2\141\2\151\1\157\2\145\1\164\1\157\1\145\1\155\1\142\1\156\1\157\1\172\2\uffff\1\145\1\164\1\160\1\156\1\145\1\172\1\141\1\164\1\163\1\164\1\145\1\162\1\164\1\165\2\155\1\163\1\143\1\162\1\171\1\162\2\172\1\154\1\157\1\162\1\uffff\1\162\1\172\1\145\2\172\1\uffff\1\151\2\172\1\151\1\172\1\141\1\171\1\154\3\151\1\164\1\144\1\156\2\172\2\uffff\1\145\1\167\1\164\1\163\1\uffff\1\172\2\uffff\1\156\2\uffff\1\157\1\uffff\1\143\1\160\1\164\2\172\1\164\1\172\1\163\1\172\2\uffff\1\155\1\156\2\172\1\uffff\1\163\1\156\1\164\1\145\1\172\3\145\1\uffff\1\172\1\uffff\2\172\2\uffff\1\145\1\172\1\141\2\172\1\uffff\3\172\3\uffff\1\156\1\uffff\1\154\5\uffff\1\164\2\172\2\uffff"; static final String DFA12_acceptS = - "\24\uffff\1\51\1\52\1\53\1\54\1\55\1\uffff\1\62\1\66\1\67\1\uffff\1\71\1\72\1\73\2\uffff\1\76\1\77\1\100\1\102\1\103\3\uffff\1\77\24\uffff\1\57\3\uffff\1\35\1\50\1\36\1\56\1\40\1\61\1\41\1\63\1\42\1\43\1\64\1\44\1\65\1\51\1\52\1\53\1\54\1\55\1\76\1\101\1\60\1\62\1\66\1\67\1\70\1\71\1\72\1\73\1\74\1\75\1\100\1\102\4\uffff\1\45\24\uffff\1\31\1\37\1\uffff\1\47\1\46\14\uffff\1\34\14\uffff\1\32\1\33\14\uffff\1\26\6\uffff\1\25\2\uffff\1\27\1\30\2\uffff\1\23\2\uffff\1\20\1\uffff\1\17\10\uffff\1\21\1\22\1\uffff\1\24\1\uffff\1\16\11\uffff\1\15\1\14\4\uffff\1\10\1\uffff\1\11\3\uffff\1\12\1\13\1\uffff\1\2\1\3\1\4\1\5\1\6\1\7\1\uffff\1\1"; + "\26\uffff\1\54\1\55\1\56\1\57\1\60\1\uffff\1\65\1\71\1\72\1\73\1\uffff\1\75\1\76\1\77\1\100\2\uffff\1\103\1\104\1\105\1\107\1\110\2\uffff\1\104\31\uffff\1\34\1\62\1\uffff\1\37\1\53\1\40\1\61\1\41\1\42\1\43\1\64\1\44\1\66\1\45\1\46\1\67\1\47\1\70\1\54\1\55\1\56\1\57\1\60\1\103\1\106\1\63\1\65\1\71\1\72\1\73\1\74\1\75\1\76\1\77\1\100\1\101\1\102\1\105\1\107\6\uffff\1\50\17\uffff\1\52\1\51\32\uffff\1\35\5\uffff\1\36\20\uffff\1\27\1\30\4\uffff\1\31\1\uffff\1\32\1\33\1\uffff\1\22\1\21\1\uffff\1\25\11\uffff\1\23\1\24\4\uffff\1\26\10\uffff\1\17\1\uffff\1\15\2\uffff\1\16\1\20\5\uffff\1\11\3\uffff\1\12\1\13\1\14\1\uffff\1\4\1\uffff\1\3\1\5\1\6\1\7\1\10\3\uffff\1\2\1\1"; static final String DFA12_specialS = - "\1\2\40\uffff\1\0\1\1\u00c8\uffff}>"; + "\1\1\44\uffff\1\0\1\2\u00d8\uffff}>"; static final String[] DFA12_transitionS = { - "\11\47\2\46\2\47\1\46\22\47\1\46\1\16\1\41\2\47\1\43\1\47\1\42\1\24\1\25\1\26\1\27\1\30\1\17\1\13\1\31\12\45\1\20\1\32\1\21\1\22\1\23\2\47\32\44\1\33\1\47\1\34\1\35\1\44\1\47\1\2\1\44\1\3\1\4\1\7\1\1\2\44\1\14\2\44\1\15\1\5\1\44\1\6\3\44\1\11\1\12\1\10\5\44\1\36\1\37\1\40\uff82\47", - "\1\52\15\uffff\1\51\5\uffff\1\50", - "\1\54\20\uffff\1\55", - "\1\60\2\uffff\1\56\5\uffff\1\57", - "\1\61\3\uffff\1\62", - "\1\63\7\uffff\1\64\13\uffff\1\65", - "\1\66", - "\1\72\1\70\4\uffff\1\71\5\uffff\1\67", - "\1\73", - "\1\74", - "\1\75\11\uffff\1\76", + "\11\53\2\52\2\53\1\52\22\53\1\52\1\20\1\45\2\53\1\47\1\53\1\46\1\26\1\27\1\30\1\31\1\32\1\21\1\16\1\33\12\51\1\22\1\34\1\23\1\24\1\25\1\35\1\53\32\50\1\36\1\53\1\37\1\40\1\50\1\53\1\3\1\50\1\1\1\4\1\7\1\2\2\50\1\12\2\50\1\17\1\5\1\50\1\6\1\10\1\50\1\13\1\14\1\15\1\11\5\50\1\41\1\42\1\43\1\44\uff81\53", + "\1\55\2\uffff\1\54", + "\1\60\23\uffff\1\57", + "\1\61\20\uffff\1\62", + "\1\63\3\uffff\1\64", + "\1\65\7\uffff\1\66", + "\1\70\15\uffff\1\67", + "\1\74\1\72\1\75\3\uffff\1\73\5\uffff\1\71", + "\1\76", "\1\77", - "\1\102\7\uffff\1\101", - "\1\103", - "\1\104", - "\1\106", + "\1\102\6\uffff\1\100\1\101", + "\1\103\11\uffff\1\104", + "\1\105", + "\1\106\11\uffff\1\107", "\1\110", "\1\112", - "\1\114\1\115", - "\1\117", + "\1\113", + "\1\115", + "\1\117\14\uffff\1\120\2\uffff\1\121", + "\1\123", + "\1\125\1\126", + "\1\130", + "", "", "", "", "", + "\1\140\4\uffff\1\137", "", - "\1\127\4\uffff\1\126", "", "", "", - "\32\53\4\uffff\1\53\1\uffff\32\53", + "\32\56\4\uffff\1\56\1\uffff\32\56", "", "", "", - "\0\140", - "\0\141", "", + "\0\153", + "\0\154", "", "", "", "", - "\1\144", - "\1\145", - "\1\146", "", - "\1\147", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\1\151\6\uffff\1\152", - "\1\153", - "\1\154", - "\1\155", - "\1\156", - "\1\157\1\160", + "\1\157\6\uffff\1\160", "\1\161", + "", "\1\162", "\1\163", - "\1\165\12\uffff\1\164", + "\1\164", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "\1\166", "\1\167", "\1\170", @@ -2434,10 +2572,25 @@ public class InternalSolverLanguageLexer extends Lexer { "\1\173", "\1\174", "\1\175", - "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\5\53\1\177\24\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\176", + "\1\177", + "\1\u0080", + "\1\u0081", "\1\u0082", + "\1\u0083", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\5\56\1\u0084\24\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u0087", + "\1\u0088", + "\1\u0089", + "\1\u008a", + "\1\u008b", + "", + "", + "\1\u008c", + "", + "", + "", "", "", "", @@ -2470,23 +2623,14 @@ public class InternalSolverLanguageLexer extends Lexer { "", "", "", - "\1\u0083", - "\1\u0084", - "\1\u0085", - "\1\u0086", "", - "\1\u0087", - "\1\u0088", - "\1\u0089", - "\1\u008a", - "\1\u008b", - "\1\u008c", "\1\u008d", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u008e", "\1\u008f", "\1\u0090", "\1\u0091", "\1\u0092", + "", "\1\u0093", "\1\u0094", "\1\u0095", @@ -2495,115 +2639,134 @@ public class InternalSolverLanguageLexer extends Lexer { "\1\u0098", "\1\u0099", "\1\u009a", - "", - "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", - "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u009b", + "\1\u009c", "\1\u009d", "\1\u009e", "\1\u009f", "\1\u00a0", - "\1\u00a1", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", "\1\u00a2", "\1\u00a3", "\1\u00a4", "\1\u00a5", "\1\u00a6", - "\1\u00a7", - "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "\1\u00a8", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00a9", "\1\u00aa", - "\1\u00ab\3\uffff\1\u00ac", + "\1\u00ab", + "\1\u00ac", "\1\u00ad", "\1\u00ae", "\1\u00af", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00b0", "\1\u00b1", "\1\u00b2", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", - "", - "\1\u00b5", + "\1\u00b3", + "\1\u00b4\3\uffff\1\u00b5", "\1\u00b6", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\1\u00b8", - "\1\u00b9", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00b7", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00ba", "\1\u00bb", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00bc", + "", "\1\u00bd", - "\1\u00be", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "\1\u00bf", - "\1\u00c0", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", - "\1\u00c1", "\1\u00c2", - "\1\u00c3", - "\1\u00c4", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00c5", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "\1\u00c7", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", - "", + "\1\u00c8", "\1\u00c9", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "", + "\1\u00ca", "\1\u00cb", "\1\u00cc", - "", "\1\u00cd", - "", "\1\u00ce", "\1\u00cf", - "\1\u00d0", - "\1\u00d1", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", "\1\u00d2", "\1\u00d3", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00d4", + "\1\u00d5", "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", - "\1\u00d6", "", "\1\u00d7", "", + "", "\1\u00d8", + "", "\1\u00d9", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00da", "\1\u00db", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00dc", "\1\u00dd", "\1\u00de", - "\1\u00df", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00e0", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", "\1\u00e2", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00e3", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\1\u00e6\5\uffff\1\u00e7", + "\1\u00e8", + "\1\u00e9", + "\1\u00ea", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00ec", + "\1\u00ed", + "\1\u00ee", "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "", + "\1\u00f2", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\1\u00f4", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", "", - "\1\u00e9", "", "", + "\1\u00fa", "", + "\1\u00fb", "", "", "", - "\12\53\7\uffff\32\53\4\uffff\1\53\1\uffff\32\53", + "", + "", + "\1\u00fc", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32\56", + "", "" }; @@ -2637,41 +2800,31 @@ public class InternalSolverLanguageLexer extends Lexer { this.transition = DFA12_transition; } public String getDescription() { - return "1:1: Tokens : ( Functional | Abstract | Contains | Datatype | Maximize | Minimize | Opposite | Current | Default | Extends | Unknown | Exists | Extern | Forall | Class | Count | Empty | Error | False | Scope | Else | Must | Then | True | FullStopFullStopFullStop | Inf | Let | May | ExclamationMarkEqualsSign | HyphenMinusGreaterThanSign | FullStopFullStop | ColonHyphenMinus | LessThanSignEqualsSign | EqualsSignEqualsSign | EqualsSignGreaterThanSign | GreaterThanSignEqualsSign | As | If | In | ExclamationMark | LeftParenthesis | RightParenthesis | Asterisk | PlusSign | Comma | HyphenMinus | FullStop | Solidus | Colon | Semicolon | LessThanSign | EqualsSign | GreaterThanSign | LeftSquareBracket | RightSquareBracket | CircumflexAccent | LeftCurlyBracket | VerticalLine | RightCurlyBracket | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER );"; + return "1:1: Tokens : ( Containment | Functional | Abstract | Contains | Datatype | Maximize | Minimize | Opposite | Default | Extends | Problem | Unknown | Extern | Import | Object | Refers | Class | Count | Empty | Error | False | Scope | Else | Enum | Root | Then | True | FullStopFullStopFullStop | Inf | Let | ExclamationMarkEqualsSign | HyphenMinusGreaterThanSign | ColonHyphenMinus | ColonColon | ColonEqualsSign | LessThanSignEqualsSign | EqualsSignEqualsSign | EqualsSignGreaterThanSign | GreaterThanSignEqualsSign | As | If | In | ExclamationMark | LeftParenthesis | RightParenthesis | Asterisk | PlusSign | Comma | HyphenMinus | FullStop | Solidus | Colon | Semicolon | LessThanSign | EqualsSign | GreaterThanSign | QuestionMark | LeftSquareBracket | RightSquareBracket | CircumflexAccent | LeftCurlyBracket | VerticalLine | RightCurlyBracket | Tilde | RULE_STRING | RULE_QUOTED_ID | RULE_SL_COMMENT | RULE_ID | RULE_INT | RULE_ML_COMMENT | RULE_WS | RULE_ANY_OTHER );"; } public int specialStateTransition(int s, IntStream _input) throws NoViableAltException { IntStream input = _input; int _s = s; switch ( s ) { case 0 : - int LA12_33 = input.LA(1); + int LA12_37 = input.LA(1); s = -1; - if ( ((LA12_33>='\u0000' && LA12_33<='\uFFFF')) ) {s = 96;} + if ( ((LA12_37>='\u0000' && LA12_37<='\uFFFF')) ) {s = 107;} - else s = 39; + else s = 43; if ( s>=0 ) return s; break; case 1 : - int LA12_34 = input.LA(1); - - s = -1; - if ( ((LA12_34>='\u0000' && LA12_34<='\uFFFF')) ) {s = 97;} - - else s = 39; - - if ( s>=0 ) return s; - break; - case 2 : int LA12_0 = input.LA(1); s = -1; - if ( (LA12_0=='f') ) {s = 1;} + if ( (LA12_0=='c') ) {s = 1;} - else if ( (LA12_0=='a') ) {s = 2;} + else if ( (LA12_0=='f') ) {s = 2;} - else if ( (LA12_0=='c') ) {s = 3;} + else if ( (LA12_0=='a') ) {s = 3;} else if ( (LA12_0=='d') ) {s = 4;} @@ -2681,69 +2834,87 @@ public class InternalSolverLanguageLexer extends Lexer { else if ( (LA12_0=='e') ) {s = 7;} - else if ( (LA12_0=='u') ) {s = 8;} + else if ( (LA12_0=='p') ) {s = 8;} + + else if ( (LA12_0=='u') ) {s = 9;} - else if ( (LA12_0=='s') ) {s = 9;} + else if ( (LA12_0=='i') ) {s = 10;} - else if ( (LA12_0=='t') ) {s = 10;} + else if ( (LA12_0=='r') ) {s = 11;} - else if ( (LA12_0=='.') ) {s = 11;} + else if ( (LA12_0=='s') ) {s = 12;} - else if ( (LA12_0=='i') ) {s = 12;} + else if ( (LA12_0=='t') ) {s = 13;} - else if ( (LA12_0=='l') ) {s = 13;} + else if ( (LA12_0=='.') ) {s = 14;} - else if ( (LA12_0=='!') ) {s = 14;} + else if ( (LA12_0=='l') ) {s = 15;} - else if ( (LA12_0=='-') ) {s = 15;} + else if ( (LA12_0=='!') ) {s = 16;} - else if ( (LA12_0==':') ) {s = 16;} + else if ( (LA12_0=='-') ) {s = 17;} - else if ( (LA12_0=='<') ) {s = 17;} + else if ( (LA12_0==':') ) {s = 18;} - else if ( (LA12_0=='=') ) {s = 18;} + else if ( (LA12_0=='<') ) {s = 19;} - else if ( (LA12_0=='>') ) {s = 19;} + else if ( (LA12_0=='=') ) {s = 20;} - else if ( (LA12_0=='(') ) {s = 20;} + else if ( (LA12_0=='>') ) {s = 21;} - else if ( (LA12_0==')') ) {s = 21;} + else if ( (LA12_0=='(') ) {s = 22;} - else if ( (LA12_0=='*') ) {s = 22;} + else if ( (LA12_0==')') ) {s = 23;} - else if ( (LA12_0=='+') ) {s = 23;} + else if ( (LA12_0=='*') ) {s = 24;} - else if ( (LA12_0==',') ) {s = 24;} + else if ( (LA12_0=='+') ) {s = 25;} - else if ( (LA12_0=='/') ) {s = 25;} + else if ( (LA12_0==',') ) {s = 26;} - else if ( (LA12_0==';') ) {s = 26;} + else if ( (LA12_0=='/') ) {s = 27;} - else if ( (LA12_0=='[') ) {s = 27;} + else if ( (LA12_0==';') ) {s = 28;} - else if ( (LA12_0==']') ) {s = 28;} + else if ( (LA12_0=='?') ) {s = 29;} - else if ( (LA12_0=='^') ) {s = 29;} + else if ( (LA12_0=='[') ) {s = 30;} - else if ( (LA12_0=='{') ) {s = 30;} + else if ( (LA12_0==']') ) {s = 31;} - else if ( (LA12_0=='|') ) {s = 31;} + else if ( (LA12_0=='^') ) {s = 32;} - else if ( (LA12_0=='}') ) {s = 32;} + else if ( (LA12_0=='{') ) {s = 33;} - else if ( (LA12_0=='\"') ) {s = 33;} + else if ( (LA12_0=='|') ) {s = 34;} - else if ( (LA12_0=='\'') ) {s = 34;} + else if ( (LA12_0=='}') ) {s = 35;} - else if ( (LA12_0=='%') ) {s = 35;} + else if ( (LA12_0=='~') ) {s = 36;} - else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||(LA12_0>='g' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='k')||LA12_0=='n'||(LA12_0>='p' && LA12_0<='r')||(LA12_0>='v' && LA12_0<='z')) ) {s = 36;} + else if ( (LA12_0=='\"') ) {s = 37;} - else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 37;} + else if ( (LA12_0=='\'') ) {s = 38;} - else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 38;} + else if ( (LA12_0=='%') ) {s = 39;} + + else if ( ((LA12_0>='A' && LA12_0<='Z')||LA12_0=='_'||LA12_0=='b'||(LA12_0>='g' && LA12_0<='h')||(LA12_0>='j' && LA12_0<='k')||LA12_0=='n'||LA12_0=='q'||(LA12_0>='v' && LA12_0<='z')) ) {s = 40;} + + else if ( ((LA12_0>='0' && LA12_0<='9')) ) {s = 41;} + + else if ( ((LA12_0>='\t' && LA12_0<='\n')||LA12_0=='\r'||LA12_0==' ') ) {s = 42;} + + else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||(LA12_0>='#' && LA12_0<='$')||LA12_0=='&'||LA12_0=='@'||LA12_0=='\\'||LA12_0=='`'||(LA12_0>='\u007F' && LA12_0<='\uFFFF')) ) {s = 43;} + + if ( s>=0 ) return s; + break; + case 2 : + int LA12_38 = input.LA(1); + + s = -1; + if ( ((LA12_38>='\u0000' && LA12_38<='\uFFFF')) ) {s = 108;} - else if ( ((LA12_0>='\u0000' && LA12_0<='\b')||(LA12_0>='\u000B' && LA12_0<='\f')||(LA12_0>='\u000E' && LA12_0<='\u001F')||(LA12_0>='#' && LA12_0<='$')||LA12_0=='&'||(LA12_0>='?' && LA12_0<='@')||LA12_0=='\\'||LA12_0=='`'||(LA12_0>='~' && LA12_0<='\uFFFF')) ) {s = 39;} + else s = 43; if ( s>=0 ) return s; break; diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.tokens b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.tokens index 178103e2..f6269b97 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.tokens +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/parser/antlr/lexer/InternalSolverLanguageLexer.tokens @@ -1,70 +1,75 @@ -Abstract=5 -As=40 -Asterisk=46 -CircumflexAccent=59 -Class=18 -Colon=52 -ColonHyphenMinus=35 -Comma=48 -Contains=6 -Count=19 -Current=11 -Datatype=7 +Abstract=6 +As=43 +Asterisk=49 +CircumflexAccent=63 +Class=20 +Colon=55 +ColonColon=37 +ColonEqualsSign=38 +ColonHyphenMinus=36 +Comma=51 +Containment=4 +Contains=7 +Count=21 +Datatype=8 Default=12 -Else=24 -Empty=20 -EqualsSign=55 -EqualsSignEqualsSign=37 -EqualsSignGreaterThanSign=38 -Error=21 -ExclamationMark=43 -ExclamationMarkEqualsSign=32 -Exists=15 +Else=26 +Empty=22 +Enum=27 +EqualsSign=58 +EqualsSignEqualsSign=40 +EqualsSignGreaterThanSign=41 +Error=23 +ExclamationMark=46 +ExclamationMarkEqualsSign=34 Extends=13 Extern=16 -False=22 -Forall=17 -FullStop=50 -FullStopFullStop=34 -FullStopFullStopFullStop=28 -Functional=4 -GreaterThanSign=56 -GreaterThanSignEqualsSign=39 -HyphenMinus=49 -HyphenMinusGreaterThanSign=33 -If=41 -In=42 -Inf=29 -LeftCurlyBracket=60 -LeftParenthesis=44 -LeftSquareBracket=57 -LessThanSign=54 -LessThanSignEqualsSign=36 -Let=30 -Maximize=8 -May=31 -Minimize=9 -Must=25 -Opposite=10 -PlusSign=47 -RULE_ANY_OTHER=73 -RULE_FULL_STOP=68 -RULE_ID=69 -RULE_INT=70 -RULE_ML_COMMENT=71 -RULE_QUOTED_ID=64 -RULE_REFLEXIVE_TRANSITIVE_CLOSURE=67 -RULE_SL_COMMENT=65 -RULE_STRING=63 -RULE_TRANSITIVE_CLOSURE=66 -RULE_WS=72 -RightCurlyBracket=62 -RightParenthesis=45 -RightSquareBracket=58 -Scope=23 -Semicolon=53 -Solidus=51 -Then=26 -True=27 -Unknown=14 -VerticalLine=61 +False=24 +FullStop=53 +FullStopFullStopFullStop=31 +Functional=5 +GreaterThanSign=59 +GreaterThanSignEqualsSign=42 +HyphenMinus=52 +HyphenMinusGreaterThanSign=35 +If=44 +Import=17 +In=45 +Inf=32 +LeftCurlyBracket=64 +LeftParenthesis=47 +LeftSquareBracket=61 +LessThanSign=57 +LessThanSignEqualsSign=39 +Let=33 +Maximize=9 +Minimize=10 +Object=18 +Opposite=11 +PlusSign=50 +Problem=14 +QuestionMark=60 +RULE_ANY_OTHER=78 +RULE_FULL_STOP=73 +RULE_ID=74 +RULE_INT=75 +RULE_ML_COMMENT=76 +RULE_QUOTED_ID=69 +RULE_REFLEXIVE_TRANSITIVE_CLOSURE=72 +RULE_SL_COMMENT=70 +RULE_STRING=68 +RULE_TRANSITIVE_CLOSURE=71 +RULE_WS=77 +Refers=19 +RightCurlyBracket=66 +RightParenthesis=48 +RightSquareBracket=62 +Root=28 +Scope=25 +Semicolon=56 +Solidus=54 +Then=29 +Tilde=67 +True=30 +Unknown=15 +VerticalLine=65 diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java index dc93975f..49326024 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSemanticSequencer.java @@ -10,52 +10,58 @@ import org.eclipse.emf.ecore.EPackage; import org.eclipse.viatra.solver.language.services.SolverLanguageGrammarAccess; import org.eclipse.viatra.solver.language.solverLanguage.Aggregation; import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList; +import org.eclipse.viatra.solver.language.solverLanguage.Assertion; +import org.eclipse.viatra.solver.language.solverLanguage.Attribute; import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression; import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.BoundedScopeDefinition; +import org.eclipse.viatra.solver.language.solverLanguage.BoundedScope; import org.eclipse.viatra.solver.language.solverLanguage.Call; import org.eclipse.viatra.solver.language.solverLanguage.Case; import org.eclipse.viatra.solver.language.solverLanguage.CastExpression; -import org.eclipse.viatra.solver.language.solverLanguage.ClassDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Comparison; +import org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression; import org.eclipse.viatra.solver.language.solverLanguage.Conjunction; -import org.eclipse.viatra.solver.language.solverLanguage.DefaultDefinition; +import org.eclipse.viatra.solver.language.solverLanguage.Count; +import org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion; import org.eclipse.viatra.solver.language.solverLanguage.Disjunction; -import org.eclipse.viatra.solver.language.solverLanguage.EmptyIntervalLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral; +import org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral; import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.ExactScopeDefinition; +import org.eclipse.viatra.solver.language.solverLanguage.ExactScope; import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument; -import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregatorDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ExternMetricDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.IfElse; +import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.Field; +import org.eclipse.viatra.solver.language.solverLanguage.Forall; +import org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition; import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.Interpretation; +import org.eclipse.viatra.solver.language.solverLanguage.IntLiteral; import org.eclipse.viatra.solver.language.solverLanguage.Interval; -import org.eclipse.viatra.solver.language.solverLanguage.Let; import org.eclipse.viatra.solver.language.solverLanguage.LetBinding; -import org.eclipse.viatra.solver.language.solverLanguage.LocalVariables; +import org.eclipse.viatra.solver.language.solverLanguage.LetExpression; import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScopeDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.ManyMultiplicity; -import org.eclipse.viatra.solver.language.solverLanguage.MemberDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.MetricDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.NumericLiteral; -import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDefinition; +import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope; +import org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport; +import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration; +import org.eclipse.viatra.solver.language.solverLanguage.PathComponent; import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition; import org.eclipse.viatra.solver.language.solverLanguage.Problem; -import org.eclipse.viatra.solver.language.solverLanguage.QuantifiedExpression; +import org.eclipse.viatra.solver.language.solverLanguage.RealLiteral; import org.eclipse.viatra.solver.language.solverLanguage.Reference; import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage; import org.eclipse.viatra.solver.language.solverLanguage.StarArgument; import org.eclipse.viatra.solver.language.solverLanguage.StringLiteral; import org.eclipse.viatra.solver.language.solverLanguage.Switch; -import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument; +import org.eclipse.viatra.solver.language.solverLanguage.TypeReference; import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument; +import org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument; import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression; -import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPrediateDefinition; -import org.eclipse.viatra.solver.language.solverLanguage.Variable; +import org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity; +import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion; +import org.eclipse.viatra.solver.language.solverLanguage.UriImport; import org.eclipse.xtext.Action; import org.eclipse.xtext.Parameter; import org.eclipse.xtext.ParserRule; @@ -84,14 +90,20 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS case SolverLanguagePackage.ARGUMENT_LIST: sequence_ArgumentList(context, (ArgumentList) semanticObject); return; + case SolverLanguagePackage.ASSERTION: + sequence_AssertionOrDefinition(context, (Assertion) semanticObject); + return; + case SolverLanguagePackage.ATTRIBUTE: + sequence_Attribute(context, (Attribute) semanticObject); + return; case SolverLanguagePackage.BINARY_EXPRESSION: - sequence_AdditiveExpression_ExponentialExpression_ImplicationExpression_MultiplicativeExpression(context, (BinaryExpression) semanticObject); + sequence_AdditiveExpression_ComparisonExpression_ExponentialExpression_MultiplicativeExpression(context, (BinaryExpression) semanticObject); return; case SolverLanguagePackage.BOUNDED_MULTIPLICITY: sequence_BoundedMultiplicity(context, (BoundedMultiplicity) semanticObject); return; - case SolverLanguagePackage.BOUNDED_SCOPE_DEFINITION: - sequence_BoundedScopeDefinition(context, (BoundedScopeDefinition) semanticObject); + case SolverLanguagePackage.BOUNDED_SCOPE: + sequence_BoundedScope(context, (BoundedScope) semanticObject); return; case SolverLanguagePackage.CALL: sequence_Call(context, (Call) semanticObject); @@ -109,97 +121,103 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS case SolverLanguagePackage.CAST_EXPRESSION: sequence_CastExpression(context, (CastExpression) semanticObject); return; - case SolverLanguagePackage.CLASS_DEFINITION: - sequence_ClassDefinition(context, (ClassDefinition) semanticObject); + case SolverLanguagePackage.CLASS_DECLARATION: + sequence_ClassDeclaration(context, (ClassDeclaration) semanticObject); return; - case SolverLanguagePackage.COMPARISON: - sequence_ComparisonExpression(context, (Comparison) semanticObject); + case SolverLanguagePackage.CONDITIONAL_EXPRESSION: + sequence_ConditionalExpression(context, (ConditionalExpression) semanticObject); return; case SolverLanguagePackage.CONJUNCTION: sequence_ConjunctiveExpression(context, (Conjunction) semanticObject); return; - case SolverLanguagePackage.DEFAULT_DEFINITION: - sequence_DefaultDefinition(context, (DefaultDefinition) semanticObject); + case SolverLanguagePackage.COUNT: + sequence_Count(context, (Count) semanticObject); + return; + case SolverLanguagePackage.DEFAULT_ASSERTION: + sequence_DefaultAssertion(context, (DefaultAssertion) semanticObject); return; case SolverLanguagePackage.DISJUNCTION: sequence_DisjunctiveExpression(context, (Disjunction) semanticObject); return; - case SolverLanguagePackage.EMPTY_INTERVAL_LITERAL: - sequence_EmptyIntervalLiteral(context, (EmptyIntervalLiteral) semanticObject); + case SolverLanguagePackage.EMPTY_LITERAL: + sequence_EmptyLiteral(context, (EmptyLiteral) semanticObject); + return; + case SolverLanguagePackage.ENUM_DECLARATION: + sequence_EnumDeclaration(context, (EnumDeclaration) semanticObject); + return; + case SolverLanguagePackage.ENUM_LITERAL: + sequence_EnumLiteral(context, (EnumLiteral) semanticObject); return; case SolverLanguagePackage.EXACT_MULTIPLICITY: sequence_ExactMultiplicity(context, (ExactMultiplicity) semanticObject); return; - case SolverLanguagePackage.EXACT_SCOPE_DEFINITION: - sequence_ExactScopeDefinition(context, (ExactScopeDefinition) semanticObject); + case SolverLanguagePackage.EXACT_SCOPE: + sequence_ExactScope(context, (ExactScope) semanticObject); return; case SolverLanguagePackage.EXPRESSION_ARGUMENT: sequence_ExpressionArgument(context, (ExpressionArgument) semanticObject); return; - case SolverLanguagePackage.EXTERN_AGGREGATOR_DEFINITION: - sequence_ExternAggregatorDefinition(context, (ExternAggregatorDefinition) semanticObject); + case SolverLanguagePackage.EXTERN_AGGREGATION_OPERATOR_DECLARATION: + sequence_ExternAggregationOperatorDeclaration(context, (ExternAggregationOperatorDeclaration) semanticObject); + return; + case SolverLanguagePackage.EXTERN_DATATYPE_DECLARATION: + sequence_ExternDatatypeDeclaration(context, (ExternDatatypeDeclaration) semanticObject); return; - case SolverLanguagePackage.EXTERN_DATATYPE_DEFINITION: - sequence_ExternDatatypeDefinition(context, (ExternDatatypeDefinition) semanticObject); + case SolverLanguagePackage.EXTERN_FUNCTION_DECLARATION: + sequence_ExternFunctionDeclaration(context, (ExternFunctionDeclaration) semanticObject); return; - case SolverLanguagePackage.EXTERN_METRIC_DEFINITION: - sequence_ExternMetricDefinition(context, (ExternMetricDefinition) semanticObject); + case SolverLanguagePackage.EXTERN_PREDICATE_DECLARATION: + sequence_ExternPredicateDeclaration(context, (ExternPredicateDeclaration) semanticObject); return; - case SolverLanguagePackage.EXTERN_PREDICATE_DEFINITION: - sequence_ExternPredicateDefinition(context, (ExternPredicateDefinition) semanticObject); + case SolverLanguagePackage.FIELD: + sequence_Field(context, (Field) semanticObject); return; - case SolverLanguagePackage.IF_ELSE: - sequence_IfElse(context, (IfElse) semanticObject); + case SolverLanguagePackage.FORALL: + sequence_Expression(context, (Forall) semanticObject); return; + case SolverLanguagePackage.FUNCTION_DEFINITION: + if (rule == grammarAccess.getAssertionOrDefinitionRule()) { + sequence_AssertionOrDefinition(context, (FunctionDefinition) semanticObject); + return; + } + else if (rule == grammarAccess.getStatementRule()) { + sequence_AssertionOrDefinition_FunctionDefinition(context, (FunctionDefinition) semanticObject); + return; + } + else if (rule == grammarAccess.getFunctionDefinitionRule()) { + sequence_FunctionDefinition(context, (FunctionDefinition) semanticObject); + return; + } + else break; case SolverLanguagePackage.INFINITY_LITERAL: sequence_InfinityLiteral(context, (InfinityLiteral) semanticObject); return; - case SolverLanguagePackage.INTERPRETATION: - sequence_AssertionOrDefinition(context, (Interpretation) semanticObject); + case SolverLanguagePackage.INT_LITERAL: + sequence_IntLiteral(context, (IntLiteral) semanticObject); return; case SolverLanguagePackage.INTERVAL: sequence_Interval(context, (Interval) semanticObject); return; - case SolverLanguagePackage.LET: - sequence_Let(context, (Let) semanticObject); - return; case SolverLanguagePackage.LET_BINDING: sequence_LetBinding(context, (LetBinding) semanticObject); return; - case SolverLanguagePackage.LOCAL_VARIABLES: - sequence_LocalVariables(context, (LocalVariables) semanticObject); + case SolverLanguagePackage.LET_EXPRESSION: + sequence_LetExpression(context, (LetExpression) semanticObject); return; case SolverLanguagePackage.LOGIC_LITERAL: sequence_LogicLiteral(context, (LogicLiteral) semanticObject); return; - case SolverLanguagePackage.LOWER_BOUNDED_SCOPE_DEFINITION: - sequence_LowerBoundedScopeDefinition(context, (LowerBoundedScopeDefinition) semanticObject); + case SolverLanguagePackage.LOWER_BOUNDED_SCOPE: + sequence_LowerBoundedScope(context, (LowerBoundedScope) semanticObject); return; - case SolverLanguagePackage.MANY_MULTIPLICITY: - sequence_ManyMultiplicity(context, (ManyMultiplicity) semanticObject); + case SolverLanguagePackage.NAMESPACE_IMPORT: + sequence_NamespaceImport(context, (NamespaceImport) semanticObject); return; - case SolverLanguagePackage.MEMBER_DEFINITION: - sequence_MemberDefinition(context, (MemberDefinition) semanticObject); + case SolverLanguagePackage.OBJECTIVE_DECLARATION: + sequence_ObjectiveDeclaration(context, (ObjectiveDeclaration) semanticObject); return; - case SolverLanguagePackage.METRIC_DEFINITION: - if (rule == grammarAccess.getAssertionOrDefinitionRule()) { - sequence_AssertionOrDefinition(context, (MetricDefinition) semanticObject); - return; - } - else if (rule == grammarAccess.getStatementRule()) { - sequence_AssertionOrDefinition_MetricDefinition(context, (MetricDefinition) semanticObject); - return; - } - else if (rule == grammarAccess.getMetricDefinitionRule()) { - sequence_MetricDefinition(context, (MetricDefinition) semanticObject); - return; - } - else break; - case SolverLanguagePackage.NUMERIC_LITERAL: - sequence_NumericLiteral(context, (NumericLiteral) semanticObject); - return; - case SolverLanguagePackage.OBJECTIVE_DEFINITION: - sequence_ObjectiveDefinition(context, (ObjectiveDefinition) semanticObject); + case SolverLanguagePackage.PATH_COMPONENT: + sequence_PathComponent(context, (PathComponent) semanticObject); return; case SolverLanguagePackage.PREDICATE_DEFINITION: if (rule == grammarAccess.getAssertionOrDefinitionRule()) { @@ -218,8 +236,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS case SolverLanguagePackage.PROBLEM: sequence_Problem(context, (Problem) semanticObject); return; - case SolverLanguagePackage.QUANTIFIED_EXPRESSION: - sequence_QuantifiedExpression(context, (QuantifiedExpression) semanticObject); + case SolverLanguagePackage.REAL_LITERAL: + sequence_RealLiteral(context, (RealLiteral) semanticObject); return; case SolverLanguagePackage.REFERENCE: sequence_Reference(context, (Reference) semanticObject); @@ -233,20 +251,26 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS case SolverLanguagePackage.SWITCH: sequence_DisjunctiveExpression(context, (Switch) semanticObject); return; - case SolverLanguagePackage.TYPED_ARGUMENT: - sequence_TypedArgument(context, (TypedArgument) semanticObject); + case SolverLanguagePackage.TYPE_REFERENCE: + sequence_TypeReference(context, (TypeReference) semanticObject); return; case SolverLanguagePackage.TYPED_STAR_ARGUMENT: sequence_TypedStarArgument(context, (TypedStarArgument) semanticObject); return; + case SolverLanguagePackage.TYPED_VARIABLE_ARGUMENT: + sequence_TypedVariableArgument(context, (TypedVariableArgument) semanticObject); + return; case SolverLanguagePackage.UNARY_EXPRESSION: sequence_UnaryExpression(context, (UnaryExpression) semanticObject); return; - case SolverLanguagePackage.UNNAMED_ERROR_PREDIATE_DEFINITION: - sequence_UnnamedErrorPrediateDefinition(context, (UnnamedErrorPrediateDefinition) semanticObject); + case SolverLanguagePackage.UNBOUNDED_MULTIPLICITY: + sequence_UnboundedMultiplicity(context, (UnboundedMultiplicity) semanticObject); return; - case SolverLanguagePackage.VARIABLE: - sequence_Variable(context, (Variable) semanticObject); + case SolverLanguagePackage.UNNAMED_ERROR_PREDICATE_DEFINTION: + sequence_UnnamedErrorPredicateDefintion(context, (UnnamedErrorPredicateDefintion) semanticObject); + return; + case SolverLanguagePackage.URI_IMPORT: + sequence_UriImport(context, (UriImport) semanticObject); return; } if (errorAcceptor != null) @@ -255,21 +279,18 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns BinaryExpression - * AssertionOrDefinition returns BinaryExpression - * AssertionOrDefinition.Interpretation_1_0_0 returns BinaryExpression + * AssertionOrDefinition.Assertion_1_0_0 returns BinaryExpression * AssertionOrDefinition.PredicateDefinition_1_1_0 returns BinaryExpression - * AssertionOrDefinition.MetricDefinition_1_2_0 returns BinaryExpression + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns BinaryExpression * Expression returns BinaryExpression - * ImplicationExpression returns BinaryExpression - * ImplicationExpression.BinaryExpression_1_0 returns BinaryExpression + * Expression.Forall_2_1_0 returns BinaryExpression * DisjunctiveExpression returns BinaryExpression * DisjunctiveExpression.Disjunction_1_0_0 returns BinaryExpression * DisjunctiveExpression.Case_1_1_0 returns BinaryExpression * ConjunctiveExpression returns BinaryExpression * ConjunctiveExpression.Conjunction_1_0 returns BinaryExpression * ComparisonExpression returns BinaryExpression - * ComparisonExpression.Comparison_1_0 returns BinaryExpression + * ComparisonExpression.BinaryExpression_1_0 returns BinaryExpression * AdditiveExpression returns BinaryExpression * AdditiveExpression.BinaryExpression_1_0 returns BinaryExpression * MultiplicativeExpression returns BinaryExpression @@ -279,39 +300,36 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns BinaryExpression * CastExpression.CastExpression_1_0 returns BinaryExpression * UnaryExpression returns BinaryExpression - * AggregationExpression returns BinaryExpression + * BracedAggregateExpression returns BinaryExpression * AtomicExpression returns BinaryExpression * * Constraint: * ( - * (left=ImplicationExpression_BinaryExpression_1_0 op=ImplicationOperator right=ImplicationExpression) | + * (left=ComparisonExpression_BinaryExpression_1_0 op=ComparisonOperator right=AdditiveExpression) | * (left=AdditiveExpression_BinaryExpression_1_0 op=AdditiveBinaryOperator right=MultiplicativeExpression) | * (left=MultiplicativeExpression_BinaryExpression_1_0 op=MultiplicativeBinaryOperator right=ExponentialExpression) | * (left=ExponentialExpression_BinaryExpression_1_0 op=ExponentialOp right=CastExpression) * ) */ - protected void sequence_AdditiveExpression_ExponentialExpression_ImplicationExpression_MultiplicativeExpression(ISerializationContext context, BinaryExpression semanticObject) { + protected void sequence_AdditiveExpression_ComparisonExpression_ExponentialExpression_MultiplicativeExpression(ISerializationContext context, BinaryExpression semanticObject) { genericSequencer.createSequence(context, semanticObject); } /** * Contexts: - * Statement returns Aggregation - * AssertionOrDefinition returns Aggregation - * AssertionOrDefinition.Interpretation_1_0_0 returns Aggregation + * AssertionOrDefinition.Assertion_1_0_0 returns Aggregation * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Aggregation - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Aggregation + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Aggregation * Expression returns Aggregation - * ImplicationExpression returns Aggregation - * ImplicationExpression.BinaryExpression_1_0 returns Aggregation + * Expression.Forall_2_1_0 returns Aggregation * DisjunctiveExpression returns Aggregation * DisjunctiveExpression.Disjunction_1_0_0 returns Aggregation * DisjunctiveExpression.Case_1_1_0 returns Aggregation * ConjunctiveExpression returns Aggregation * ConjunctiveExpression.Conjunction_1_0 returns Aggregation * ComparisonExpression returns Aggregation - * ComparisonExpression.Comparison_1_0 returns Aggregation + * ComparisonExpression.BinaryExpression_1_0 returns Aggregation * AdditiveExpression returns Aggregation * AdditiveExpression.BinaryExpression_1_0 returns Aggregation * MultiplicativeExpression returns Aggregation @@ -321,15 +339,27 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns Aggregation * CastExpression.CastExpression_1_0 returns Aggregation * UnaryExpression returns Aggregation - * AggregationExpression returns Aggregation + * BracedAggregateExpression returns Aggregation * Aggregation returns Aggregation * AtomicExpression returns Aggregation * * Constraint: - * (op=[NamedElement|QualifiedName] localVariables=LocalVariables? body=Expression condition=Expression?) + * (op=[Symbol|QualifiedName] value=Expression condition=Expression) */ protected void sequence_Aggregation(ISerializationContext context, Aggregation semanticObject) { - genericSequencer.createSequence(context, semanticObject); + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__OP) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__OP)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__VALUE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.AGGREGATION__VALUE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.AGGREGATE_EXPRESSION__CONDITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.AGGREGATE_EXPRESSION__CONDITION)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getAggregationAccess().getOpSymbolQualifiedNameParserRuleCall_0_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.AGGREGATION__OP, false)); + feeder.accept(grammarAccess.getAggregationAccess().getValueExpressionParserRuleCall_2_0(), semanticObject.getValue()); + feeder.accept(grammarAccess.getAggregationAccess().getConditionExpressionParserRuleCall_4_0(), semanticObject.getCondition()); + feeder.finish(); } @@ -347,42 +377,33 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns Interpretation - * AssertionOrDefinition returns Interpretation + * Statement returns Assertion + * AssertionOrDefinition returns Assertion * * Constraint: - * (body=AssertionOrDefinition_Interpretation_1_0_0 range=Expression) + * (expression=AssertionOrDefinition_Assertion_1_0_0 range=Expression?) */ - protected void sequence_AssertionOrDefinition(ISerializationContext context, Interpretation semanticObject) { - if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.INTERPRETATION__BODY) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.INTERPRETATION__BODY)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.INTERPRETATION__RANGE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.INTERPRETATION__RANGE)); - } - SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getAssertionOrDefinitionAccess().getInterpretationBodyAction_1_0_0(), semanticObject.getBody()); - feeder.accept(grammarAccess.getAssertionOrDefinitionAccess().getRangeExpressionParserRuleCall_1_0_2_0(), semanticObject.getRange()); - feeder.finish(); + protected void sequence_AssertionOrDefinition(ISerializationContext context, Assertion semanticObject) { + genericSequencer.createSequence(context, semanticObject); } /** * Contexts: - * AssertionOrDefinition returns MetricDefinition + * AssertionOrDefinition returns FunctionDefinition * * Constraint: - * (head=AssertionOrDefinition_MetricDefinition_1_2_0 body=Expression) + * (head=AssertionOrDefinition_FunctionDefinition_1_2_0 body=Expression) */ - protected void sequence_AssertionOrDefinition(ISerializationContext context, MetricDefinition semanticObject) { + protected void sequence_AssertionOrDefinition(ISerializationContext context, FunctionDefinition semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__HEAD) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__HEAD)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__BODY) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__BODY)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__HEAD) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__HEAD)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__BODY) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__BODY)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getAssertionOrDefinitionAccess().getMetricDefinitionHeadAction_1_2_0(), semanticObject.getHead()); + feeder.accept(grammarAccess.getAssertionOrDefinitionAccess().getFunctionDefinitionHeadAction_1_2_0(), semanticObject.getHead()); feeder.accept(grammarAccess.getAssertionOrDefinitionAccess().getBodyExpressionParserRuleCall_1_2_2_0(), semanticObject.getBody()); feeder.finish(); } @@ -390,12 +411,12 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns MetricDefinition + * Statement returns FunctionDefinition * * Constraint: - * ((head=AssertionOrDefinition_MetricDefinition_1_2_0 body=Expression) | (type=[NamedElement|QualifiedName] head=Call body=Expression)) + * ((head=AssertionOrDefinition_FunctionDefinition_1_2_0 body=Expression) | (resultType=[Symbol|QualifiedName] head=Call body=Expression)) */ - protected void sequence_AssertionOrDefinition_MetricDefinition(ISerializationContext context, MetricDefinition semanticObject) { + protected void sequence_AssertionOrDefinition_FunctionDefinition(ISerializationContext context, FunctionDefinition semanticObject) { genericSequencer.createSequence(context, semanticObject); } @@ -409,10 +430,10 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS */ protected void sequence_AssertionOrDefinition(ISerializationContext context, PredicateDefinition semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.PREDICATE_DEFINITION__HEAD) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.PREDICATE_DEFINITION__HEAD)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.PREDICATE_DEFINITION__BODY) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.PREDICATE_DEFINITION__BODY)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__HEAD) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__HEAD)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__BODY) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__BODY)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); feeder.accept(grammarAccess.getAssertionOrDefinitionAccess().getPredicateDefinitionHeadAction_1_1_0(), semanticObject.getHead()); @@ -436,6 +457,28 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS } + /** + * Contexts: + * Statement returns Attribute + * Attribute returns Attribute + * + * Constraint: + * (kind=AttributeKind target=[Symbol|QualifiedName]) + */ + protected void sequence_Attribute(ISerializationContext context, Attribute semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.ATTRIBUTE__KIND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.ATTRIBUTE__KIND)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.ATTRIBUTE__TARGET) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.ATTRIBUTE__TARGET)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getAttributeAccess().getKindAttributeKindEnumRuleCall_0_0(), semanticObject.getKind()); + feeder.accept(grammarAccess.getAttributeAccess().getTargetSymbolQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.ATTRIBUTE__TARGET, false)); + feeder.finish(); + } + + /** * Contexts: * Multiplicity returns BoundedMultiplicity @@ -460,35 +503,32 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns BoundedScopeDefinition - * ScopeDefinition returns BoundedScopeDefinition - * BoundedScopeDefinition returns BoundedScopeDefinition + * Statement returns BoundedScope + * ScopeDeclaration returns BoundedScope + * BoundedScope returns BoundedScope * * Constraint: - * ((lowerBound=INT? type=[NamedElement|QualifiedName] upperBound=INT) | (upperBound=INT type=[NamedElement|QualifiedName] lowerBound=INT?)) + * ((lowerBound=INT? type=[Symbol|QualifiedName] upperBound=INT) | (upperBound=INT type=[Symbol|QualifiedName] lowerBound=INT?)) */ - protected void sequence_BoundedScopeDefinition(ISerializationContext context, BoundedScopeDefinition semanticObject) { + protected void sequence_BoundedScope(ISerializationContext context, BoundedScope semanticObject) { genericSequencer.createSequence(context, semanticObject); } /** * Contexts: - * Statement returns Call - * AssertionOrDefinition returns Call - * AssertionOrDefinition.Interpretation_1_0_0 returns Call + * AssertionOrDefinition.Assertion_1_0_0 returns Call * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Call - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Call + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Call * Expression returns Call - * ImplicationExpression returns Call - * ImplicationExpression.BinaryExpression_1_0 returns Call + * Expression.Forall_2_1_0 returns Call * DisjunctiveExpression returns Call * DisjunctiveExpression.Disjunction_1_0_0 returns Call * DisjunctiveExpression.Case_1_1_0 returns Call * ConjunctiveExpression returns Call * ConjunctiveExpression.Conjunction_1_0 returns Call * ComparisonExpression returns Call - * ComparisonExpression.Comparison_1_0 returns Call + * ComparisonExpression.BinaryExpression_1_0 returns Call * AdditiveExpression returns Call * AdditiveExpression.BinaryExpression_1_0 returns Call * MultiplicativeExpression returns Call @@ -498,19 +538,24 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns Call * CastExpression.CastExpression_1_0 returns Call * UnaryExpression returns Call - * AggregationExpression returns Call + * BracedAggregateExpression returns Call * AtomicExpression returns Call * Call returns Call * * Constraint: - * ( - * functor=Reference - * (transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? - * argumentList=ArgumentList - * ) + * (functor=Reference argumentList=ArgumentList) */ protected void sequence_Call(ISerializationContext context, Call semanticObject) { - genericSequencer.createSequence(context, semanticObject); + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CALL__FUNCTOR) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CALL__FUNCTOR)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CALL__ARGUMENT_LIST) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CALL__ARGUMENT_LIST)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getCallAccess().getFunctorReferenceParserRuleCall_0_0(), semanticObject.getFunctor()); + feeder.accept(grammarAccess.getCallAccess().getArgumentListArgumentListParserRuleCall_1_0(), semanticObject.getArgumentList()); + feeder.finish(); } @@ -537,21 +582,18 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns CastExpression - * AssertionOrDefinition returns CastExpression - * AssertionOrDefinition.Interpretation_1_0_0 returns CastExpression + * AssertionOrDefinition.Assertion_1_0_0 returns CastExpression * AssertionOrDefinition.PredicateDefinition_1_1_0 returns CastExpression - * AssertionOrDefinition.MetricDefinition_1_2_0 returns CastExpression + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns CastExpression * Expression returns CastExpression - * ImplicationExpression returns CastExpression - * ImplicationExpression.BinaryExpression_1_0 returns CastExpression + * Expression.Forall_2_1_0 returns CastExpression * DisjunctiveExpression returns CastExpression * DisjunctiveExpression.Disjunction_1_0_0 returns CastExpression * DisjunctiveExpression.Case_1_1_0 returns CastExpression * ConjunctiveExpression returns CastExpression * ConjunctiveExpression.Conjunction_1_0 returns CastExpression * ComparisonExpression returns CastExpression - * ComparisonExpression.Comparison_1_0 returns CastExpression + * ComparisonExpression.BinaryExpression_1_0 returns CastExpression * AdditiveExpression returns CastExpression * AdditiveExpression.BinaryExpression_1_0 returns CastExpression * MultiplicativeExpression returns CastExpression @@ -561,110 +603,100 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns CastExpression * CastExpression.CastExpression_1_0 returns CastExpression * UnaryExpression returns CastExpression - * AggregationExpression returns CastExpression + * BracedAggregateExpression returns CastExpression * AtomicExpression returns CastExpression * * Constraint: - * (body=CastExpression_CastExpression_1_0 type=[NamedElement|QualifiedName]) + * (body=CastExpression_CastExpression_1_0 targetType=[Symbol|QualifiedName]) */ protected void sequence_CastExpression(ISerializationContext context, CastExpression semanticObject) { if (errorAcceptor != null) { if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__BODY) == ValueTransient.YES) errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__BODY)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__TYPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__TYPE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__TARGET_TYPE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CAST_EXPRESSION__TARGET_TYPE)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); feeder.accept(grammarAccess.getCastExpressionAccess().getCastExpressionBodyAction_1_0(), semanticObject.getBody()); - feeder.accept(grammarAccess.getCastExpressionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.CAST_EXPRESSION__TYPE, false)); + feeder.accept(grammarAccess.getCastExpressionAccess().getTargetTypeSymbolQualifiedNameParserRuleCall_1_2_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.CAST_EXPRESSION__TARGET_TYPE, false)); feeder.finish(); } /** * Contexts: - * Statement returns ClassDefinition - * ClassDefinition returns ClassDefinition + * Statement returns ClassDeclaration + * ClassDeclaration returns ClassDeclaration * * Constraint: - * ( - * abstract?='abstract'? - * name=ID - * (superclasses+=[NamedElement|QualifiedName] superclasses+=[NamedElement|QualifiedName]*)? - * members+=MemberDefinition* - * ) + * ((abstract?='abstract' | root?='root')* name=ID (supertypes+=[Symbol|QualifiedName] supertypes+=[Symbol|QualifiedName]*)? fields+=Field*) */ - protected void sequence_ClassDefinition(ISerializationContext context, ClassDefinition semanticObject) { + protected void sequence_ClassDeclaration(ISerializationContext context, ClassDeclaration semanticObject) { genericSequencer.createSequence(context, semanticObject); } /** * Contexts: - * Statement returns Comparison - * AssertionOrDefinition returns Comparison - * AssertionOrDefinition.Interpretation_1_0_0 returns Comparison - * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Comparison - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Comparison - * Expression returns Comparison - * ImplicationExpression returns Comparison - * ImplicationExpression.BinaryExpression_1_0 returns Comparison - * DisjunctiveExpression returns Comparison - * DisjunctiveExpression.Disjunction_1_0_0 returns Comparison - * DisjunctiveExpression.Case_1_1_0 returns Comparison - * ConjunctiveExpression returns Comparison - * ConjunctiveExpression.Conjunction_1_0 returns Comparison - * ComparisonExpression returns Comparison - * ComparisonExpression.Comparison_1_0 returns Comparison - * AdditiveExpression returns Comparison - * AdditiveExpression.BinaryExpression_1_0 returns Comparison - * MultiplicativeExpression returns Comparison - * MultiplicativeExpression.BinaryExpression_1_0 returns Comparison - * ExponentialExpression returns Comparison - * ExponentialExpression.BinaryExpression_1_0 returns Comparison - * CastExpression returns Comparison - * CastExpression.CastExpression_1_0 returns Comparison - * UnaryExpression returns Comparison - * AggregationExpression returns Comparison - * AtomicExpression returns Comparison + * AssertionOrDefinition.Assertion_1_0_0 returns ConditionalExpression + * AssertionOrDefinition.PredicateDefinition_1_1_0 returns ConditionalExpression + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns ConditionalExpression + * Expression returns ConditionalExpression + * Expression.Forall_2_1_0 returns ConditionalExpression + * ConditionalExpression returns ConditionalExpression + * DisjunctiveExpression returns ConditionalExpression + * DisjunctiveExpression.Disjunction_1_0_0 returns ConditionalExpression + * DisjunctiveExpression.Case_1_1_0 returns ConditionalExpression + * ConjunctiveExpression returns ConditionalExpression + * ConjunctiveExpression.Conjunction_1_0 returns ConditionalExpression + * ComparisonExpression returns ConditionalExpression + * ComparisonExpression.BinaryExpression_1_0 returns ConditionalExpression + * AdditiveExpression returns ConditionalExpression + * AdditiveExpression.BinaryExpression_1_0 returns ConditionalExpression + * MultiplicativeExpression returns ConditionalExpression + * MultiplicativeExpression.BinaryExpression_1_0 returns ConditionalExpression + * ExponentialExpression returns ConditionalExpression + * ExponentialExpression.BinaryExpression_1_0 returns ConditionalExpression + * CastExpression returns ConditionalExpression + * CastExpression.CastExpression_1_0 returns ConditionalExpression + * UnaryExpression returns ConditionalExpression + * BracedAggregateExpression returns ConditionalExpression + * AtomicExpression returns ConditionalExpression * * Constraint: - * (left=ComparisonExpression_Comparison_1_0 op=ComparisonOperator right=AdditiveExpression) + * (condition=DisjunctiveExpression then=Expression else=Expression) */ - protected void sequence_ComparisonExpression(ISerializationContext context, Comparison semanticObject) { + protected void sequence_ConditionalExpression(ISerializationContext context, ConditionalExpression semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.COMPARISON__LEFT) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.COMPARISON__LEFT)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.COMPARISON__OP) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.COMPARISON__OP)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.COMPARISON__RIGHT) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.COMPARISON__RIGHT)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CONDITIONAL_EXPRESSION__CONDITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CONDITIONAL_EXPRESSION__CONDITION)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CONDITIONAL_EXPRESSION__THEN) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CONDITIONAL_EXPRESSION__THEN)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.CONDITIONAL_EXPRESSION__ELSE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.CONDITIONAL_EXPRESSION__ELSE)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getComparisonExpressionAccess().getComparisonLeftAction_1_0(), semanticObject.getLeft()); - feeder.accept(grammarAccess.getComparisonExpressionAccess().getOpComparisonOperatorEnumRuleCall_1_1_0(), semanticObject.getOp()); - feeder.accept(grammarAccess.getComparisonExpressionAccess().getRightAdditiveExpressionParserRuleCall_1_2_0(), semanticObject.getRight()); + feeder.accept(grammarAccess.getConditionalExpressionAccess().getConditionDisjunctiveExpressionParserRuleCall_1_0(), semanticObject.getCondition()); + feeder.accept(grammarAccess.getConditionalExpressionAccess().getThenExpressionParserRuleCall_3_0(), semanticObject.getThen()); + feeder.accept(grammarAccess.getConditionalExpressionAccess().getElseExpressionParserRuleCall_5_0(), semanticObject.getElse()); feeder.finish(); } /** * Contexts: - * Statement returns Conjunction - * AssertionOrDefinition returns Conjunction - * AssertionOrDefinition.Interpretation_1_0_0 returns Conjunction + * AssertionOrDefinition.Assertion_1_0_0 returns Conjunction * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Conjunction - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Conjunction + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Conjunction * Expression returns Conjunction - * ImplicationExpression returns Conjunction - * ImplicationExpression.BinaryExpression_1_0 returns Conjunction + * Expression.Forall_2_1_0 returns Conjunction * DisjunctiveExpression returns Conjunction * DisjunctiveExpression.Disjunction_1_0_0 returns Conjunction * DisjunctiveExpression.Case_1_1_0 returns Conjunction * ConjunctiveExpression returns Conjunction * ConjunctiveExpression.Conjunction_1_0 returns Conjunction * ComparisonExpression returns Conjunction - * ComparisonExpression.Comparison_1_0 returns Conjunction + * ComparisonExpression.BinaryExpression_1_0 returns Conjunction * AdditiveExpression returns Conjunction * AdditiveExpression.BinaryExpression_1_0 returns Conjunction * MultiplicativeExpression returns Conjunction @@ -674,7 +706,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns Conjunction * CastExpression.CastExpression_1_0 returns Conjunction * UnaryExpression returns Conjunction - * AggregationExpression returns Conjunction + * BracedAggregateExpression returns Conjunction * AtomicExpression returns Conjunction * * Constraint: @@ -687,43 +719,72 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns DefaultDefinition - * DefaultDefinition returns DefaultDefinition + * AssertionOrDefinition.Assertion_1_0_0 returns Count + * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Count + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Count + * Expression returns Count + * Expression.Forall_2_1_0 returns Count + * DisjunctiveExpression returns Count + * DisjunctiveExpression.Disjunction_1_0_0 returns Count + * DisjunctiveExpression.Case_1_1_0 returns Count + * ConjunctiveExpression returns Count + * ConjunctiveExpression.Conjunction_1_0 returns Count + * ComparisonExpression returns Count + * ComparisonExpression.BinaryExpression_1_0 returns Count + * AdditiveExpression returns Count + * AdditiveExpression.BinaryExpression_1_0 returns Count + * MultiplicativeExpression returns Count + * MultiplicativeExpression.BinaryExpression_1_0 returns Count + * ExponentialExpression returns Count + * ExponentialExpression.BinaryExpression_1_0 returns Count + * CastExpression returns Count + * CastExpression.CastExpression_1_0 returns Count + * UnaryExpression returns Count + * BracedAggregateExpression returns Count + * Count returns Count + * AtomicExpression returns Count * * Constraint: - * (head=Call range=Expression) + * condition=Expression */ - protected void sequence_DefaultDefinition(ISerializationContext context, DefaultDefinition semanticObject) { + protected void sequence_Count(ISerializationContext context, Count semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.DEFAULT_DEFINITION__HEAD) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.DEFAULT_DEFINITION__HEAD)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.DEFAULT_DEFINITION__RANGE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.DEFAULT_DEFINITION__RANGE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.AGGREGATE_EXPRESSION__CONDITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.AGGREGATE_EXPRESSION__CONDITION)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getDefaultDefinitionAccess().getHeadCallParserRuleCall_1_0(), semanticObject.getHead()); - feeder.accept(grammarAccess.getDefaultDefinitionAccess().getRangeExpressionParserRuleCall_3_0(), semanticObject.getRange()); + feeder.accept(grammarAccess.getCountAccess().getConditionExpressionParserRuleCall_2_0(), semanticObject.getCondition()); feeder.finish(); } /** * Contexts: - * Statement returns Disjunction - * AssertionOrDefinition returns Disjunction - * AssertionOrDefinition.Interpretation_1_0_0 returns Disjunction + * Statement returns DefaultAssertion + * DefaultAssertion returns DefaultAssertion + * + * Constraint: + * (expression=Call range=Expression?) + */ + protected void sequence_DefaultAssertion(ISerializationContext context, DefaultAssertion semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * AssertionOrDefinition.Assertion_1_0_0 returns Disjunction * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Disjunction - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Disjunction + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Disjunction * Expression returns Disjunction - * ImplicationExpression returns Disjunction - * ImplicationExpression.BinaryExpression_1_0 returns Disjunction + * Expression.Forall_2_1_0 returns Disjunction * DisjunctiveExpression returns Disjunction * DisjunctiveExpression.Disjunction_1_0_0 returns Disjunction * DisjunctiveExpression.Case_1_1_0 returns Disjunction * ConjunctiveExpression returns Disjunction * ConjunctiveExpression.Conjunction_1_0 returns Disjunction * ComparisonExpression returns Disjunction - * ComparisonExpression.Comparison_1_0 returns Disjunction + * ComparisonExpression.BinaryExpression_1_0 returns Disjunction * AdditiveExpression returns Disjunction * AdditiveExpression.BinaryExpression_1_0 returns Disjunction * MultiplicativeExpression returns Disjunction @@ -733,7 +794,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns Disjunction * CastExpression.CastExpression_1_0 returns Disjunction * UnaryExpression returns Disjunction - * AggregationExpression returns Disjunction + * BracedAggregateExpression returns Disjunction * AtomicExpression returns Disjunction * * Constraint: @@ -746,21 +807,18 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns Switch - * AssertionOrDefinition returns Switch - * AssertionOrDefinition.Interpretation_1_0_0 returns Switch + * AssertionOrDefinition.Assertion_1_0_0 returns Switch * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Switch - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Switch + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Switch * Expression returns Switch - * ImplicationExpression returns Switch - * ImplicationExpression.BinaryExpression_1_0 returns Switch + * Expression.Forall_2_1_0 returns Switch * DisjunctiveExpression returns Switch * DisjunctiveExpression.Disjunction_1_0_0 returns Switch * DisjunctiveExpression.Case_1_1_0 returns Switch * ConjunctiveExpression returns Switch * ConjunctiveExpression.Conjunction_1_0 returns Switch * ComparisonExpression returns Switch - * ComparisonExpression.Comparison_1_0 returns Switch + * ComparisonExpression.BinaryExpression_1_0 returns Switch * AdditiveExpression returns Switch * AdditiveExpression.BinaryExpression_1_0 returns Switch * MultiplicativeExpression returns Switch @@ -770,7 +828,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns Switch * CastExpression.CastExpression_1_0 returns Switch * UnaryExpression returns Switch - * AggregationExpression returns Switch + * BracedAggregateExpression returns Switch * AtomicExpression returns Switch * * Constraint: @@ -804,81 +862,109 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns EmptyIntervalLiteral - * AssertionOrDefinition returns EmptyIntervalLiteral - * AssertionOrDefinition.Interpretation_1_0_0 returns EmptyIntervalLiteral - * AssertionOrDefinition.PredicateDefinition_1_1_0 returns EmptyIntervalLiteral - * AssertionOrDefinition.MetricDefinition_1_2_0 returns EmptyIntervalLiteral - * Expression returns EmptyIntervalLiteral - * ImplicationExpression returns EmptyIntervalLiteral - * ImplicationExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral - * DisjunctiveExpression returns EmptyIntervalLiteral - * DisjunctiveExpression.Disjunction_1_0_0 returns EmptyIntervalLiteral - * DisjunctiveExpression.Case_1_1_0 returns EmptyIntervalLiteral - * ConjunctiveExpression returns EmptyIntervalLiteral - * ConjunctiveExpression.Conjunction_1_0 returns EmptyIntervalLiteral - * ComparisonExpression returns EmptyIntervalLiteral - * ComparisonExpression.Comparison_1_0 returns EmptyIntervalLiteral - * AdditiveExpression returns EmptyIntervalLiteral - * AdditiveExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral - * MultiplicativeExpression returns EmptyIntervalLiteral - * MultiplicativeExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral - * ExponentialExpression returns EmptyIntervalLiteral - * ExponentialExpression.BinaryExpression_1_0 returns EmptyIntervalLiteral - * CastExpression returns EmptyIntervalLiteral - * CastExpression.CastExpression_1_0 returns EmptyIntervalLiteral - * UnaryExpression returns EmptyIntervalLiteral - * AggregationExpression returns EmptyIntervalLiteral - * AtomicExpression returns EmptyIntervalLiteral - * Literal returns EmptyIntervalLiteral - * EmptyIntervalLiteral returns EmptyIntervalLiteral + * AssertionOrDefinition.Assertion_1_0_0 returns EmptyLiteral + * AssertionOrDefinition.PredicateDefinition_1_1_0 returns EmptyLiteral + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns EmptyLiteral + * Expression returns EmptyLiteral + * Expression.Forall_2_1_0 returns EmptyLiteral + * DisjunctiveExpression returns EmptyLiteral + * DisjunctiveExpression.Disjunction_1_0_0 returns EmptyLiteral + * DisjunctiveExpression.Case_1_1_0 returns EmptyLiteral + * ConjunctiveExpression returns EmptyLiteral + * ConjunctiveExpression.Conjunction_1_0 returns EmptyLiteral + * ComparisonExpression returns EmptyLiteral + * ComparisonExpression.BinaryExpression_1_0 returns EmptyLiteral + * AdditiveExpression returns EmptyLiteral + * AdditiveExpression.BinaryExpression_1_0 returns EmptyLiteral + * MultiplicativeExpression returns EmptyLiteral + * MultiplicativeExpression.BinaryExpression_1_0 returns EmptyLiteral + * ExponentialExpression returns EmptyLiteral + * ExponentialExpression.BinaryExpression_1_0 returns EmptyLiteral + * CastExpression returns EmptyLiteral + * CastExpression.CastExpression_1_0 returns EmptyLiteral + * UnaryExpression returns EmptyLiteral + * BracedAggregateExpression returns EmptyLiteral + * AtomicExpression returns EmptyLiteral + * Literal returns EmptyLiteral + * EmptyLiteral returns EmptyLiteral * * Constraint: - * {EmptyIntervalLiteral} + * {EmptyLiteral} */ - protected void sequence_EmptyIntervalLiteral(ISerializationContext context, EmptyIntervalLiteral semanticObject) { + protected void sequence_EmptyLiteral(ISerializationContext context, EmptyLiteral semanticObject) { genericSequencer.createSequence(context, semanticObject); } + /** + * Contexts: + * Statement returns EnumDeclaration + * EnumDeclaration returns EnumDeclaration + * + * Constraint: + * (name=ID (literals+=EnumLiteral literals+=EnumLiteral*)?) + */ + protected void sequence_EnumDeclaration(ISerializationContext context, EnumDeclaration semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * EnumLiteral returns EnumLiteral + * + * Constraint: + * name=ID + */ + protected void sequence_EnumLiteral(ISerializationContext context, EnumLiteral semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.ENUM_LITERAL__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.ENUM_LITERAL__NAME)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getEnumLiteralAccess().getNameIDTerminalRuleCall_0(), semanticObject.getName()); + feeder.finish(); + } + + /** * Contexts: * Multiplicity returns ExactMultiplicity * ExactMultiplicity returns ExactMultiplicity * * Constraint: - * multiplicity=UpperMultiplicty + * value=UpperMultiplicty */ protected void sequence_ExactMultiplicity(ISerializationContext context, ExactMultiplicity semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXACT_MULTIPLICITY__MULTIPLICITY) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXACT_MULTIPLICITY__MULTIPLICITY)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXACT_MULTIPLICITY__VALUE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXACT_MULTIPLICITY__VALUE)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getExactMultiplicityAccess().getMultiplicityUpperMultiplictyParserRuleCall_1_0(), semanticObject.getMultiplicity()); + feeder.accept(grammarAccess.getExactMultiplicityAccess().getValueUpperMultiplictyParserRuleCall_1_0(), semanticObject.getValue()); feeder.finish(); } /** * Contexts: - * Statement returns ExactScopeDefinition - * ScopeDefinition returns ExactScopeDefinition - * ExactScopeDefinition returns ExactScopeDefinition + * Statement returns ExactScope + * ScopeDeclaration returns ExactScope + * ExactScope returns ExactScope * * Constraint: - * (type=[NamedElement|QualifiedName] exactScope=INT) + * (type=[Symbol|QualifiedName] size=INT) */ - protected void sequence_ExactScopeDefinition(ISerializationContext context, ExactScopeDefinition semanticObject) { + protected void sequence_ExactScope(ISerializationContext context, ExactScope semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.SCOPE_DEFINITION__TYPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.SCOPE_DEFINITION__TYPE)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXACT_SCOPE_DEFINITION__EXACT_SCOPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXACT_SCOPE_DEFINITION__EXACT_SCOPE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.SCOPE_DECLARATION__TYPE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.SCOPE_DECLARATION__TYPE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXACT_SCOPE__SIZE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXACT_SCOPE__SIZE)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getExactScopeDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.SCOPE_DEFINITION__TYPE, false)); - feeder.accept(grammarAccess.getExactScopeDefinitionAccess().getExactScopeINTTerminalRuleCall_3_0(), semanticObject.getExactScope()); + feeder.accept(grammarAccess.getExactScopeAccess().getTypeSymbolQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.SCOPE_DECLARATION__TYPE, false)); + feeder.accept(grammarAccess.getExactScopeAccess().getSizeINTTerminalRuleCall_3_0(), semanticObject.getSize()); feeder.finish(); } @@ -889,171 +975,204 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * ExpressionArgument returns ExpressionArgument * * Constraint: - * body=ComparisonExpression + * expression=ComparisonExpression */ protected void sequence_ExpressionArgument(ISerializationContext context, ExpressionArgument semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXPRESSION_ARGUMENT__BODY) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXPRESSION_ARGUMENT__BODY)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXPRESSION_ARGUMENT__EXPRESSION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXPRESSION_ARGUMENT__EXPRESSION)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getExpressionArgumentAccess().getBodyComparisonExpressionParserRuleCall_0(), semanticObject.getBody()); + feeder.accept(grammarAccess.getExpressionArgumentAccess().getExpressionComparisonExpressionParserRuleCall_0(), semanticObject.getExpression()); feeder.finish(); } /** * Contexts: - * Statement returns ExternAggregatorDefinition - * ExternAggregatorDefinition returns ExternAggregatorDefinition + * AssertionOrDefinition.Assertion_1_0_0 returns Forall + * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Forall + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Forall + * Expression returns Forall + * Expression.Forall_2_1_0 returns Forall + * DisjunctiveExpression returns Forall + * DisjunctiveExpression.Disjunction_1_0_0 returns Forall + * DisjunctiveExpression.Case_1_1_0 returns Forall + * ConjunctiveExpression returns Forall + * ConjunctiveExpression.Conjunction_1_0 returns Forall + * ComparisonExpression returns Forall + * ComparisonExpression.BinaryExpression_1_0 returns Forall + * AdditiveExpression returns Forall + * AdditiveExpression.BinaryExpression_1_0 returns Forall + * MultiplicativeExpression returns Forall + * MultiplicativeExpression.BinaryExpression_1_0 returns Forall + * ExponentialExpression returns Forall + * ExponentialExpression.BinaryExpression_1_0 returns Forall + * CastExpression returns Forall + * CastExpression.CastExpression_1_0 returns Forall + * UnaryExpression returns Forall + * BracedAggregateExpression returns Forall + * AtomicExpression returns Forall * * Constraint: - * (type=[NamedElement|QualifiedName] name=QualifiedName inputType=[NamedElement|QualifiedName]) + * (condition=Expression_Forall_2_1_0 body=DisjunctiveExpression) */ - protected void sequence_ExternAggregatorDefinition(ISerializationContext context, ExternAggregatorDefinition semanticObject) { + protected void sequence_Expression(ISerializationContext context, Forall semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__TYPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__TYPE)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__NAME) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__NAME)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.AGGREGATE_EXPRESSION__CONDITION) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.AGGREGATE_EXPRESSION__CONDITION)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.FORALL__BODY) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.FORALL__BODY)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getExternAggregatorDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__TYPE, false)); - feeder.accept(grammarAccess.getExternAggregatorDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0(), semanticObject.getName()); - feeder.accept(grammarAccess.getExternAggregatorDefinitionAccess().getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_AGGREGATOR_DEFINITION__INPUT_TYPE, false)); + feeder.accept(grammarAccess.getExpressionAccess().getForallConditionAction_2_1_0(), semanticObject.getCondition()); + feeder.accept(grammarAccess.getExpressionAccess().getBodyDisjunctiveExpressionParserRuleCall_2_1_2_0(), semanticObject.getBody()); feeder.finish(); } /** * Contexts: - * Statement returns ExternDatatypeDefinition - * ExternDatatypeDefinition returns ExternDatatypeDefinition + * Statement returns ExternAggregationOperatorDeclaration + * ExternDeclaration returns ExternAggregationOperatorDeclaration + * ExternAggregationOperatorDeclaration returns ExternAggregationOperatorDeclaration * * Constraint: - * (name=QualifiedName supertypes+=[NamedElement|QualifiedName] supertypes+=[NamedElement|QualifiedName]*) + * (resultType=[Symbol|QualifiedName] name=QualifiedName argumentType=[Symbol|QualifiedName]) */ - protected void sequence_ExternDatatypeDefinition(ISerializationContext context, ExternDatatypeDefinition semanticObject) { - genericSequencer.createSequence(context, semanticObject); + protected void sequence_ExternAggregationOperatorDeclaration(ISerializationContext context, ExternAggregationOperatorDeclaration semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_DECLARATION__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_DECLARATION__NAME)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getExternAggregationOperatorDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE, false)); + feeder.accept(grammarAccess.getExternAggregationOperatorDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0(), semanticObject.getName()); + feeder.accept(grammarAccess.getExternAggregationOperatorDeclarationAccess().getArgumentTypeSymbolQualifiedNameParserRuleCall_4_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE, false)); + feeder.finish(); } /** * Contexts: - * Statement returns ExternMetricDefinition - * ExternMetricDefinition returns ExternMetricDefinition + * Statement returns ExternDatatypeDeclaration + * ExternDeclaration returns ExternDatatypeDeclaration + * ExternDatatypeDeclaration returns ExternDatatypeDeclaration * * Constraint: - * (type=[NamedElement|QualifiedName] name=QualifiedName argumentList=ArgumentList) + * name=QualifiedName */ - protected void sequence_ExternMetricDefinition(ISerializationContext context, ExternMetricDefinition semanticObject) { + protected void sequence_ExternDatatypeDeclaration(ISerializationContext context, ExternDatatypeDeclaration semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__TYPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__TYPE)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__NAME) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__NAME)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__ARGUMENT_LIST)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_DECLARATION__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_DECLARATION__NAME)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getExternMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_METRIC_DEFINITION__TYPE, false)); - feeder.accept(grammarAccess.getExternMetricDefinitionAccess().getNameQualifiedNameParserRuleCall_2_0(), semanticObject.getName()); - feeder.accept(grammarAccess.getExternMetricDefinitionAccess().getArgumentListArgumentListParserRuleCall_3_0(), semanticObject.getArgumentList()); + feeder.accept(grammarAccess.getExternDatatypeDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0(), semanticObject.getName()); feeder.finish(); } /** * Contexts: - * Statement returns ExternPredicateDefinition - * ExternPredicateDefinition returns ExternPredicateDefinition + * Statement returns ExternFunctionDeclaration + * ExternDeclaration returns ExternFunctionDeclaration + * ExternFunctionDeclaration returns ExternFunctionDeclaration * * Constraint: - * (name=QualifiedName argumentList=ArgumentList) + * (resultType=[Symbol|QualifiedName] name=QualifiedName argumentList=ArgumentList) */ - protected void sequence_ExternPredicateDefinition(ISerializationContext context, ExternPredicateDefinition semanticObject) { + protected void sequence_ExternFunctionDeclaration(ISerializationContext context, ExternFunctionDeclaration semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__NAME) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__NAME)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_PREDICATE_DEFINITION__ARGUMENT_LIST)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_DECLARATION__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_DECLARATION__NAME)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getExternPredicateDefinitionAccess().getNameQualifiedNameParserRuleCall_1_0(), semanticObject.getName()); - feeder.accept(grammarAccess.getExternPredicateDefinitionAccess().getArgumentListArgumentListParserRuleCall_2_0(), semanticObject.getArgumentList()); + feeder.accept(grammarAccess.getExternFunctionDeclarationAccess().getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.EXTERN_FUNCTION_DECLARATION__RESULT_TYPE, false)); + feeder.accept(grammarAccess.getExternFunctionDeclarationAccess().getNameQualifiedNameParserRuleCall_2_0(), semanticObject.getName()); + feeder.accept(grammarAccess.getExternFunctionDeclarationAccess().getArgumentListArgumentListParserRuleCall_3_0(), semanticObject.getArgumentList()); feeder.finish(); } /** * Contexts: - * Statement returns IfElse - * AssertionOrDefinition returns IfElse - * AssertionOrDefinition.Interpretation_1_0_0 returns IfElse - * AssertionOrDefinition.PredicateDefinition_1_1_0 returns IfElse - * AssertionOrDefinition.MetricDefinition_1_2_0 returns IfElse - * Expression returns IfElse - * IfElse returns IfElse - * ImplicationExpression returns IfElse - * ImplicationExpression.BinaryExpression_1_0 returns IfElse - * DisjunctiveExpression returns IfElse - * DisjunctiveExpression.Disjunction_1_0_0 returns IfElse - * DisjunctiveExpression.Case_1_1_0 returns IfElse - * ConjunctiveExpression returns IfElse - * ConjunctiveExpression.Conjunction_1_0 returns IfElse - * ComparisonExpression returns IfElse - * ComparisonExpression.Comparison_1_0 returns IfElse - * AdditiveExpression returns IfElse - * AdditiveExpression.BinaryExpression_1_0 returns IfElse - * MultiplicativeExpression returns IfElse - * MultiplicativeExpression.BinaryExpression_1_0 returns IfElse - * ExponentialExpression returns IfElse - * ExponentialExpression.BinaryExpression_1_0 returns IfElse - * CastExpression returns IfElse - * CastExpression.CastExpression_1_0 returns IfElse - * UnaryExpression returns IfElse - * AggregationExpression returns IfElse - * AtomicExpression returns IfElse + * Statement returns ExternPredicateDeclaration + * ExternDeclaration returns ExternPredicateDeclaration + * ExternPredicateDeclaration returns ExternPredicateDeclaration + * + * Constraint: + * ((functional?='functional' | error?='error')* name=QualifiedName argumentList=ArgumentList) + */ + protected void sequence_ExternPredicateDeclaration(ISerializationContext context, ExternPredicateDeclaration semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * Field returns Field + * + * Constraint: + * ( + * (containment?='contains' | crossReference?='refers')? + * type=[Symbol|QualifiedName] + * multiplicity=Multiplicity? + * name=ID + * opposite=[Symbol|QualifiedName]? + * ) + */ + protected void sequence_Field(ISerializationContext context, Field semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * FunctionDefinition returns FunctionDefinition * * Constraint: - * (condition=Expression then=Expression else=Expression) + * (resultType=[Symbol|QualifiedName] head=Call body=Expression) */ - protected void sequence_IfElse(ISerializationContext context, IfElse semanticObject) { + protected void sequence_FunctionDefinition(ISerializationContext context, FunctionDefinition semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.IF_ELSE__CONDITION) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.IF_ELSE__CONDITION)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.IF_ELSE__THEN) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.IF_ELSE__THEN)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.IF_ELSE__ELSE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.IF_ELSE__ELSE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.FUNCTION_DEFINITION__RESULT_TYPE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.FUNCTION_DEFINITION__RESULT_TYPE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__HEAD) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__HEAD)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__BODY) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.FUNCTOR_DEFINITON__BODY)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getIfElseAccess().getConditionExpressionParserRuleCall_1_0(), semanticObject.getCondition()); - feeder.accept(grammarAccess.getIfElseAccess().getThenExpressionParserRuleCall_3_0(), semanticObject.getThen()); - feeder.accept(grammarAccess.getIfElseAccess().getElseExpressionParserRuleCall_5_0(), semanticObject.getElse()); + feeder.accept(grammarAccess.getFunctionDefinitionAccess().getResultTypeSymbolQualifiedNameParserRuleCall_0_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.FUNCTION_DEFINITION__RESULT_TYPE, false)); + feeder.accept(grammarAccess.getFunctionDefinitionAccess().getHeadCallParserRuleCall_1_0(), semanticObject.getHead()); + feeder.accept(grammarAccess.getFunctionDefinitionAccess().getBodyExpressionParserRuleCall_3_0(), semanticObject.getBody()); feeder.finish(); } /** * Contexts: - * Statement returns InfinityLiteral - * AssertionOrDefinition returns InfinityLiteral - * AssertionOrDefinition.Interpretation_1_0_0 returns InfinityLiteral + * AssertionOrDefinition.Assertion_1_0_0 returns InfinityLiteral * AssertionOrDefinition.PredicateDefinition_1_1_0 returns InfinityLiteral - * AssertionOrDefinition.MetricDefinition_1_2_0 returns InfinityLiteral + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns InfinityLiteral * Expression returns InfinityLiteral - * ImplicationExpression returns InfinityLiteral - * ImplicationExpression.BinaryExpression_1_0 returns InfinityLiteral + * Expression.Forall_2_1_0 returns InfinityLiteral * DisjunctiveExpression returns InfinityLiteral * DisjunctiveExpression.Disjunction_1_0_0 returns InfinityLiteral * DisjunctiveExpression.Case_1_1_0 returns InfinityLiteral * ConjunctiveExpression returns InfinityLiteral * ConjunctiveExpression.Conjunction_1_0 returns InfinityLiteral * ComparisonExpression returns InfinityLiteral - * ComparisonExpression.Comparison_1_0 returns InfinityLiteral + * ComparisonExpression.BinaryExpression_1_0 returns InfinityLiteral * AdditiveExpression returns InfinityLiteral * AdditiveExpression.BinaryExpression_1_0 returns InfinityLiteral * MultiplicativeExpression returns InfinityLiteral @@ -1063,7 +1182,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns InfinityLiteral * CastExpression.CastExpression_1_0 returns InfinityLiteral * UnaryExpression returns InfinityLiteral - * AggregationExpression returns InfinityLiteral + * BracedAggregateExpression returns InfinityLiteral * AtomicExpression returns InfinityLiteral * Literal returns InfinityLiteral * InfinityLiteral returns InfinityLiteral @@ -1078,21 +1197,60 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns Interval - * AssertionOrDefinition returns Interval - * AssertionOrDefinition.Interpretation_1_0_0 returns Interval + * AssertionOrDefinition.Assertion_1_0_0 returns IntLiteral + * AssertionOrDefinition.PredicateDefinition_1_1_0 returns IntLiteral + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns IntLiteral + * Expression returns IntLiteral + * Expression.Forall_2_1_0 returns IntLiteral + * DisjunctiveExpression returns IntLiteral + * DisjunctiveExpression.Disjunction_1_0_0 returns IntLiteral + * DisjunctiveExpression.Case_1_1_0 returns IntLiteral + * ConjunctiveExpression returns IntLiteral + * ConjunctiveExpression.Conjunction_1_0 returns IntLiteral + * ComparisonExpression returns IntLiteral + * ComparisonExpression.BinaryExpression_1_0 returns IntLiteral + * AdditiveExpression returns IntLiteral + * AdditiveExpression.BinaryExpression_1_0 returns IntLiteral + * MultiplicativeExpression returns IntLiteral + * MultiplicativeExpression.BinaryExpression_1_0 returns IntLiteral + * ExponentialExpression returns IntLiteral + * ExponentialExpression.BinaryExpression_1_0 returns IntLiteral + * CastExpression returns IntLiteral + * CastExpression.CastExpression_1_0 returns IntLiteral + * UnaryExpression returns IntLiteral + * BracedAggregateExpression returns IntLiteral + * AtomicExpression returns IntLiteral + * Literal returns IntLiteral + * IntLiteral returns IntLiteral + * + * Constraint: + * value=INT + */ + protected void sequence_IntLiteral(ISerializationContext context, IntLiteral semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.INT_LITERAL__VALUE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.INT_LITERAL__VALUE)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getIntLiteralAccess().getValueINTTerminalRuleCall_0(), semanticObject.getValue()); + feeder.finish(); + } + + + /** + * Contexts: + * AssertionOrDefinition.Assertion_1_0_0 returns Interval * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Interval - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Interval + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Interval * Expression returns Interval - * ImplicationExpression returns Interval - * ImplicationExpression.BinaryExpression_1_0 returns Interval + * Expression.Forall_2_1_0 returns Interval * DisjunctiveExpression returns Interval * DisjunctiveExpression.Disjunction_1_0_0 returns Interval * DisjunctiveExpression.Case_1_1_0 returns Interval * ConjunctiveExpression returns Interval * ConjunctiveExpression.Conjunction_1_0 returns Interval * ComparisonExpression returns Interval - * ComparisonExpression.Comparison_1_0 returns Interval + * ComparisonExpression.BinaryExpression_1_0 returns Interval * AdditiveExpression returns Interval * AdditiveExpression.BinaryExpression_1_0 returns Interval * MultiplicativeExpression returns Interval @@ -1102,12 +1260,12 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns Interval * CastExpression.CastExpression_1_0 returns Interval * UnaryExpression returns Interval - * AggregationExpression returns Interval + * BracedAggregateExpression returns Interval * AtomicExpression returns Interval * Interval returns Interval * * Constraint: - * (lowerBound=Expression upperBound=Expression) + * (lowerBound=AdditiveExpression upperBound=AdditiveExpression) */ protected void sequence_Interval(ISerializationContext context, Interval semanticObject) { if (errorAcceptor != null) { @@ -1117,8 +1275,8 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.INTERVAL__UPPER_BOUND)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getIntervalAccess().getLowerBoundExpressionParserRuleCall_1_0(), semanticObject.getLowerBound()); - feeder.accept(grammarAccess.getIntervalAccess().getUpperBoundExpressionParserRuleCall_3_0(), semanticObject.getUpperBound()); + feeder.accept(grammarAccess.getIntervalAccess().getLowerBoundAdditiveExpressionParserRuleCall_1_0(), semanticObject.getLowerBound()); + feeder.accept(grammarAccess.getIntervalAccess().getUpperBoundAdditiveExpressionParserRuleCall_3_0(), semanticObject.getUpperBound()); feeder.finish(); } @@ -1128,89 +1286,62 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * LetBinding returns LetBinding * * Constraint: - * (variable=Variable value=AdditiveExpression) + * (type=[Symbol|QualifiedName]? name=ID value=AdditiveExpression) */ protected void sequence_LetBinding(ISerializationContext context, LetBinding semanticObject) { - if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.LET_BINDING__VARIABLE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.LET_BINDING__VARIABLE)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.LET_BINDING__VALUE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.LET_BINDING__VALUE)); - } - SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getLetBindingAccess().getVariableVariableParserRuleCall_0_0(), semanticObject.getVariable()); - feeder.accept(grammarAccess.getLetBindingAccess().getValueAdditiveExpressionParserRuleCall_2_0(), semanticObject.getValue()); - feeder.finish(); - } - - - /** - * Contexts: - * Statement returns Let - * AssertionOrDefinition returns Let - * AssertionOrDefinition.Interpretation_1_0_0 returns Let - * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Let - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Let - * Expression returns Let - * Let returns Let - * ImplicationExpression returns Let - * ImplicationExpression.BinaryExpression_1_0 returns Let - * DisjunctiveExpression returns Let - * DisjunctiveExpression.Disjunction_1_0_0 returns Let - * DisjunctiveExpression.Case_1_1_0 returns Let - * ConjunctiveExpression returns Let - * ConjunctiveExpression.Conjunction_1_0 returns Let - * ComparisonExpression returns Let - * ComparisonExpression.Comparison_1_0 returns Let - * AdditiveExpression returns Let - * AdditiveExpression.BinaryExpression_1_0 returns Let - * MultiplicativeExpression returns Let - * MultiplicativeExpression.BinaryExpression_1_0 returns Let - * ExponentialExpression returns Let - * ExponentialExpression.BinaryExpression_1_0 returns Let - * CastExpression returns Let - * CastExpression.CastExpression_1_0 returns Let - * UnaryExpression returns Let - * AggregationExpression returns Let - * AtomicExpression returns Let - * - * Constraint: - * (bindings+=LetBinding bindings+=LetBinding* body=Expression) - */ - protected void sequence_Let(ISerializationContext context, Let semanticObject) { genericSequencer.createSequence(context, semanticObject); } /** * Contexts: - * LocalVariables returns LocalVariables + * AssertionOrDefinition.Assertion_1_0_0 returns LetExpression + * AssertionOrDefinition.PredicateDefinition_1_1_0 returns LetExpression + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns LetExpression + * Expression returns LetExpression + * Expression.Forall_2_1_0 returns LetExpression + * LetExpression returns LetExpression + * DisjunctiveExpression returns LetExpression + * DisjunctiveExpression.Disjunction_1_0_0 returns LetExpression + * DisjunctiveExpression.Case_1_1_0 returns LetExpression + * ConjunctiveExpression returns LetExpression + * ConjunctiveExpression.Conjunction_1_0 returns LetExpression + * ComparisonExpression returns LetExpression + * ComparisonExpression.BinaryExpression_1_0 returns LetExpression + * AdditiveExpression returns LetExpression + * AdditiveExpression.BinaryExpression_1_0 returns LetExpression + * MultiplicativeExpression returns LetExpression + * MultiplicativeExpression.BinaryExpression_1_0 returns LetExpression + * ExponentialExpression returns LetExpression + * ExponentialExpression.BinaryExpression_1_0 returns LetExpression + * CastExpression returns LetExpression + * CastExpression.CastExpression_1_0 returns LetExpression + * UnaryExpression returns LetExpression + * BracedAggregateExpression returns LetExpression + * AtomicExpression returns LetExpression * * Constraint: - * (variables+=Variable variables+=Variable*)? + * (bindings+=LetBinding bindings+=LetBinding* body=Expression) */ - protected void sequence_LocalVariables(ISerializationContext context, LocalVariables semanticObject) { + protected void sequence_LetExpression(ISerializationContext context, LetExpression semanticObject) { genericSequencer.createSequence(context, semanticObject); } /** * Contexts: - * Statement returns LogicLiteral - * AssertionOrDefinition returns LogicLiteral - * AssertionOrDefinition.Interpretation_1_0_0 returns LogicLiteral + * AssertionOrDefinition.Assertion_1_0_0 returns LogicLiteral * AssertionOrDefinition.PredicateDefinition_1_1_0 returns LogicLiteral - * AssertionOrDefinition.MetricDefinition_1_2_0 returns LogicLiteral + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns LogicLiteral * Expression returns LogicLiteral - * ImplicationExpression returns LogicLiteral - * ImplicationExpression.BinaryExpression_1_0 returns LogicLiteral + * Expression.Forall_2_1_0 returns LogicLiteral * DisjunctiveExpression returns LogicLiteral * DisjunctiveExpression.Disjunction_1_0_0 returns LogicLiteral * DisjunctiveExpression.Case_1_1_0 returns LogicLiteral * ConjunctiveExpression returns LogicLiteral * ConjunctiveExpression.Conjunction_1_0 returns LogicLiteral * ComparisonExpression returns LogicLiteral - * ComparisonExpression.Comparison_1_0 returns LogicLiteral + * ComparisonExpression.BinaryExpression_1_0 returns LogicLiteral * AdditiveExpression returns LogicLiteral * AdditiveExpression.BinaryExpression_1_0 returns LogicLiteral * MultiplicativeExpression returns LogicLiteral @@ -1220,7 +1351,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns LogicLiteral * CastExpression.CastExpression_1_0 returns LogicLiteral * UnaryExpression returns LogicLiteral - * AggregationExpression returns LogicLiteral + * BracedAggregateExpression returns LogicLiteral * AtomicExpression returns LogicLiteral * Literal returns LogicLiteral * LogicLiteral returns LogicLiteral @@ -1241,131 +1372,75 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns LowerBoundedScopeDefinition - * ScopeDefinition returns LowerBoundedScopeDefinition - * LowerBoundedScopeDefinition returns LowerBoundedScopeDefinition - * - * Constraint: - * ((lowerBound=INT type=[NamedElement|QualifiedName]) | (type=[NamedElement|QualifiedName] lowerBound=INT)) - */ - protected void sequence_LowerBoundedScopeDefinition(ISerializationContext context, LowerBoundedScopeDefinition semanticObject) { - genericSequencer.createSequence(context, semanticObject); - } - - - /** - * Contexts: - * Multiplicity returns ManyMultiplicity - * ManyMultiplicity returns ManyMultiplicity + * Statement returns LowerBoundedScope + * ScopeDeclaration returns LowerBoundedScope + * LowerBoundedScope returns LowerBoundedScope * * Constraint: - * {ManyMultiplicity} + * ((lowerBound=INT type=[Symbol|QualifiedName]) | (type=[Symbol|QualifiedName] lowerBound=INT)) */ - protected void sequence_ManyMultiplicity(ISerializationContext context, ManyMultiplicity semanticObject) { + protected void sequence_LowerBoundedScope(ISerializationContext context, LowerBoundedScope semanticObject) { genericSequencer.createSequence(context, semanticObject); } /** * Contexts: - * MemberDefinition returns MemberDefinition + * Import returns NamespaceImport + * NamespaceImport returns NamespaceImport * * Constraint: - * (containment?='contains'? type=[NamedElement|QualifiedName] multiplicity=Multiplicity? name=ID opposite=[NamedElement|QualifiedName]?) + * (importedNamespace=QualifiedName alias=QualifiedName) */ - protected void sequence_MemberDefinition(ISerializationContext context, MemberDefinition semanticObject) { - genericSequencer.createSequence(context, semanticObject); - } - - - /** - * Contexts: - * MetricDefinition returns MetricDefinition - * - * Constraint: - * (type=[NamedElement|QualifiedName] head=Call body=Expression) - */ - protected void sequence_MetricDefinition(ISerializationContext context, MetricDefinition semanticObject) { + protected void sequence_NamespaceImport(ISerializationContext context, NamespaceImport semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__TYPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__TYPE)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__HEAD) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__HEAD)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__BODY) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.METRIC_DEFINITION__BODY)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.NAMESPACE_IMPORT__IMPORTED_NAMESPACE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.NAMESPACE_IMPORT__IMPORTED_NAMESPACE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.IMPORT__ALIAS) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.IMPORT__ALIAS)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getMetricDefinitionAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.METRIC_DEFINITION__TYPE, false)); - feeder.accept(grammarAccess.getMetricDefinitionAccess().getHeadCallParserRuleCall_1_0(), semanticObject.getHead()); - feeder.accept(grammarAccess.getMetricDefinitionAccess().getBodyExpressionParserRuleCall_3_0(), semanticObject.getBody()); + feeder.accept(grammarAccess.getNamespaceImportAccess().getImportedNamespaceQualifiedNameParserRuleCall_1_0(), semanticObject.getImportedNamespace()); + feeder.accept(grammarAccess.getNamespaceImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0(), semanticObject.getAlias()); feeder.finish(); } /** * Contexts: - * Statement returns NumericLiteral - * AssertionOrDefinition returns NumericLiteral - * AssertionOrDefinition.Interpretation_1_0_0 returns NumericLiteral - * AssertionOrDefinition.PredicateDefinition_1_1_0 returns NumericLiteral - * AssertionOrDefinition.MetricDefinition_1_2_0 returns NumericLiteral - * Expression returns NumericLiteral - * ImplicationExpression returns NumericLiteral - * ImplicationExpression.BinaryExpression_1_0 returns NumericLiteral - * DisjunctiveExpression returns NumericLiteral - * DisjunctiveExpression.Disjunction_1_0_0 returns NumericLiteral - * DisjunctiveExpression.Case_1_1_0 returns NumericLiteral - * ConjunctiveExpression returns NumericLiteral - * ConjunctiveExpression.Conjunction_1_0 returns NumericLiteral - * ComparisonExpression returns NumericLiteral - * ComparisonExpression.Comparison_1_0 returns NumericLiteral - * AdditiveExpression returns NumericLiteral - * AdditiveExpression.BinaryExpression_1_0 returns NumericLiteral - * MultiplicativeExpression returns NumericLiteral - * MultiplicativeExpression.BinaryExpression_1_0 returns NumericLiteral - * ExponentialExpression returns NumericLiteral - * ExponentialExpression.BinaryExpression_1_0 returns NumericLiteral - * CastExpression returns NumericLiteral - * CastExpression.CastExpression_1_0 returns NumericLiteral - * UnaryExpression returns NumericLiteral - * AggregationExpression returns NumericLiteral - * AtomicExpression returns NumericLiteral - * Literal returns NumericLiteral - * NumericLiteral returns NumericLiteral + * Statement returns ObjectiveDeclaration + * ObjectiveDeclaration returns ObjectiveDeclaration * * Constraint: - * value=Real + * (kind=ObjectiveKind objective=Expression) */ - protected void sequence_NumericLiteral(ISerializationContext context, NumericLiteral semanticObject) { + protected void sequence_ObjectiveDeclaration(ISerializationContext context, ObjectiveDeclaration semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.NUMERIC_LITERAL__VALUE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.NUMERIC_LITERAL__VALUE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.OBJECTIVE_DECLARATION__KIND) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.OBJECTIVE_DECLARATION__KIND)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.OBJECTIVE_DECLARATION__OBJECTIVE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.OBJECTIVE_DECLARATION__OBJECTIVE)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getNumericLiteralAccess().getValueRealParserRuleCall_0(), semanticObject.getValue()); + feeder.accept(grammarAccess.getObjectiveDeclarationAccess().getKindObjectiveKindEnumRuleCall_0_0(), semanticObject.getKind()); + feeder.accept(grammarAccess.getObjectiveDeclarationAccess().getObjectiveExpressionParserRuleCall_1_0(), semanticObject.getObjective()); feeder.finish(); } /** * Contexts: - * Statement returns ObjectiveDefinition - * ObjectiveDefinition returns ObjectiveDefinition + * PathComponent returns PathComponent * * Constraint: - * (kind=ObjectiveKind objective=Expression) + * ( + * inverse?='~'? + * symbol=[Symbol|QualifiedName] + * (transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? + * ) */ - protected void sequence_ObjectiveDefinition(ISerializationContext context, ObjectiveDefinition semanticObject) { - if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.OBJECTIVE_DEFINITION__KIND) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.OBJECTIVE_DEFINITION__KIND)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.OBJECTIVE_DEFINITION__OBJECTIVE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.OBJECTIVE_DEFINITION__OBJECTIVE)); - } - SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getObjectiveDefinitionAccess().getKindObjectiveKindEnumRuleCall_0_0(), semanticObject.getKind()); - feeder.accept(grammarAccess.getObjectiveDefinitionAccess().getObjectiveExpressionParserRuleCall_1_0(), semanticObject.getObjective()); - feeder.finish(); + protected void sequence_PathComponent(ISerializationContext context, PathComponent semanticObject) { + genericSequencer.createSequence(context, semanticObject); } @@ -1386,7 +1461,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * Problem returns Problem * * Constraint: - * statements+=Statement+ + * ((name=QualifiedName? imports+=Import+ statements+=Statement+) | (name=QualifiedName? statements+=Statement+) | statements+=Statement+)? */ protected void sequence_Problem(ISerializationContext context, Problem semanticObject) { genericSequencer.createSequence(context, semanticObject); @@ -1395,59 +1470,60 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns QuantifiedExpression - * AssertionOrDefinition returns QuantifiedExpression - * AssertionOrDefinition.Interpretation_1_0_0 returns QuantifiedExpression - * AssertionOrDefinition.PredicateDefinition_1_1_0 returns QuantifiedExpression - * AssertionOrDefinition.MetricDefinition_1_2_0 returns QuantifiedExpression - * Expression returns QuantifiedExpression - * ImplicationExpression returns QuantifiedExpression - * ImplicationExpression.BinaryExpression_1_0 returns QuantifiedExpression - * DisjunctiveExpression returns QuantifiedExpression - * DisjunctiveExpression.Disjunction_1_0_0 returns QuantifiedExpression - * DisjunctiveExpression.Case_1_1_0 returns QuantifiedExpression - * ConjunctiveExpression returns QuantifiedExpression - * ConjunctiveExpression.Conjunction_1_0 returns QuantifiedExpression - * ComparisonExpression returns QuantifiedExpression - * ComparisonExpression.Comparison_1_0 returns QuantifiedExpression - * AdditiveExpression returns QuantifiedExpression - * AdditiveExpression.BinaryExpression_1_0 returns QuantifiedExpression - * MultiplicativeExpression returns QuantifiedExpression - * MultiplicativeExpression.BinaryExpression_1_0 returns QuantifiedExpression - * ExponentialExpression returns QuantifiedExpression - * ExponentialExpression.BinaryExpression_1_0 returns QuantifiedExpression - * CastExpression returns QuantifiedExpression - * CastExpression.CastExpression_1_0 returns QuantifiedExpression - * UnaryExpression returns QuantifiedExpression - * AggregationExpression returns QuantifiedExpression - * QuantifiedExpression returns QuantifiedExpression - * AtomicExpression returns QuantifiedExpression + * AssertionOrDefinition.Assertion_1_0_0 returns RealLiteral + * AssertionOrDefinition.PredicateDefinition_1_1_0 returns RealLiteral + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns RealLiteral + * Expression returns RealLiteral + * Expression.Forall_2_1_0 returns RealLiteral + * DisjunctiveExpression returns RealLiteral + * DisjunctiveExpression.Disjunction_1_0_0 returns RealLiteral + * DisjunctiveExpression.Case_1_1_0 returns RealLiteral + * ConjunctiveExpression returns RealLiteral + * ConjunctiveExpression.Conjunction_1_0 returns RealLiteral + * ComparisonExpression returns RealLiteral + * ComparisonExpression.BinaryExpression_1_0 returns RealLiteral + * AdditiveExpression returns RealLiteral + * AdditiveExpression.BinaryExpression_1_0 returns RealLiteral + * MultiplicativeExpression returns RealLiteral + * MultiplicativeExpression.BinaryExpression_1_0 returns RealLiteral + * ExponentialExpression returns RealLiteral + * ExponentialExpression.BinaryExpression_1_0 returns RealLiteral + * CastExpression returns RealLiteral + * CastExpression.CastExpression_1_0 returns RealLiteral + * UnaryExpression returns RealLiteral + * BracedAggregateExpression returns RealLiteral + * AtomicExpression returns RealLiteral + * Literal returns RealLiteral + * RealLiteral returns RealLiteral * * Constraint: - * (quantifier=Quantifier localVariables=LocalVariables? body=Expression) + * value=Real */ - protected void sequence_QuantifiedExpression(ISerializationContext context, QuantifiedExpression semanticObject) { - genericSequencer.createSequence(context, semanticObject); + protected void sequence_RealLiteral(ISerializationContext context, RealLiteral semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.REAL_LITERAL__VALUE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.REAL_LITERAL__VALUE)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getRealLiteralAccess().getValueRealParserRuleCall_0(), semanticObject.getValue()); + feeder.finish(); } /** * Contexts: - * Statement returns Reference - * AssertionOrDefinition returns Reference - * AssertionOrDefinition.Interpretation_1_0_0 returns Reference + * AssertionOrDefinition.Assertion_1_0_0 returns Reference * AssertionOrDefinition.PredicateDefinition_1_1_0 returns Reference - * AssertionOrDefinition.MetricDefinition_1_2_0 returns Reference + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns Reference * Expression returns Reference - * ImplicationExpression returns Reference - * ImplicationExpression.BinaryExpression_1_0 returns Reference + * Expression.Forall_2_1_0 returns Reference * DisjunctiveExpression returns Reference * DisjunctiveExpression.Disjunction_1_0_0 returns Reference * DisjunctiveExpression.Case_1_1_0 returns Reference * ConjunctiveExpression returns Reference * ConjunctiveExpression.Conjunction_1_0 returns Reference * ComparisonExpression returns Reference - * ComparisonExpression.Comparison_1_0 returns Reference + * ComparisonExpression.BinaryExpression_1_0 returns Reference * AdditiveExpression returns Reference * AdditiveExpression.BinaryExpression_1_0 returns Reference * MultiplicativeExpression returns Reference @@ -1457,21 +1533,15 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns Reference * CastExpression.CastExpression_1_0 returns Reference * UnaryExpression returns Reference - * AggregationExpression returns Reference + * BracedAggregateExpression returns Reference * AtomicExpression returns Reference * Reference returns Reference * * Constraint: - * referred=[NamedElement|QualifiedName] + * (components+=PathComponent components+=PathComponent*) */ protected void sequence_Reference(ISerializationContext context, Reference semanticObject) { - if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.REFERENCE__REFERRED) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.REFERENCE__REFERRED)); - } - SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getReferenceAccess().getReferredNamedElementQualifiedNameParserRuleCall_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.REFERENCE__REFERRED, false)); - feeder.finish(); + genericSequencer.createSequence(context, semanticObject); } @@ -1490,21 +1560,18 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Statement returns StringLiteral - * AssertionOrDefinition returns StringLiteral - * AssertionOrDefinition.Interpretation_1_0_0 returns StringLiteral + * AssertionOrDefinition.Assertion_1_0_0 returns StringLiteral * AssertionOrDefinition.PredicateDefinition_1_1_0 returns StringLiteral - * AssertionOrDefinition.MetricDefinition_1_2_0 returns StringLiteral + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns StringLiteral * Expression returns StringLiteral - * ImplicationExpression returns StringLiteral - * ImplicationExpression.BinaryExpression_1_0 returns StringLiteral + * Expression.Forall_2_1_0 returns StringLiteral * DisjunctiveExpression returns StringLiteral * DisjunctiveExpression.Disjunction_1_0_0 returns StringLiteral * DisjunctiveExpression.Case_1_1_0 returns StringLiteral * ConjunctiveExpression returns StringLiteral * ConjunctiveExpression.Conjunction_1_0 returns StringLiteral * ComparisonExpression returns StringLiteral - * ComparisonExpression.Comparison_1_0 returns StringLiteral + * ComparisonExpression.BinaryExpression_1_0 returns StringLiteral * AdditiveExpression returns StringLiteral * AdditiveExpression.BinaryExpression_1_0 returns StringLiteral * MultiplicativeExpression returns StringLiteral @@ -1514,7 +1581,7 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns StringLiteral * CastExpression.CastExpression_1_0 returns StringLiteral * UnaryExpression returns StringLiteral - * AggregationExpression returns StringLiteral + * BracedAggregateExpression returns StringLiteral * AtomicExpression returns StringLiteral * Literal returns StringLiteral * StringLiteral returns StringLiteral @@ -1535,62 +1602,71 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS /** * Contexts: - * Argument returns TypedArgument - * TypedArgument returns TypedArgument + * TypeReference returns TypeReference + * + * Constraint: + * (type=[Symbol|QualifiedName] forceObjectType?='object'?) + */ + protected void sequence_TypeReference(ISerializationContext context, TypeReference semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * Argument returns TypedStarArgument + * TypedStarArgument returns TypedStarArgument * * Constraint: - * (type=[NamedElement|QualifiedName] variable=[NamedElement|QualifiedName]) + * typeReference=TypeReference */ - protected void sequence_TypedArgument(ISerializationContext context, TypedArgument semanticObject) { + protected void sequence_TypedStarArgument(ISerializationContext context, TypedStarArgument semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.TYPED_ARGUMENT__TYPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.TYPED_ARGUMENT__TYPE)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.TYPED_ARGUMENT__VARIABLE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.TYPED_ARGUMENT__VARIABLE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.TYPED_ARGUMENT__TYPE_REFERENCE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.TYPED_ARGUMENT__TYPE_REFERENCE)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getTypedArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.TYPED_ARGUMENT__TYPE, false)); - feeder.accept(grammarAccess.getTypedArgumentAccess().getVariableNamedElementQualifiedNameParserRuleCall_1_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.TYPED_ARGUMENT__VARIABLE, false)); + feeder.accept(grammarAccess.getTypedStarArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0(), semanticObject.getTypeReference()); feeder.finish(); } /** * Contexts: - * Argument returns TypedStarArgument - * TypedStarArgument returns TypedStarArgument + * Argument returns TypedVariableArgument + * TypedVariableArgument returns TypedVariableArgument * * Constraint: - * type=[NamedElement|QualifiedName] + * (typeReference=TypeReference name=ID) */ - protected void sequence_TypedStarArgument(ISerializationContext context, TypedStarArgument semanticObject) { + protected void sequence_TypedVariableArgument(ISerializationContext context, TypedVariableArgument semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.TYPED_STAR_ARGUMENT__TYPE) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.TYPED_STAR_ARGUMENT__TYPE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.TYPED_ARGUMENT__TYPE_REFERENCE) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.TYPED_ARGUMENT__TYPE_REFERENCE)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.TYPED_VARIABLE_ARGUMENT__NAME) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.TYPED_VARIABLE_ARGUMENT__NAME)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getTypedStarArgumentAccess().getTypeNamedElementQualifiedNameParserRuleCall_0_0_1(), semanticObject.eGet(SolverLanguagePackage.Literals.TYPED_STAR_ARGUMENT__TYPE, false)); + feeder.accept(grammarAccess.getTypedVariableArgumentAccess().getTypeReferenceTypeReferenceParserRuleCall_0_0(), semanticObject.getTypeReference()); + feeder.accept(grammarAccess.getTypedVariableArgumentAccess().getNameIDTerminalRuleCall_1_0(), semanticObject.getName()); feeder.finish(); } /** * Contexts: - * Statement returns UnaryExpression - * AssertionOrDefinition returns UnaryExpression - * AssertionOrDefinition.Interpretation_1_0_0 returns UnaryExpression + * AssertionOrDefinition.Assertion_1_0_0 returns UnaryExpression * AssertionOrDefinition.PredicateDefinition_1_1_0 returns UnaryExpression - * AssertionOrDefinition.MetricDefinition_1_2_0 returns UnaryExpression + * AssertionOrDefinition.FunctionDefinition_1_2_0 returns UnaryExpression * Expression returns UnaryExpression - * ImplicationExpression returns UnaryExpression - * ImplicationExpression.BinaryExpression_1_0 returns UnaryExpression + * Expression.Forall_2_1_0 returns UnaryExpression * DisjunctiveExpression returns UnaryExpression * DisjunctiveExpression.Disjunction_1_0_0 returns UnaryExpression * DisjunctiveExpression.Case_1_1_0 returns UnaryExpression * ConjunctiveExpression returns UnaryExpression * ConjunctiveExpression.Conjunction_1_0 returns UnaryExpression * ComparisonExpression returns UnaryExpression - * ComparisonExpression.Comparison_1_0 returns UnaryExpression + * ComparisonExpression.BinaryExpression_1_0 returns UnaryExpression * AdditiveExpression returns UnaryExpression * AdditiveExpression.BinaryExpression_1_0 returns UnaryExpression * MultiplicativeExpression returns UnaryExpression @@ -1600,11 +1676,11 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS * CastExpression returns UnaryExpression * CastExpression.CastExpression_1_0 returns UnaryExpression * UnaryExpression returns UnaryExpression - * AggregationExpression returns UnaryExpression + * BracedAggregateExpression returns UnaryExpression * AtomicExpression returns UnaryExpression * * Constraint: - * (op=UnaryOp body=AggregationExpression) + * (op=UnaryOperator body=BracedAggregateExpression) */ protected void sequence_UnaryExpression(ISerializationContext context, UnaryExpression semanticObject) { if (errorAcceptor != null) { @@ -1614,43 +1690,66 @@ public class SolverLanguageSemanticSequencer extends AbstractDelegatingSemanticS errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.UNARY_EXPRESSION__BODY)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getUnaryExpressionAccess().getOpUnaryOpEnumRuleCall_1_1_0(), semanticObject.getOp()); - feeder.accept(grammarAccess.getUnaryExpressionAccess().getBodyAggregationExpressionParserRuleCall_1_2_0(), semanticObject.getBody()); + feeder.accept(grammarAccess.getUnaryExpressionAccess().getOpUnaryOperatorEnumRuleCall_1_1_0(), semanticObject.getOp()); + feeder.accept(grammarAccess.getUnaryExpressionAccess().getBodyBracedAggregateExpressionParserRuleCall_1_2_0(), semanticObject.getBody()); feeder.finish(); } /** * Contexts: - * Statement returns UnnamedErrorPrediateDefinition - * UnnamedErrorPrediateDefinition returns UnnamedErrorPrediateDefinition + * Multiplicity returns UnboundedMultiplicity + * UnboundedMultiplicity returns UnboundedMultiplicity + * + * Constraint: + * {UnboundedMultiplicity} + */ + protected void sequence_UnboundedMultiplicity(ISerializationContext context, UnboundedMultiplicity semanticObject) { + genericSequencer.createSequence(context, semanticObject); + } + + + /** + * Contexts: + * Statement returns UnnamedErrorPredicateDefintion + * UnnamedErrorPredicateDefintion returns UnnamedErrorPredicateDefintion * * Constraint: * (argumentList=ArgumentList body=Expression) */ - protected void sequence_UnnamedErrorPrediateDefinition(ISerializationContext context, UnnamedErrorPrediateDefinition semanticObject) { + protected void sequence_UnnamedErrorPredicateDefintion(ISerializationContext context, UnnamedErrorPredicateDefintion semanticObject) { if (errorAcceptor != null) { - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDIATE_DEFINITION__ARGUMENT_LIST)); - if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY) == ValueTransient.YES) - errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDIATE_DEFINITION__BODY)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.UNNAMED_ERROR_PREDICATE_DEFINTION__BODY)); } SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); - feeder.accept(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getArgumentListArgumentListParserRuleCall_1_0(), semanticObject.getArgumentList()); - feeder.accept(grammarAccess.getUnnamedErrorPrediateDefinitionAccess().getBodyExpressionParserRuleCall_3_0(), semanticObject.getBody()); + feeder.accept(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getArgumentListArgumentListParserRuleCall_1_0(), semanticObject.getArgumentList()); + feeder.accept(grammarAccess.getUnnamedErrorPredicateDefintionAccess().getBodyExpressionParserRuleCall_3_0(), semanticObject.getBody()); feeder.finish(); } /** * Contexts: - * Variable returns Variable + * Import returns UriImport + * UriImport returns UriImport * * Constraint: - * (type=[NamedElement|QualifiedName]? name=ID) + * (uri=STRING alias=QualifiedName) */ - protected void sequence_Variable(ISerializationContext context, Variable semanticObject) { - genericSequencer.createSequence(context, semanticObject); + protected void sequence_UriImport(ISerializationContext context, UriImport semanticObject) { + if (errorAcceptor != null) { + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.URI_IMPORT__URI) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.URI_IMPORT__URI)); + if (transientValues.isValueTransient(semanticObject, SolverLanguagePackage.Literals.IMPORT__ALIAS) == ValueTransient.YES) + errorAcceptor.accept(diagnosticProvider.createFeatureValueMissing(semanticObject, SolverLanguagePackage.Literals.IMPORT__ALIAS)); + } + SequenceFeeder feeder = createSequencerFeeder(context, semanticObject); + feeder.accept(grammarAccess.getUriImportAccess().getUriSTRINGTerminalRuleCall_1_0(), semanticObject.getUri()); + feeder.accept(grammarAccess.getUriImportAccess().getAliasQualifiedNameParserRuleCall_2_1_0(), semanticObject.getAlias()); + feeder.finish(); } diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSyntacticSequencer.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSyntacticSequencer.java index 8b187721..2f9ea8a3 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSyntacticSequencer.java +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/serializer/SolverLanguageSyntacticSequencer.java @@ -11,6 +11,8 @@ import org.eclipse.xtext.IGrammarAccess; import org.eclipse.xtext.RuleCall; import org.eclipse.xtext.nodemodel.INode; import org.eclipse.xtext.serializer.analysis.GrammarAlias.AbstractElementAlias; +import org.eclipse.xtext.serializer.analysis.GrammarAlias.AlternativeAlias; +import org.eclipse.xtext.serializer.analysis.GrammarAlias.GroupAlias; import org.eclipse.xtext.serializer.analysis.GrammarAlias.TokenAlias; import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynNavigable; import org.eclipse.xtext.serializer.analysis.ISyntacticSequencerPDAProvider.ISynTransition; @@ -22,14 +24,20 @@ public class SolverLanguageSyntacticSequencer extends AbstractSyntacticSequencer protected SolverLanguageGrammarAccess grammarAccess; protected AbstractElementAlias match_AtomicExpression_LeftParenthesisKeyword_4_0_a; protected AbstractElementAlias match_AtomicExpression_LeftParenthesisKeyword_4_0_p; - protected AbstractElementAlias match_MemberDefinition_SemicolonKeyword_5_q; + protected AbstractElementAlias match_ClassDeclaration_FULL_STOPTerminalRuleCall_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__; + protected AbstractElementAlias match_EnumDeclaration_CommaKeyword_2_0_1_1_0_q; + protected AbstractElementAlias match_EnumDeclaration_FULL_STOPTerminalRuleCall_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__; + protected AbstractElementAlias match_Field_SemicolonKeyword_5_q; @Inject protected void init(IGrammarAccess access) { grammarAccess = (SolverLanguageGrammarAccess) access; match_AtomicExpression_LeftParenthesisKeyword_4_0_a = new TokenAlias(true, true, grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); match_AtomicExpression_LeftParenthesisKeyword_4_0_p = new TokenAlias(true, false, grammarAccess.getAtomicExpressionAccess().getLeftParenthesisKeyword_4_0()); - match_MemberDefinition_SemicolonKeyword_5_q = new TokenAlias(false, true, grammarAccess.getMemberDefinitionAccess().getSemicolonKeyword_5()); + match_ClassDeclaration_FULL_STOPTerminalRuleCall_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__ = new AlternativeAlias(false, false, new GroupAlias(false, false, new TokenAlias(false, false, grammarAccess.getClassDeclarationAccess().getLeftCurlyBracketKeyword_4_0_0()), new TokenAlias(false, false, grammarAccess.getClassDeclarationAccess().getRightCurlyBracketKeyword_4_0_2())), new TokenAlias(false, false, grammarAccess.getClassDeclarationAccess().getFULL_STOPTerminalRuleCall_4_1())); + match_EnumDeclaration_CommaKeyword_2_0_1_1_0_q = new TokenAlias(false, true, grammarAccess.getEnumDeclarationAccess().getCommaKeyword_2_0_1_1_0()); + match_EnumDeclaration_FULL_STOPTerminalRuleCall_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__ = new AlternativeAlias(false, false, new GroupAlias(false, false, new TokenAlias(false, false, grammarAccess.getEnumDeclarationAccess().getLeftCurlyBracketKeyword_2_0_0()), new TokenAlias(false, false, grammarAccess.getEnumDeclarationAccess().getRightCurlyBracketKeyword_2_0_2())), new TokenAlias(false, false, grammarAccess.getEnumDeclarationAccess().getFULL_STOPTerminalRuleCall_2_1())); + match_Field_SemicolonKeyword_5_q = new TokenAlias(false, true, grammarAccess.getFieldAccess().getSemicolonKeyword_5()); } @Override @@ -71,8 +79,14 @@ public class SolverLanguageSyntacticSequencer extends AbstractSyntacticSequencer emit_AtomicExpression_LeftParenthesisKeyword_4_0_a(semanticObject, getLastNavigableState(), syntaxNodes); else if (match_AtomicExpression_LeftParenthesisKeyword_4_0_p.equals(syntax)) emit_AtomicExpression_LeftParenthesisKeyword_4_0_p(semanticObject, getLastNavigableState(), syntaxNodes); - else if (match_MemberDefinition_SemicolonKeyword_5_q.equals(syntax)) - emit_MemberDefinition_SemicolonKeyword_5_q(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_ClassDeclaration_FULL_STOPTerminalRuleCall_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__.equals(syntax)) + emit_ClassDeclaration_FULL_STOPTerminalRuleCall_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_EnumDeclaration_CommaKeyword_2_0_1_1_0_q.equals(syntax)) + emit_EnumDeclaration_CommaKeyword_2_0_1_1_0_q(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_EnumDeclaration_FULL_STOPTerminalRuleCall_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__.equals(syntax)) + emit_EnumDeclaration_FULL_STOPTerminalRuleCall_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__(semanticObject, getLastNavigableState(), syntaxNodes); + else if (match_Field_SemicolonKeyword_5_q.equals(syntax)) + emit_Field_SemicolonKeyword_5_q(semanticObject, getLastNavigableState(), syntaxNodes); else acceptNodes(getLastNavigableState(), syntaxNodes); } } @@ -82,26 +96,25 @@ public class SolverLanguageSyntacticSequencer extends AbstractSyntacticSequencer * '('* * * This ambiguous syntax occurs at: - * (rule start) (ambiguity) '[' lowerBound=Expression + * (rule start) (ambiguity) '[' lowerBound=AdditiveExpression + * (rule start) (ambiguity) 'count' '{' condition=Expression * (rule start) (ambiguity) 'empty' (rule start) - * (rule start) (ambiguity) 'empty' FULL_STOP (rule start) - * (rule start) (ambiguity) 'if' condition=Expression + * (rule start) (ambiguity) 'if' condition=DisjunctiveExpression * (rule start) (ambiguity) 'inf' (rule start) - * (rule start) (ambiguity) 'inf' FULL_STOP (rule start) * (rule start) (ambiguity) 'let' bindings+=LetBinding + * (rule start) (ambiguity) components+=PathComponent * (rule start) (ambiguity) functor=Reference - * (rule start) (ambiguity) op=UnaryOp - * (rule start) (ambiguity) op=[NamedElement|QualifiedName] - * (rule start) (ambiguity) quantifier=Quantifier - * (rule start) (ambiguity) referred=[NamedElement|QualifiedName] + * (rule start) (ambiguity) op=UnaryOperator + * (rule start) (ambiguity) op=[Symbol|QualifiedName] + * (rule start) (ambiguity) value=INT * (rule start) (ambiguity) value=LogicValue * (rule start) (ambiguity) value=Real * (rule start) (ambiguity) value=STRING * (rule start) (ambiguity) {BinaryExpression.left=} * (rule start) (ambiguity) {CastExpression.body=} - * (rule start) (ambiguity) {Comparison.left=} * (rule start) (ambiguity) {Conjunction.children+=} * (rule start) (ambiguity) {Disjunction.children+=} + * (rule start) (ambiguity) {Forall.condition=} * (rule start) (ambiguity) {Switch.cases+=} */ protected void emit_AtomicExpression_LeftParenthesisKeyword_4_0_a(EObject semanticObject, ISynNavigable transition, List nodes) { @@ -113,31 +126,65 @@ public class SolverLanguageSyntacticSequencer extends AbstractSyntacticSequencer * '('+ * * This ambiguous syntax occurs at: - * (rule start) (ambiguity) 'if' condition=Expression + * (rule start) (ambiguity) 'count' '{' condition=Expression + * (rule start) (ambiguity) 'if' condition=DisjunctiveExpression * (rule start) (ambiguity) 'let' bindings+=LetBinding - * (rule start) (ambiguity) op=UnaryOp - * (rule start) (ambiguity) op=[NamedElement|QualifiedName] - * (rule start) (ambiguity) quantifier=Quantifier + * (rule start) (ambiguity) op=UnaryOperator + * (rule start) (ambiguity) op=[Symbol|QualifiedName] * (rule start) (ambiguity) {BinaryExpression.left=} * (rule start) (ambiguity) {CastExpression.body=} - * (rule start) (ambiguity) {Comparison.left=} * (rule start) (ambiguity) {Conjunction.children+=} * (rule start) (ambiguity) {Disjunction.children+=} + * (rule start) (ambiguity) {Forall.condition=} * (rule start) (ambiguity) {Switch.cases+=} */ protected void emit_AtomicExpression_LeftParenthesisKeyword_4_0_p(EObject semanticObject, ISynNavigable transition, List nodes) { acceptNodes(transition, nodes); } + /** + * Ambiguous syntax: + * ('{' '}') | FULL_STOP + * + * This ambiguous syntax occurs at: + * name=ID (ambiguity) (rule end) + * supertypes+=[Symbol|QualifiedName] (ambiguity) (rule end) + */ + protected void emit_ClassDeclaration_FULL_STOPTerminalRuleCall_4_1_or___LeftCurlyBracketKeyword_4_0_0_RightCurlyBracketKeyword_4_0_2__(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + + /** + * Ambiguous syntax: + * ','? + * + * This ambiguous syntax occurs at: + * literals+=EnumLiteral (ambiguity) literals+=EnumLiteral + */ + protected void emit_EnumDeclaration_CommaKeyword_2_0_1_1_0_q(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + + /** + * Ambiguous syntax: + * ('{' '}') | FULL_STOP + * + * This ambiguous syntax occurs at: + * name=ID (ambiguity) (rule end) + */ + protected void emit_EnumDeclaration_FULL_STOPTerminalRuleCall_2_1_or___LeftCurlyBracketKeyword_2_0_0_RightCurlyBracketKeyword_2_0_2__(EObject semanticObject, ISynNavigable transition, List nodes) { + acceptNodes(transition, nodes); + } + /** * Ambiguous syntax: * ';'? * * This ambiguous syntax occurs at: * name=ID (ambiguity) (rule end) - * opposite=[NamedElement|QualifiedName] (ambiguity) (rule end) + * opposite=[Symbol|QualifiedName] (ambiguity) (rule end) */ - protected void emit_MemberDefinition_SemicolonKeyword_5_q(EObject semanticObject, ISynNavigable transition, List nodes) { + protected void emit_Field_SemicolonKeyword_5_q(EObject semanticObject, ISynNavigable transition, List nodes) { acceptNodes(transition, nodes); } diff --git a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/services/SolverLanguageGrammarAccess.java b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/services/SolverLanguageGrammarAccess.java index ed1569a5..a70729d4 100644 --- a/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/services/SolverLanguageGrammarAccess.java +++ b/Application/org.eclipse.viatra.solver.language/src-gen/org/eclipse/viatra/solver/language/services/SolverLanguageGrammarAccess.java @@ -19,6 +19,7 @@ import org.eclipse.xtext.Keyword; import org.eclipse.xtext.ParserRule; import org.eclipse.xtext.RuleCall; import org.eclipse.xtext.TerminalRule; +import org.eclipse.xtext.UnorderedGroup; import org.eclipse.xtext.common.services.TerminalsGrammarAccess; import org.eclipse.xtext.service.AbstractElementFinder.AbstractEnumRuleElementFinder; import org.eclipse.xtext.service.AbstractElementFinder.AbstractGrammarElementFinder; @@ -29,91 +30,214 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { public class ProblemElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Problem"); - private final Assignment cStatementsAssignment = (Assignment)rule.eContents().get(1); - private final RuleCall cStatementsStatementParserRuleCall_0 = (RuleCall)cStatementsAssignment.eContents().get(0); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Group cGroup_0 = (Group)cGroup.eContents().get(0); + private final Keyword cProblemKeyword_0_0 = (Keyword)cGroup_0.eContents().get(0); + private final Assignment cNameAssignment_0_1 = (Assignment)cGroup_0.eContents().get(1); + private final RuleCall cNameQualifiedNameParserRuleCall_0_1_0 = (RuleCall)cNameAssignment_0_1.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_0_2 = (RuleCall)cGroup_0.eContents().get(2); + private final Assignment cImportsAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cImportsImportParserRuleCall_1_0 = (RuleCall)cImportsAssignment_1.eContents().get(0); + private final Assignment cStatementsAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cStatementsStatementParserRuleCall_2_0 = (RuleCall)cStatementsAssignment_2.eContents().get(0); //Problem: + // ("problem" name=QualifiedName FULL_STOP)? + // imports+=Import* // statements+=Statement*; @Override public ParserRule getRule() { return rule; } + //("problem" name=QualifiedName FULL_STOP)? imports+=Import* statements+=Statement* + public Group getGroup() { return cGroup; } + + //("problem" name=QualifiedName FULL_STOP)? + public Group getGroup_0() { return cGroup_0; } + + //"problem" + public Keyword getProblemKeyword_0_0() { return cProblemKeyword_0_0; } + + //name=QualifiedName + public Assignment getNameAssignment_0_1() { return cNameAssignment_0_1; } + + //QualifiedName + public RuleCall getNameQualifiedNameParserRuleCall_0_1_0() { return cNameQualifiedNameParserRuleCall_0_1_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_0_2() { return cFULL_STOPTerminalRuleCall_0_2; } + + //imports+=Import* + public Assignment getImportsAssignment_1() { return cImportsAssignment_1; } + + //Import + public RuleCall getImportsImportParserRuleCall_1_0() { return cImportsImportParserRuleCall_1_0; } + //statements+=Statement* - public Assignment getStatementsAssignment() { return cStatementsAssignment; } + public Assignment getStatementsAssignment_2() { return cStatementsAssignment_2; } //Statement - public RuleCall getStatementsStatementParserRuleCall_0() { return cStatementsStatementParserRuleCall_0; } + public RuleCall getStatementsStatementParserRuleCall_2_0() { return cStatementsStatementParserRuleCall_2_0; } } public class StatementElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Statement"); - private final Group cGroup = (Group)rule.eContents().get(1); - private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0); - private final RuleCall cAssertionOrDefinitionParserRuleCall_0_0 = (RuleCall)cAlternatives_0.eContents().get(0); - private final RuleCall cPredicateDefinitionParserRuleCall_0_1 = (RuleCall)cAlternatives_0.eContents().get(1); - private final RuleCall cUnnamedErrorPrediateDefinitionParserRuleCall_0_2 = (RuleCall)cAlternatives_0.eContents().get(2); - private final RuleCall cDefaultDefinitionParserRuleCall_0_3 = (RuleCall)cAlternatives_0.eContents().get(3); - private final RuleCall cMetricDefinitionParserRuleCall_0_4 = (RuleCall)cAlternatives_0.eContents().get(4); - private final RuleCall cExternPredicateDefinitionParserRuleCall_0_5 = (RuleCall)cAlternatives_0.eContents().get(5); - private final RuleCall cExternMetricDefinitionParserRuleCall_0_6 = (RuleCall)cAlternatives_0.eContents().get(6); - private final RuleCall cExternAggregatorDefinitionParserRuleCall_0_7 = (RuleCall)cAlternatives_0.eContents().get(7); - private final RuleCall cExternDatatypeDefinitionParserRuleCall_0_8 = (RuleCall)cAlternatives_0.eContents().get(8); - private final RuleCall cClassDefinitionParserRuleCall_0_9 = (RuleCall)cAlternatives_0.eContents().get(9); - private final RuleCall cScopeDefinitionParserRuleCall_0_10 = (RuleCall)cAlternatives_0.eContents().get(10); - private final RuleCall cObjectiveDefinitionParserRuleCall_0_11 = (RuleCall)cAlternatives_0.eContents().get(11); - private final RuleCall cFULL_STOPTerminalRuleCall_1 = (RuleCall)cGroup.eContents().get(1); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cAssertionOrDefinitionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cPredicateDefinitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final RuleCall cUnnamedErrorPredicateDefintionParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + private final RuleCall cDefaultAssertionParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3); + private final RuleCall cFunctionDefinitionParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4); + private final RuleCall cAttributeParserRuleCall_5 = (RuleCall)cAlternatives.eContents().get(5); + private final RuleCall cExternDeclarationParserRuleCall_6 = (RuleCall)cAlternatives.eContents().get(6); + private final RuleCall cScopeDeclarationParserRuleCall_7 = (RuleCall)cAlternatives.eContents().get(7); + private final RuleCall cObjectiveDeclarationParserRuleCall_8 = (RuleCall)cAlternatives.eContents().get(8); + private final RuleCall cClassDeclarationParserRuleCall_9 = (RuleCall)cAlternatives.eContents().get(9); + private final RuleCall cEnumDeclarationParserRuleCall_10 = (RuleCall)cAlternatives.eContents().get(10); //Statement: - // (AssertionOrDefinition | PredicateDefinition | UnnamedErrorPrediateDefinition | DefaultDefinition | MetricDefinition - // | ExternPredicateDefinition | ExternMetricDefinition | ExternAggregatorDefinition | ExternDatatypeDefinition | - // ClassDefinition | ScopeDefinition | ObjectiveDefinition) FULL_STOP; + // AssertionOrDefinition | PredicateDefinition | UnnamedErrorPredicateDefintion | DefaultAssertion | FunctionDefinition + // | Attribute | ExternDeclaration | ScopeDeclaration | ObjectiveDeclaration | ClassDeclaration | EnumDeclaration; @Override public ParserRule getRule() { return rule; } - //(AssertionOrDefinition | PredicateDefinition | UnnamedErrorPrediateDefinition | DefaultDefinition | MetricDefinition | - //ExternPredicateDefinition | ExternMetricDefinition | ExternAggregatorDefinition | ExternDatatypeDefinition | - //ClassDefinition | ScopeDefinition | ObjectiveDefinition) FULL_STOP - public Group getGroup() { return cGroup; } - - //(AssertionOrDefinition | PredicateDefinition | UnnamedErrorPrediateDefinition | DefaultDefinition | MetricDefinition | - //ExternPredicateDefinition | ExternMetricDefinition | ExternAggregatorDefinition | ExternDatatypeDefinition | - //ClassDefinition | ScopeDefinition | ObjectiveDefinition) - public Alternatives getAlternatives_0() { return cAlternatives_0; } + //AssertionOrDefinition | PredicateDefinition | UnnamedErrorPredicateDefintion | DefaultAssertion | FunctionDefinition | + //Attribute | ExternDeclaration | ScopeDeclaration | ObjectiveDeclaration | ClassDeclaration | EnumDeclaration + public Alternatives getAlternatives() { return cAlternatives; } //AssertionOrDefinition - public RuleCall getAssertionOrDefinitionParserRuleCall_0_0() { return cAssertionOrDefinitionParserRuleCall_0_0; } + public RuleCall getAssertionOrDefinitionParserRuleCall_0() { return cAssertionOrDefinitionParserRuleCall_0; } //PredicateDefinition - public RuleCall getPredicateDefinitionParserRuleCall_0_1() { return cPredicateDefinitionParserRuleCall_0_1; } + public RuleCall getPredicateDefinitionParserRuleCall_1() { return cPredicateDefinitionParserRuleCall_1; } - //UnnamedErrorPrediateDefinition - public RuleCall getUnnamedErrorPrediateDefinitionParserRuleCall_0_2() { return cUnnamedErrorPrediateDefinitionParserRuleCall_0_2; } + //UnnamedErrorPredicateDefintion + public RuleCall getUnnamedErrorPredicateDefintionParserRuleCall_2() { return cUnnamedErrorPredicateDefintionParserRuleCall_2; } - //DefaultDefinition - public RuleCall getDefaultDefinitionParserRuleCall_0_3() { return cDefaultDefinitionParserRuleCall_0_3; } + //DefaultAssertion + public RuleCall getDefaultAssertionParserRuleCall_3() { return cDefaultAssertionParserRuleCall_3; } - //MetricDefinition - public RuleCall getMetricDefinitionParserRuleCall_0_4() { return cMetricDefinitionParserRuleCall_0_4; } + //FunctionDefinition + public RuleCall getFunctionDefinitionParserRuleCall_4() { return cFunctionDefinitionParserRuleCall_4; } - //ExternPredicateDefinition - public RuleCall getExternPredicateDefinitionParserRuleCall_0_5() { return cExternPredicateDefinitionParserRuleCall_0_5; } + //Attribute + public RuleCall getAttributeParserRuleCall_5() { return cAttributeParserRuleCall_5; } - //ExternMetricDefinition - public RuleCall getExternMetricDefinitionParserRuleCall_0_6() { return cExternMetricDefinitionParserRuleCall_0_6; } + //ExternDeclaration + public RuleCall getExternDeclarationParserRuleCall_6() { return cExternDeclarationParserRuleCall_6; } - //ExternAggregatorDefinition - public RuleCall getExternAggregatorDefinitionParserRuleCall_0_7() { return cExternAggregatorDefinitionParserRuleCall_0_7; } + //ScopeDeclaration + public RuleCall getScopeDeclarationParserRuleCall_7() { return cScopeDeclarationParserRuleCall_7; } - //ExternDatatypeDefinition - public RuleCall getExternDatatypeDefinitionParserRuleCall_0_8() { return cExternDatatypeDefinitionParserRuleCall_0_8; } + //ObjectiveDeclaration + public RuleCall getObjectiveDeclarationParserRuleCall_8() { return cObjectiveDeclarationParserRuleCall_8; } - //ClassDefinition - public RuleCall getClassDefinitionParserRuleCall_0_9() { return cClassDefinitionParserRuleCall_0_9; } + //ClassDeclaration + public RuleCall getClassDeclarationParserRuleCall_9() { return cClassDeclarationParserRuleCall_9; } - //ScopeDefinition - public RuleCall getScopeDefinitionParserRuleCall_0_10() { return cScopeDefinitionParserRuleCall_0_10; } + //EnumDeclaration + public RuleCall getEnumDeclarationParserRuleCall_10() { return cEnumDeclarationParserRuleCall_10; } + } + public class ImportElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Import"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cUriImportParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cNamespaceImportParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); - //ObjectiveDefinition - public RuleCall getObjectiveDefinitionParserRuleCall_0_11() { return cObjectiveDefinitionParserRuleCall_0_11; } + //Import: + // UriImport | NamespaceImport; + @Override public ParserRule getRule() { return rule; } + + //UriImport | NamespaceImport + public Alternatives getAlternatives() { return cAlternatives; } + + //UriImport + public RuleCall getUriImportParserRuleCall_0() { return cUriImportParserRuleCall_0; } + + //NamespaceImport + public RuleCall getNamespaceImportParserRuleCall_1() { return cNamespaceImportParserRuleCall_1; } + } + public class UriImportElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UriImport"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cImportKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cUriAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cUriSTRINGTerminalRuleCall_1_0 = (RuleCall)cUriAssignment_1.eContents().get(0); + private final Group cGroup_2 = (Group)cGroup.eContents().get(2); + private final Keyword cAsKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0); + private final Assignment cAliasAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1); + private final RuleCall cAliasQualifiedNameParserRuleCall_2_1_0 = (RuleCall)cAliasAssignment_2_1.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3); + + //UriImport: + // "import" uri=STRING ("as" alias=QualifiedName) FULL_STOP; + @Override public ParserRule getRule() { return rule; } + + //"import" uri=STRING ("as" alias=QualifiedName) FULL_STOP + public Group getGroup() { return cGroup; } + + //"import" + public Keyword getImportKeyword_0() { return cImportKeyword_0; } + + //uri=STRING + public Assignment getUriAssignment_1() { return cUriAssignment_1; } + + //STRING + public RuleCall getUriSTRINGTerminalRuleCall_1_0() { return cUriSTRINGTerminalRuleCall_1_0; } + + //("as" alias=QualifiedName) + public Group getGroup_2() { return cGroup_2; } + + //"as" + public Keyword getAsKeyword_2_0() { return cAsKeyword_2_0; } + + //alias=QualifiedName + public Assignment getAliasAssignment_2_1() { return cAliasAssignment_2_1; } + + //QualifiedName + public RuleCall getAliasQualifiedNameParserRuleCall_2_1_0() { return cAliasQualifiedNameParserRuleCall_2_1_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_3() { return cFULL_STOPTerminalRuleCall_3; } + } + public class NamespaceImportElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.NamespaceImport"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cImportKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cImportedNamespaceAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cImportedNamespaceQualifiedNameParserRuleCall_1_0 = (RuleCall)cImportedNamespaceAssignment_1.eContents().get(0); + private final Group cGroup_2 = (Group)cGroup.eContents().get(2); + private final Keyword cAsKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0); + private final Assignment cAliasAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1); + private final RuleCall cAliasQualifiedNameParserRuleCall_2_1_0 = (RuleCall)cAliasAssignment_2_1.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3); + + //NamespaceImport: + // "import" importedNamespace=QualifiedName ("as" alias=QualifiedName) FULL_STOP; + @Override public ParserRule getRule() { return rule; } + + //"import" importedNamespace=QualifiedName ("as" alias=QualifiedName) FULL_STOP + public Group getGroup() { return cGroup; } + + //"import" + public Keyword getImportKeyword_0() { return cImportKeyword_0; } + + //importedNamespace=QualifiedName + public Assignment getImportedNamespaceAssignment_1() { return cImportedNamespaceAssignment_1; } + + //QualifiedName + public RuleCall getImportedNamespaceQualifiedNameParserRuleCall_1_0() { return cImportedNamespaceQualifiedNameParserRuleCall_1_0; } + + //("as" alias=QualifiedName) + public Group getGroup_2() { return cGroup_2; } + + //"as" + public Keyword getAsKeyword_2_0() { return cAsKeyword_2_0; } + + //alias=QualifiedName + public Assignment getAliasAssignment_2_1() { return cAliasAssignment_2_1; } + + //QualifiedName + public RuleCall getAliasQualifiedNameParserRuleCall_2_1_0() { return cAliasQualifiedNameParserRuleCall_2_1_0; } //FULL_STOP - public RuleCall getFULL_STOPTerminalRuleCall_1() { return cFULL_STOPTerminalRuleCall_1; } + public RuleCall getFULL_STOPTerminalRuleCall_3() { return cFULL_STOPTerminalRuleCall_3; } } public class AssertionOrDefinitionElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.AssertionOrDefinition"); @@ -121,51 +245,56 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final RuleCall cExpressionParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1); private final Group cGroup_1_0 = (Group)cAlternatives_1.eContents().get(0); - private final Action cInterpretationBodyAction_1_0_0 = (Action)cGroup_1_0.eContents().get(0); - private final Keyword cColonKeyword_1_0_1 = (Keyword)cGroup_1_0.eContents().get(1); - private final Assignment cRangeAssignment_1_0_2 = (Assignment)cGroup_1_0.eContents().get(2); - private final RuleCall cRangeExpressionParserRuleCall_1_0_2_0 = (RuleCall)cRangeAssignment_1_0_2.eContents().get(0); + private final Action cAssertionExpressionAction_1_0_0 = (Action)cGroup_1_0.eContents().get(0); + private final Group cGroup_1_0_1 = (Group)cGroup_1_0.eContents().get(1); + private final Keyword cColonKeyword_1_0_1_0 = (Keyword)cGroup_1_0_1.eContents().get(0); + private final Assignment cRangeAssignment_1_0_1_1 = (Assignment)cGroup_1_0_1.eContents().get(1); + private final RuleCall cRangeExpressionParserRuleCall_1_0_1_1_0 = (RuleCall)cRangeAssignment_1_0_1_1.eContents().get(0); private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1); private final Action cPredicateDefinitionHeadAction_1_1_0 = (Action)cGroup_1_1.eContents().get(0); private final Keyword cColonHyphenMinusKeyword_1_1_1 = (Keyword)cGroup_1_1.eContents().get(1); private final Assignment cBodyAssignment_1_1_2 = (Assignment)cGroup_1_1.eContents().get(2); private final RuleCall cBodyExpressionParserRuleCall_1_1_2_0 = (RuleCall)cBodyAssignment_1_1_2.eContents().get(0); private final Group cGroup_1_2 = (Group)cAlternatives_1.eContents().get(2); - private final Action cMetricDefinitionHeadAction_1_2_0 = (Action)cGroup_1_2.eContents().get(0); - private final Keyword cEqualsSignKeyword_1_2_1 = (Keyword)cGroup_1_2.eContents().get(1); + private final Action cFunctionDefinitionHeadAction_1_2_0 = (Action)cGroup_1_2.eContents().get(0); + private final Keyword cColonEqualsSignKeyword_1_2_1 = (Keyword)cGroup_1_2.eContents().get(1); private final Assignment cBodyAssignment_1_2_2 = (Assignment)cGroup_1_2.eContents().get(2); private final RuleCall cBodyExpressionParserRuleCall_1_2_2_0 = (RuleCall)cBodyAssignment_1_2_2.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_2 = (RuleCall)cGroup.eContents().get(2); //AssertionOrDefinition Statement: - // Expression ({Interpretation.body=current} ":" range=Expression | {PredicateDefinition.head=current} ":-" - // body=Expression | {MetricDefinition.head=current} "=" body=Expression)?; + // Expression ({Assertion.expression=current} (":" range=Expression)? | {PredicateDefinition.head=current} ":-" + // body=Expression | {FunctionDefinition.head=current} ":=" body=Expression) FULL_STOP; @Override public ParserRule getRule() { return rule; } - //Expression ({Interpretation.body=current} ":" range=Expression | {PredicateDefinition.head=current} ":-" body=Expression - //| {MetricDefinition.head=current} "=" body=Expression)? + //Expression ({Assertion.expression=current} (":" range=Expression)? | {PredicateDefinition.head=current} ":-" + //body=Expression | {FunctionDefinition.head=current} ":=" body=Expression) FULL_STOP public Group getGroup() { return cGroup; } //Expression public RuleCall getExpressionParserRuleCall_0() { return cExpressionParserRuleCall_0; } - //({Interpretation.body=current} ":" range=Expression | {PredicateDefinition.head=current} ":-" body=Expression | - //{MetricDefinition.head=current} "=" body=Expression)? + //({Assertion.expression=current} (":" range=Expression)? | {PredicateDefinition.head=current} ":-" body=Expression | + //{FunctionDefinition.head=current} ":=" body=Expression) public Alternatives getAlternatives_1() { return cAlternatives_1; } - //{Interpretation.body=current} ":" range=Expression + //{Assertion.expression=current} (":" range=Expression)? public Group getGroup_1_0() { return cGroup_1_0; } - //{Interpretation.body=current} - public Action getInterpretationBodyAction_1_0_0() { return cInterpretationBodyAction_1_0_0; } + //{Assertion.expression=current} + public Action getAssertionExpressionAction_1_0_0() { return cAssertionExpressionAction_1_0_0; } + + //(":" range=Expression)? + public Group getGroup_1_0_1() { return cGroup_1_0_1; } //":" - public Keyword getColonKeyword_1_0_1() { return cColonKeyword_1_0_1; } + public Keyword getColonKeyword_1_0_1_0() { return cColonKeyword_1_0_1_0; } //range=Expression - public Assignment getRangeAssignment_1_0_2() { return cRangeAssignment_1_0_2; } + public Assignment getRangeAssignment_1_0_1_1() { return cRangeAssignment_1_0_1_1; } //Expression - public RuleCall getRangeExpressionParserRuleCall_1_0_2_0() { return cRangeExpressionParserRuleCall_1_0_2_0; } + public RuleCall getRangeExpressionParserRuleCall_1_0_1_1_0() { return cRangeExpressionParserRuleCall_1_0_1_1_0; } //{PredicateDefinition.head=current} ":-" body=Expression public Group getGroup_1_1() { return cGroup_1_1; } @@ -182,20 +311,23 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //Expression public RuleCall getBodyExpressionParserRuleCall_1_1_2_0() { return cBodyExpressionParserRuleCall_1_1_2_0; } - //{MetricDefinition.head=current} "=" body=Expression + //{FunctionDefinition.head=current} ":=" body=Expression public Group getGroup_1_2() { return cGroup_1_2; } - //{MetricDefinition.head=current} - public Action getMetricDefinitionHeadAction_1_2_0() { return cMetricDefinitionHeadAction_1_2_0; } + //{FunctionDefinition.head=current} + public Action getFunctionDefinitionHeadAction_1_2_0() { return cFunctionDefinitionHeadAction_1_2_0; } - //"=" - public Keyword getEqualsSignKeyword_1_2_1() { return cEqualsSignKeyword_1_2_1; } + //":=" + public Keyword getColonEqualsSignKeyword_1_2_1() { return cColonEqualsSignKeyword_1_2_1; } //body=Expression public Assignment getBodyAssignment_1_2_2() { return cBodyAssignment_1_2_2; } //Expression public RuleCall getBodyExpressionParserRuleCall_1_2_2_0() { return cBodyExpressionParserRuleCall_1_2_2_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_2() { return cFULL_STOPTerminalRuleCall_2; } } public class PredicateDefinitionElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.PredicateDefinition"); @@ -216,12 +348,15 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Keyword cColonHyphenMinusKeyword_2 = (Keyword)cGroup.eContents().get(2); private final Assignment cBodyAssignment_3 = (Assignment)cGroup.eContents().get(3); private final RuleCall cBodyExpressionParserRuleCall_3_0 = (RuleCall)cBodyAssignment_3.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_4 = (RuleCall)cGroup.eContents().get(4); //PredicateDefinition: - // (functional?="functional" error?="error"? | error?="error" functional?="functional"?) head=Call ":-" body=Expression; + // (functional?="functional" error?="error"? | error?="error" functional?="functional"?) head=Call ":-" body=Expression + // FULL_STOP; @Override public ParserRule getRule() { return rule; } //(functional?="functional" error?="error"? | error?="error" functional?="functional"?) head=Call ":-" body=Expression + //FULL_STOP public Group getGroup() { return cGroup; } //(functional?="functional" error?="error"? | error?="error" functional?="functional"?) @@ -271,9 +406,12 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //Expression public RuleCall getBodyExpressionParserRuleCall_3_0() { return cBodyExpressionParserRuleCall_3_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_4() { return cFULL_STOPTerminalRuleCall_4; } } - public class UnnamedErrorPrediateDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UnnamedErrorPrediateDefinition"); + public class UnnamedErrorPredicateDefintionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UnnamedErrorPredicateDefintion"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cErrorKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Assignment cArgumentListAssignment_1 = (Assignment)cGroup.eContents().get(1); @@ -281,12 +419,13 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Keyword cColonHyphenMinusKeyword_2 = (Keyword)cGroup.eContents().get(2); private final Assignment cBodyAssignment_3 = (Assignment)cGroup.eContents().get(3); private final RuleCall cBodyExpressionParserRuleCall_3_0 = (RuleCall)cBodyAssignment_3.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_4 = (RuleCall)cGroup.eContents().get(4); - //UnnamedErrorPrediateDefinition: - // "error" argumentList=ArgumentList ":-" body=Expression; + //UnnamedErrorPredicateDefintion: + // "error" argumentList=ArgumentList ":-" body=Expression FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"error" argumentList=ArgumentList ":-" body=Expression + //"error" argumentList=ArgumentList ":-" body=Expression FULL_STOP public Group getGroup() { return cGroup; } //"error" @@ -306,69 +445,81 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //Expression public RuleCall getBodyExpressionParserRuleCall_3_0() { return cBodyExpressionParserRuleCall_3_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_4() { return cFULL_STOPTerminalRuleCall_4; } } - public class DefaultDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.DefaultDefinition"); + public class DefaultAssertionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.DefaultAssertion"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cDefaultKeyword_0 = (Keyword)cGroup.eContents().get(0); - private final Assignment cHeadAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final RuleCall cHeadCallParserRuleCall_1_0 = (RuleCall)cHeadAssignment_1.eContents().get(0); - private final Keyword cColonKeyword_2 = (Keyword)cGroup.eContents().get(2); - private final Assignment cRangeAssignment_3 = (Assignment)cGroup.eContents().get(3); - private final RuleCall cRangeExpressionParserRuleCall_3_0 = (RuleCall)cRangeAssignment_3.eContents().get(0); + private final Assignment cExpressionAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cExpressionCallParserRuleCall_1_0 = (RuleCall)cExpressionAssignment_1.eContents().get(0); + private final Group cGroup_2 = (Group)cGroup.eContents().get(2); + private final Keyword cColonKeyword_2_0 = (Keyword)cGroup_2.eContents().get(0); + private final Assignment cRangeAssignment_2_1 = (Assignment)cGroup_2.eContents().get(1); + private final RuleCall cRangeExpressionParserRuleCall_2_1_0 = (RuleCall)cRangeAssignment_2_1.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3); - //DefaultDefinition: - // "default" head=Call ":" range=Expression; + //DefaultAssertion: + // "default" expression=Call (":" range=Expression)? FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"default" head=Call ":" range=Expression + //"default" expression=Call (":" range=Expression)? FULL_STOP public Group getGroup() { return cGroup; } //"default" public Keyword getDefaultKeyword_0() { return cDefaultKeyword_0; } - //head=Call - public Assignment getHeadAssignment_1() { return cHeadAssignment_1; } + //expression=Call + public Assignment getExpressionAssignment_1() { return cExpressionAssignment_1; } //Call - public RuleCall getHeadCallParserRuleCall_1_0() { return cHeadCallParserRuleCall_1_0; } + public RuleCall getExpressionCallParserRuleCall_1_0() { return cExpressionCallParserRuleCall_1_0; } + + //(":" range=Expression)? + public Group getGroup_2() { return cGroup_2; } //":" - public Keyword getColonKeyword_2() { return cColonKeyword_2; } + public Keyword getColonKeyword_2_0() { return cColonKeyword_2_0; } //range=Expression - public Assignment getRangeAssignment_3() { return cRangeAssignment_3; } + public Assignment getRangeAssignment_2_1() { return cRangeAssignment_2_1; } //Expression - public RuleCall getRangeExpressionParserRuleCall_3_0() { return cRangeExpressionParserRuleCall_3_0; } + public RuleCall getRangeExpressionParserRuleCall_2_1_0() { return cRangeExpressionParserRuleCall_2_1_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_3() { return cFULL_STOPTerminalRuleCall_3; } } - public class MetricDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.MetricDefinition"); + public class FunctionDefinitionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.FunctionDefinition"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cTypeAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final CrossReference cTypeNamedElementCrossReference_0_0 = (CrossReference)cTypeAssignment_0.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cTypeNamedElementCrossReference_0_0.eContents().get(1); + private final Assignment cResultTypeAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final CrossReference cResultTypeSymbolCrossReference_0_0 = (CrossReference)cResultTypeAssignment_0.eContents().get(0); + private final RuleCall cResultTypeSymbolQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cResultTypeSymbolCrossReference_0_0.eContents().get(1); private final Assignment cHeadAssignment_1 = (Assignment)cGroup.eContents().get(1); private final RuleCall cHeadCallParserRuleCall_1_0 = (RuleCall)cHeadAssignment_1.eContents().get(0); - private final Keyword cEqualsSignKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Keyword cColonEqualsSignKeyword_2 = (Keyword)cGroup.eContents().get(2); private final Assignment cBodyAssignment_3 = (Assignment)cGroup.eContents().get(3); private final RuleCall cBodyExpressionParserRuleCall_3_0 = (RuleCall)cBodyAssignment_3.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_4 = (RuleCall)cGroup.eContents().get(4); - //MetricDefinition: - // type=[NamedElement|QualifiedName] head=Call "=" body=Expression; + //FunctionDefinition: + // resultType=[Symbol|QualifiedName] head=Call ":=" body=Expression FULL_STOP; @Override public ParserRule getRule() { return rule; } - //type=[NamedElement|QualifiedName] head=Call "=" body=Expression + //resultType=[Symbol|QualifiedName] head=Call ":=" body=Expression FULL_STOP public Group getGroup() { return cGroup; } - //type=[NamedElement|QualifiedName] - public Assignment getTypeAssignment_0() { return cTypeAssignment_0; } + //resultType=[Symbol|QualifiedName] + public Assignment getResultTypeAssignment_0() { return cResultTypeAssignment_0; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_0_0() { return cTypeNamedElementCrossReference_0_0; } + //[Symbol|QualifiedName] + public CrossReference getResultTypeSymbolCrossReference_0_0() { return cResultTypeSymbolCrossReference_0_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_0_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_0_0_1; } + public RuleCall getResultTypeSymbolQualifiedNameParserRuleCall_0_0_1() { return cResultTypeSymbolQualifiedNameParserRuleCall_0_0_1; } //head=Call public Assignment getHeadAssignment_1() { return cHeadAssignment_1; } @@ -376,76 +527,199 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //Call public RuleCall getHeadCallParserRuleCall_1_0() { return cHeadCallParserRuleCall_1_0; } - //"=" - public Keyword getEqualsSignKeyword_2() { return cEqualsSignKeyword_2; } + //":=" + public Keyword getColonEqualsSignKeyword_2() { return cColonEqualsSignKeyword_2; } //body=Expression public Assignment getBodyAssignment_3() { return cBodyAssignment_3; } //Expression public RuleCall getBodyExpressionParserRuleCall_3_0() { return cBodyExpressionParserRuleCall_3_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_4() { return cFULL_STOPTerminalRuleCall_4; } + } + public class TypeReferenceElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.TypeReference"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cTypeAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final CrossReference cTypeSymbolCrossReference_0_0 = (CrossReference)cTypeAssignment_0.eContents().get(0); + private final RuleCall cTypeSymbolQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cTypeSymbolCrossReference_0_0.eContents().get(1); + private final Assignment cForceObjectTypeAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final Keyword cForceObjectTypeObjectKeyword_1_0 = (Keyword)cForceObjectTypeAssignment_1.eContents().get(0); + + //TypeReference: + // type=[Symbol|QualifiedName] forceObjectType?="object"?; + @Override public ParserRule getRule() { return rule; } + + //type=[Symbol|QualifiedName] forceObjectType?="object"? + public Group getGroup() { return cGroup; } + + //type=[Symbol|QualifiedName] + public Assignment getTypeAssignment_0() { return cTypeAssignment_0; } + + //[Symbol|QualifiedName] + public CrossReference getTypeSymbolCrossReference_0_0() { return cTypeSymbolCrossReference_0_0; } + + //QualifiedName + public RuleCall getTypeSymbolQualifiedNameParserRuleCall_0_0_1() { return cTypeSymbolQualifiedNameParserRuleCall_0_0_1; } + + //forceObjectType?="object"? + public Assignment getForceObjectTypeAssignment_1() { return cForceObjectTypeAssignment_1; } + + //"object" + public Keyword getForceObjectTypeObjectKeyword_1_0() { return cForceObjectTypeObjectKeyword_1_0; } + } + public class AttributeElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Attribute"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cKindAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final RuleCall cKindAttributeKindEnumRuleCall_0_0 = (RuleCall)cKindAssignment_0.eContents().get(0); + private final Assignment cTargetAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final CrossReference cTargetSymbolCrossReference_1_0 = (CrossReference)cTargetAssignment_1.eContents().get(0); + private final RuleCall cTargetSymbolQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cTargetSymbolCrossReference_1_0.eContents().get(1); + private final RuleCall cFULL_STOPTerminalRuleCall_2 = (RuleCall)cGroup.eContents().get(2); + + //Attribute: + // kind=AttributeKind target=[Symbol|QualifiedName] FULL_STOP; + @Override public ParserRule getRule() { return rule; } + + //kind=AttributeKind target=[Symbol|QualifiedName] FULL_STOP + public Group getGroup() { return cGroup; } + + //kind=AttributeKind + public Assignment getKindAssignment_0() { return cKindAssignment_0; } + + //AttributeKind + public RuleCall getKindAttributeKindEnumRuleCall_0_0() { return cKindAttributeKindEnumRuleCall_0_0; } + + //target=[Symbol|QualifiedName] + public Assignment getTargetAssignment_1() { return cTargetAssignment_1; } + + //[Symbol|QualifiedName] + public CrossReference getTargetSymbolCrossReference_1_0() { return cTargetSymbolCrossReference_1_0; } + + //QualifiedName + public RuleCall getTargetSymbolQualifiedNameParserRuleCall_1_0_1() { return cTargetSymbolQualifiedNameParserRuleCall_1_0_1; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_2() { return cFULL_STOPTerminalRuleCall_2; } } - public class ExternPredicateDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternPredicateDefinition"); + public class ExternDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternDeclaration"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cExternPredicateDeclarationParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cExternFunctionDeclarationParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final RuleCall cExternAggregationOperatorDeclarationParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + private final RuleCall cExternDatatypeDeclarationParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3); + + //ExternDeclaration: + // ExternPredicateDeclaration | ExternFunctionDeclaration | ExternAggregationOperatorDeclaration | + // ExternDatatypeDeclaration; + @Override public ParserRule getRule() { return rule; } + + //ExternPredicateDeclaration | ExternFunctionDeclaration | ExternAggregationOperatorDeclaration | + //ExternDatatypeDeclaration + public Alternatives getAlternatives() { return cAlternatives; } + + //ExternPredicateDeclaration + public RuleCall getExternPredicateDeclarationParserRuleCall_0() { return cExternPredicateDeclarationParserRuleCall_0; } + + //ExternFunctionDeclaration + public RuleCall getExternFunctionDeclarationParserRuleCall_1() { return cExternFunctionDeclarationParserRuleCall_1; } + + //ExternAggregationOperatorDeclaration + public RuleCall getExternAggregationOperatorDeclarationParserRuleCall_2() { return cExternAggregationOperatorDeclarationParserRuleCall_2; } + + //ExternDatatypeDeclaration + public RuleCall getExternDatatypeDeclarationParserRuleCall_3() { return cExternDatatypeDeclarationParserRuleCall_3; } + } + public class ExternPredicateDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternPredicateDeclaration"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cExternKeyword_0 = (Keyword)cGroup.eContents().get(0); - private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final RuleCall cNameQualifiedNameParserRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); - private final Assignment cArgumentListAssignment_2 = (Assignment)cGroup.eContents().get(2); - private final RuleCall cArgumentListArgumentListParserRuleCall_2_0 = (RuleCall)cArgumentListAssignment_2.eContents().get(0); + private final UnorderedGroup cUnorderedGroup_1 = (UnorderedGroup)cGroup.eContents().get(1); + private final Assignment cFunctionalAssignment_1_0 = (Assignment)cUnorderedGroup_1.eContents().get(0); + private final Keyword cFunctionalFunctionalKeyword_1_0_0 = (Keyword)cFunctionalAssignment_1_0.eContents().get(0); + private final Assignment cErrorAssignment_1_1 = (Assignment)cUnorderedGroup_1.eContents().get(1); + private final Keyword cErrorErrorKeyword_1_1_0 = (Keyword)cErrorAssignment_1_1.eContents().get(0); + private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cNameQualifiedNameParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0); + private final Assignment cArgumentListAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cArgumentListArgumentListParserRuleCall_3_0 = (RuleCall)cArgumentListAssignment_3.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_4 = (RuleCall)cGroup.eContents().get(4); - //ExternPredicateDefinition: - // "extern" name=QualifiedName argumentList=ArgumentList; + //ExternPredicateDeclaration: + // "extern" (functional?="functional"? & error?="error"?) name=QualifiedName argumentList=ArgumentList FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"extern" name=QualifiedName argumentList=ArgumentList + //"extern" (functional?="functional"? & error?="error"?) name=QualifiedName argumentList=ArgumentList FULL_STOP public Group getGroup() { return cGroup; } //"extern" public Keyword getExternKeyword_0() { return cExternKeyword_0; } + //(functional?="functional"? & error?="error"?) + public UnorderedGroup getUnorderedGroup_1() { return cUnorderedGroup_1; } + + //functional?="functional"? + public Assignment getFunctionalAssignment_1_0() { return cFunctionalAssignment_1_0; } + + //"functional" + public Keyword getFunctionalFunctionalKeyword_1_0_0() { return cFunctionalFunctionalKeyword_1_0_0; } + + //error?="error"? + public Assignment getErrorAssignment_1_1() { return cErrorAssignment_1_1; } + + //"error" + public Keyword getErrorErrorKeyword_1_1_0() { return cErrorErrorKeyword_1_1_0; } + //name=QualifiedName - public Assignment getNameAssignment_1() { return cNameAssignment_1; } + public Assignment getNameAssignment_2() { return cNameAssignment_2; } //QualifiedName - public RuleCall getNameQualifiedNameParserRuleCall_1_0() { return cNameQualifiedNameParserRuleCall_1_0; } + public RuleCall getNameQualifiedNameParserRuleCall_2_0() { return cNameQualifiedNameParserRuleCall_2_0; } //argumentList=ArgumentList - public Assignment getArgumentListAssignment_2() { return cArgumentListAssignment_2; } + public Assignment getArgumentListAssignment_3() { return cArgumentListAssignment_3; } //ArgumentList - public RuleCall getArgumentListArgumentListParserRuleCall_2_0() { return cArgumentListArgumentListParserRuleCall_2_0; } + public RuleCall getArgumentListArgumentListParserRuleCall_3_0() { return cArgumentListArgumentListParserRuleCall_3_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_4() { return cFULL_STOPTerminalRuleCall_4; } } - public class ExternMetricDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternMetricDefinition"); + public class ExternFunctionDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternFunctionDeclaration"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cExternKeyword_0 = (Keyword)cGroup.eContents().get(0); - private final Assignment cTypeAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final CrossReference cTypeNamedElementCrossReference_1_0 = (CrossReference)cTypeAssignment_1.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_0.eContents().get(1); + private final Assignment cResultTypeAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final CrossReference cResultTypeSymbolCrossReference_1_0 = (CrossReference)cResultTypeAssignment_1.eContents().get(0); + private final RuleCall cResultTypeSymbolQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cResultTypeSymbolCrossReference_1_0.eContents().get(1); private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2); private final RuleCall cNameQualifiedNameParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0); private final Assignment cArgumentListAssignment_3 = (Assignment)cGroup.eContents().get(3); private final RuleCall cArgumentListArgumentListParserRuleCall_3_0 = (RuleCall)cArgumentListAssignment_3.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_4 = (RuleCall)cGroup.eContents().get(4); - //ExternMetricDefinition: - // "extern" type=[NamedElement|QualifiedName] name=QualifiedName argumentList=ArgumentList; + //ExternFunctionDeclaration: + // "extern" resultType=[Symbol|QualifiedName] name=QualifiedName argumentList=ArgumentList FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"extern" type=[NamedElement|QualifiedName] name=QualifiedName argumentList=ArgumentList + //"extern" resultType=[Symbol|QualifiedName] name=QualifiedName argumentList=ArgumentList FULL_STOP public Group getGroup() { return cGroup; } //"extern" public Keyword getExternKeyword_0() { return cExternKeyword_0; } - //type=[NamedElement|QualifiedName] - public Assignment getTypeAssignment_1() { return cTypeAssignment_1; } + //resultType=[Symbol|QualifiedName] + public Assignment getResultTypeAssignment_1() { return cResultTypeAssignment_1; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_0() { return cTypeNamedElementCrossReference_1_0; } + //[Symbol|QualifiedName] + public CrossReference getResultTypeSymbolCrossReference_1_0() { return cResultTypeSymbolCrossReference_1_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_0_1; } + public RuleCall getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1() { return cResultTypeSymbolQualifiedNameParserRuleCall_1_0_1; } //name=QualifiedName public Assignment getNameAssignment_2() { return cNameAssignment_2; } @@ -458,41 +732,47 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //ArgumentList public RuleCall getArgumentListArgumentListParserRuleCall_3_0() { return cArgumentListArgumentListParserRuleCall_3_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_4() { return cFULL_STOPTerminalRuleCall_4; } } - public class ExternAggregatorDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternAggregatorDefinition"); + public class ExternAggregationOperatorDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternAggregationOperatorDeclaration"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cExternKeyword_0 = (Keyword)cGroup.eContents().get(0); - private final Assignment cTypeAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final CrossReference cTypeNamedElementCrossReference_1_0 = (CrossReference)cTypeAssignment_1.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_0.eContents().get(1); + private final Assignment cResultTypeAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final CrossReference cResultTypeSymbolCrossReference_1_0 = (CrossReference)cResultTypeAssignment_1.eContents().get(0); + private final RuleCall cResultTypeSymbolQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cResultTypeSymbolCrossReference_1_0.eContents().get(1); private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2); private final RuleCall cNameQualifiedNameParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0); private final Keyword cLeftCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3); - private final Assignment cInputTypeAssignment_4 = (Assignment)cGroup.eContents().get(4); - private final CrossReference cInputTypeNamedElementCrossReference_4_0 = (CrossReference)cInputTypeAssignment_4.eContents().get(0); - private final RuleCall cInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1 = (RuleCall)cInputTypeNamedElementCrossReference_4_0.eContents().get(1); + private final Assignment cArgumentTypeAssignment_4 = (Assignment)cGroup.eContents().get(4); + private final CrossReference cArgumentTypeSymbolCrossReference_4_0 = (CrossReference)cArgumentTypeAssignment_4.eContents().get(0); + private final RuleCall cArgumentTypeSymbolQualifiedNameParserRuleCall_4_0_1 = (RuleCall)cArgumentTypeSymbolCrossReference_4_0.eContents().get(1); private final Keyword cFullStopFullStopFullStopKeyword_5 = (Keyword)cGroup.eContents().get(5); private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6); + private final RuleCall cFULL_STOPTerminalRuleCall_7 = (RuleCall)cGroup.eContents().get(7); - //ExternAggregatorDefinition: - // "extern" type=[NamedElement|QualifiedName] name=QualifiedName "{" inputType=[NamedElement|QualifiedName] "..." "}"; + //ExternAggregationOperatorDeclaration: + // "extern" resultType=[Symbol|QualifiedName] name=QualifiedName "{" argumentType=[Symbol|QualifiedName] "..." "}" + // FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"extern" type=[NamedElement|QualifiedName] name=QualifiedName "{" inputType=[NamedElement|QualifiedName] "..." "}" + //"extern" resultType=[Symbol|QualifiedName] name=QualifiedName "{" argumentType=[Symbol|QualifiedName] "..." "}" + //FULL_STOP public Group getGroup() { return cGroup; } //"extern" public Keyword getExternKeyword_0() { return cExternKeyword_0; } - //type=[NamedElement|QualifiedName] - public Assignment getTypeAssignment_1() { return cTypeAssignment_1; } + //resultType=[Symbol|QualifiedName] + public Assignment getResultTypeAssignment_1() { return cResultTypeAssignment_1; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_0() { return cTypeNamedElementCrossReference_1_0; } + //[Symbol|QualifiedName] + public CrossReference getResultTypeSymbolCrossReference_1_0() { return cResultTypeSymbolCrossReference_1_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_0_1; } + public RuleCall getResultTypeSymbolQualifiedNameParserRuleCall_1_0_1() { return cResultTypeSymbolQualifiedNameParserRuleCall_1_0_1; } //name=QualifiedName public Assignment getNameAssignment_2() { return cNameAssignment_2; } @@ -503,46 +783,38 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"{" public Keyword getLeftCurlyBracketKeyword_3() { return cLeftCurlyBracketKeyword_3; } - //inputType=[NamedElement|QualifiedName] - public Assignment getInputTypeAssignment_4() { return cInputTypeAssignment_4; } + //argumentType=[Symbol|QualifiedName] + public Assignment getArgumentTypeAssignment_4() { return cArgumentTypeAssignment_4; } - //[NamedElement|QualifiedName] - public CrossReference getInputTypeNamedElementCrossReference_4_0() { return cInputTypeNamedElementCrossReference_4_0; } + //[Symbol|QualifiedName] + public CrossReference getArgumentTypeSymbolCrossReference_4_0() { return cArgumentTypeSymbolCrossReference_4_0; } //QualifiedName - public RuleCall getInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1() { return cInputTypeNamedElementQualifiedNameParserRuleCall_4_0_1; } + public RuleCall getArgumentTypeSymbolQualifiedNameParserRuleCall_4_0_1() { return cArgumentTypeSymbolQualifiedNameParserRuleCall_4_0_1; } //"..." public Keyword getFullStopFullStopFullStopKeyword_5() { return cFullStopFullStopFullStopKeyword_5; } //"}" public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_7() { return cFULL_STOPTerminalRuleCall_7; } } - public class ExternDatatypeDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternDatatypeDefinition"); + public class ExternDatatypeDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExternDatatypeDeclaration"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cExternKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Keyword cDatatypeKeyword_1 = (Keyword)cGroup.eContents().get(1); private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2); private final RuleCall cNameQualifiedNameParserRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0); - private final Group cGroup_3 = (Group)cGroup.eContents().get(3); - private final Keyword cExtendsKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0); - private final Assignment cSupertypesAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1); - private final CrossReference cSupertypesNamedElementCrossReference_3_1_0 = (CrossReference)cSupertypesAssignment_3_1.eContents().get(0); - private final RuleCall cSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1 = (RuleCall)cSupertypesNamedElementCrossReference_3_1_0.eContents().get(1); - private final Group cGroup_3_2 = (Group)cGroup_3.eContents().get(2); - private final Keyword cCommaKeyword_3_2_0 = (Keyword)cGroup_3_2.eContents().get(0); - private final Assignment cSupertypesAssignment_3_2_1 = (Assignment)cGroup_3_2.eContents().get(1); - private final CrossReference cSupertypesNamedElementCrossReference_3_2_1_0 = (CrossReference)cSupertypesAssignment_3_2_1.eContents().get(0); - private final RuleCall cSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1 = (RuleCall)cSupertypesNamedElementCrossReference_3_2_1_0.eContents().get(1); + private final RuleCall cFULL_STOPTerminalRuleCall_3 = (RuleCall)cGroup.eContents().get(3); - //ExternDatatypeDefinition: - // "extern" "datatype" name=QualifiedName ("extends" supertypes+=[NamedElement|QualifiedName] ("," - // supertypes+=[NamedElement|QualifiedName])*); + //ExternDatatypeDeclaration: + // "extern" "datatype" name=QualifiedName FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"extern" "datatype" name=QualifiedName ("extends" supertypes+=[NamedElement|QualifiedName] ("," - //supertypes+=[NamedElement|QualifiedName])*) + //"extern" "datatype" name=QualifiedName FULL_STOP public Group getGroup() { return cGroup; } //"extern" @@ -557,96 +829,64 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //QualifiedName public RuleCall getNameQualifiedNameParserRuleCall_2_0() { return cNameQualifiedNameParserRuleCall_2_0; } - //("extends" supertypes+=[NamedElement|QualifiedName] ("," supertypes+=[NamedElement|QualifiedName])*) - public Group getGroup_3() { return cGroup_3; } - - //"extends" - public Keyword getExtendsKeyword_3_0() { return cExtendsKeyword_3_0; } - - //supertypes+=[NamedElement|QualifiedName] - public Assignment getSupertypesAssignment_3_1() { return cSupertypesAssignment_3_1; } - - //[NamedElement|QualifiedName] - public CrossReference getSupertypesNamedElementCrossReference_3_1_0() { return cSupertypesNamedElementCrossReference_3_1_0; } - - //QualifiedName - public RuleCall getSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1() { return cSupertypesNamedElementQualifiedNameParserRuleCall_3_1_0_1; } - - //("," supertypes+=[NamedElement|QualifiedName])* - public Group getGroup_3_2() { return cGroup_3_2; } - - //"," - public Keyword getCommaKeyword_3_2_0() { return cCommaKeyword_3_2_0; } - - //supertypes+=[NamedElement|QualifiedName] - public Assignment getSupertypesAssignment_3_2_1() { return cSupertypesAssignment_3_2_1; } - - //[NamedElement|QualifiedName] - public CrossReference getSupertypesNamedElementCrossReference_3_2_1_0() { return cSupertypesNamedElementCrossReference_3_2_1_0; } - - //QualifiedName - public RuleCall getSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1() { return cSupertypesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1; } + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_3() { return cFULL_STOPTerminalRuleCall_3; } } - public class VariableElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Variable"); - private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cTypeAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final CrossReference cTypeNamedElementCrossReference_0_0 = (CrossReference)cTypeAssignment_0.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cTypeNamedElementCrossReference_0_0.eContents().get(1); - private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + public class ExpressionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final RuleCall cConditionalExpressionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cLetExpressionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final Group cGroup_2 = (Group)cAlternatives.eContents().get(2); + private final RuleCall cDisjunctiveExpressionParserRuleCall_2_0 = (RuleCall)cGroup_2.eContents().get(0); + private final Group cGroup_2_1 = (Group)cGroup_2.eContents().get(1); + private final Action cForallConditionAction_2_1_0 = (Action)cGroup_2_1.eContents().get(0); + private final Keyword cEqualsSignGreaterThanSignKeyword_2_1_1 = (Keyword)cGroup_2_1.eContents().get(1); + private final Assignment cBodyAssignment_2_1_2 = (Assignment)cGroup_2_1.eContents().get(2); + private final RuleCall cBodyDisjunctiveExpressionParserRuleCall_2_1_2_0 = (RuleCall)cBodyAssignment_2_1_2.eContents().get(0); - //Variable: - // type=[NamedElement|QualifiedName]? name=ID; + //Expression: + // ConditionalExpression | LetExpression | DisjunctiveExpression ({Forall.condition=current} "=>" + // body=DisjunctiveExpression)?; @Override public ParserRule getRule() { return rule; } - //type=[NamedElement|QualifiedName]? name=ID - public Group getGroup() { return cGroup; } - - //type=[NamedElement|QualifiedName]? - public Assignment getTypeAssignment_0() { return cTypeAssignment_0; } + //ConditionalExpression | LetExpression | DisjunctiveExpression ({Forall.condition=current} "=>" + //body=DisjunctiveExpression)? + public Alternatives getAlternatives() { return cAlternatives; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_0_0() { return cTypeNamedElementCrossReference_0_0; } + //ConditionalExpression + public RuleCall getConditionalExpressionParserRuleCall_0() { return cConditionalExpressionParserRuleCall_0; } - //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_0_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_0_0_1; } + //LetExpression + public RuleCall getLetExpressionParserRuleCall_1() { return cLetExpressionParserRuleCall_1; } - //name=ID - public Assignment getNameAssignment_1() { return cNameAssignment_1; } + //DisjunctiveExpression ({Forall.condition=current} "=>" body=DisjunctiveExpression)? + public Group getGroup_2() { return cGroup_2; } - //ID - public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; } - } - public class ExpressionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Expression"); - private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final RuleCall cIfElseParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); - private final RuleCall cLetParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); - private final RuleCall cImplicationExpressionParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + //DisjunctiveExpression + public RuleCall getDisjunctiveExpressionParserRuleCall_2_0() { return cDisjunctiveExpressionParserRuleCall_2_0; } - //Expression: - // IfElse | Let | ImplicationExpression; - @Override public ParserRule getRule() { return rule; } + //({Forall.condition=current} "=>" body=DisjunctiveExpression)? + public Group getGroup_2_1() { return cGroup_2_1; } - //IfElse | Let | ImplicationExpression - public Alternatives getAlternatives() { return cAlternatives; } + //{Forall.condition=current} + public Action getForallConditionAction_2_1_0() { return cForallConditionAction_2_1_0; } - //IfElse - public RuleCall getIfElseParserRuleCall_0() { return cIfElseParserRuleCall_0; } + //"=>" + public Keyword getEqualsSignGreaterThanSignKeyword_2_1_1() { return cEqualsSignGreaterThanSignKeyword_2_1_1; } - //Let - public RuleCall getLetParserRuleCall_1() { return cLetParserRuleCall_1; } + //body=DisjunctiveExpression + public Assignment getBodyAssignment_2_1_2() { return cBodyAssignment_2_1_2; } - //ImplicationExpression - public RuleCall getImplicationExpressionParserRuleCall_2() { return cImplicationExpressionParserRuleCall_2; } + //DisjunctiveExpression + public RuleCall getBodyDisjunctiveExpressionParserRuleCall_2_1_2_0() { return cBodyDisjunctiveExpressionParserRuleCall_2_1_2_0; } } - public class IfElseElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.IfElse"); + public class ConditionalExpressionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ConditionalExpression"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cIfKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Assignment cConditionAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final RuleCall cConditionExpressionParserRuleCall_1_0 = (RuleCall)cConditionAssignment_1.eContents().get(0); + private final RuleCall cConditionDisjunctiveExpressionParserRuleCall_1_0 = (RuleCall)cConditionAssignment_1.eContents().get(0); private final Keyword cThenKeyword_2 = (Keyword)cGroup.eContents().get(2); private final Assignment cThenAssignment_3 = (Assignment)cGroup.eContents().get(3); private final RuleCall cThenExpressionParserRuleCall_3_0 = (RuleCall)cThenAssignment_3.eContents().get(0); @@ -654,21 +894,21 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Assignment cElseAssignment_5 = (Assignment)cGroup.eContents().get(5); private final RuleCall cElseExpressionParserRuleCall_5_0 = (RuleCall)cElseAssignment_5.eContents().get(0); - //IfElse: - // "if" condition=Expression "then" then=Expression "else" else=Expression; + //ConditionalExpression: + // "if" condition=DisjunctiveExpression "then" then=Expression "else" else=Expression; @Override public ParserRule getRule() { return rule; } - //"if" condition=Expression "then" then=Expression "else" else=Expression + //"if" condition=DisjunctiveExpression "then" then=Expression "else" else=Expression public Group getGroup() { return cGroup; } //"if" public Keyword getIfKeyword_0() { return cIfKeyword_0; } - //condition=Expression + //condition=DisjunctiveExpression public Assignment getConditionAssignment_1() { return cConditionAssignment_1; } - //Expression - public RuleCall getConditionExpressionParserRuleCall_1_0() { return cConditionExpressionParserRuleCall_1_0; } + //DisjunctiveExpression + public RuleCall getConditionDisjunctiveExpressionParserRuleCall_1_0() { return cConditionDisjunctiveExpressionParserRuleCall_1_0; } //"then" public Keyword getThenKeyword_2() { return cThenKeyword_2; } @@ -688,8 +928,8 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //Expression public RuleCall getElseExpressionParserRuleCall_5_0() { return cElseExpressionParserRuleCall_5_0; } } - public class LetElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Let"); + public class LetExpressionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.LetExpression"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cLetKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Assignment cBindingsAssignment_1 = (Assignment)cGroup.eContents().get(1); @@ -702,7 +942,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Assignment cBodyAssignment_4 = (Assignment)cGroup.eContents().get(4); private final RuleCall cBodyExpressionParserRuleCall_4_0 = (RuleCall)cBodyAssignment_4.eContents().get(0); - //Let: + //LetExpression: // "let" bindings+=LetBinding ("," bindings+=LetBinding)* "in" body=Expression; @Override public ParserRule getRule() { return rule; } @@ -742,72 +982,45 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { public class LetBindingElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.LetBinding"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cVariableAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final RuleCall cVariableVariableParserRuleCall_0_0 = (RuleCall)cVariableAssignment_0.eContents().get(0); - private final Keyword cEqualsSignKeyword_1 = (Keyword)cGroup.eContents().get(1); - private final Assignment cValueAssignment_2 = (Assignment)cGroup.eContents().get(2); - private final RuleCall cValueAdditiveExpressionParserRuleCall_2_0 = (RuleCall)cValueAssignment_2.eContents().get(0); + private final Assignment cTypeAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final CrossReference cTypeSymbolCrossReference_0_0 = (CrossReference)cTypeAssignment_0.eContents().get(0); + private final RuleCall cTypeSymbolQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cTypeSymbolCrossReference_0_0.eContents().get(1); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + private final Keyword cEqualsSignKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Assignment cValueAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cValueAdditiveExpressionParserRuleCall_3_0 = (RuleCall)cValueAssignment_3.eContents().get(0); //LetBinding: - // variable=Variable "=" value=AdditiveExpression; + // type=[Symbol|QualifiedName]? name=ID "=" value=AdditiveExpression; @Override public ParserRule getRule() { return rule; } - //variable=Variable "=" value=AdditiveExpression + //type=[Symbol|QualifiedName]? name=ID "=" value=AdditiveExpression public Group getGroup() { return cGroup; } - //variable=Variable - public Assignment getVariableAssignment_0() { return cVariableAssignment_0; } - - //Variable - public RuleCall getVariableVariableParserRuleCall_0_0() { return cVariableVariableParserRuleCall_0_0; } - - //"=" - public Keyword getEqualsSignKeyword_1() { return cEqualsSignKeyword_1; } - - //value=AdditiveExpression - public Assignment getValueAssignment_2() { return cValueAssignment_2; } - - //AdditiveExpression - public RuleCall getValueAdditiveExpressionParserRuleCall_2_0() { return cValueAdditiveExpressionParserRuleCall_2_0; } - } - public class ImplicationExpressionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ImplicationExpression"); - private final Group cGroup = (Group)rule.eContents().get(1); - private final RuleCall cDisjunctiveExpressionParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); - private final Group cGroup_1 = (Group)cGroup.eContents().get(1); - private final Action cBinaryExpressionLeftAction_1_0 = (Action)cGroup_1.eContents().get(0); - private final Assignment cOpAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); - private final RuleCall cOpImplicationOperatorEnumRuleCall_1_1_0 = (RuleCall)cOpAssignment_1_1.eContents().get(0); - private final Assignment cRightAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); - private final RuleCall cRightImplicationExpressionParserRuleCall_1_2_0 = (RuleCall)cRightAssignment_1_2.eContents().get(0); - - //ImplicationExpression Expression: - // DisjunctiveExpression ({BinaryExpression.left=current} op=ImplicationOperator right=ImplicationExpression)?; - @Override public ParserRule getRule() { return rule; } - - //DisjunctiveExpression ({BinaryExpression.left=current} op=ImplicationOperator right=ImplicationExpression)? - public Group getGroup() { return cGroup; } + //type=[Symbol|QualifiedName]? + public Assignment getTypeAssignment_0() { return cTypeAssignment_0; } - //DisjunctiveExpression - public RuleCall getDisjunctiveExpressionParserRuleCall_0() { return cDisjunctiveExpressionParserRuleCall_0; } + //[Symbol|QualifiedName] + public CrossReference getTypeSymbolCrossReference_0_0() { return cTypeSymbolCrossReference_0_0; } - //({BinaryExpression.left=current} op=ImplicationOperator right=ImplicationExpression)? - public Group getGroup_1() { return cGroup_1; } + //QualifiedName + public RuleCall getTypeSymbolQualifiedNameParserRuleCall_0_0_1() { return cTypeSymbolQualifiedNameParserRuleCall_0_0_1; } - //{BinaryExpression.left=current} - public Action getBinaryExpressionLeftAction_1_0() { return cBinaryExpressionLeftAction_1_0; } + //name=ID + public Assignment getNameAssignment_1() { return cNameAssignment_1; } - //op=ImplicationOperator - public Assignment getOpAssignment_1_1() { return cOpAssignment_1_1; } + //ID + public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; } - //ImplicationOperator - public RuleCall getOpImplicationOperatorEnumRuleCall_1_1_0() { return cOpImplicationOperatorEnumRuleCall_1_1_0; } + //"=" + public Keyword getEqualsSignKeyword_2() { return cEqualsSignKeyword_2; } - //right=ImplicationExpression - public Assignment getRightAssignment_1_2() { return cRightAssignment_1_2; } + //value=AdditiveExpression + public Assignment getValueAssignment_3() { return cValueAssignment_3; } - //ImplicationExpression - public RuleCall getRightImplicationExpressionParserRuleCall_1_2_0() { return cRightImplicationExpressionParserRuleCall_1_2_0; } + //AdditiveExpression + public RuleCall getValueAdditiveExpressionParserRuleCall_3_0() { return cValueAdditiveExpressionParserRuleCall_3_0; } } public class DisjunctiveExpressionElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.DisjunctiveExpression"); @@ -970,27 +1183,27 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Group cGroup = (Group)rule.eContents().get(1); private final RuleCall cAdditiveExpressionParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); private final Group cGroup_1 = (Group)cGroup.eContents().get(1); - private final Action cComparisonLeftAction_1_0 = (Action)cGroup_1.eContents().get(0); + private final Action cBinaryExpressionLeftAction_1_0 = (Action)cGroup_1.eContents().get(0); private final Assignment cOpAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); private final RuleCall cOpComparisonOperatorEnumRuleCall_1_1_0 = (RuleCall)cOpAssignment_1_1.eContents().get(0); private final Assignment cRightAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); private final RuleCall cRightAdditiveExpressionParserRuleCall_1_2_0 = (RuleCall)cRightAssignment_1_2.eContents().get(0); //ComparisonExpression Expression: - // AdditiveExpression ({Comparison.left=current} op=ComparisonOperator right=AdditiveExpression)?; + // AdditiveExpression ({BinaryExpression.left=current} op=ComparisonOperator right=AdditiveExpression)?; @Override public ParserRule getRule() { return rule; } - //AdditiveExpression ({Comparison.left=current} op=ComparisonOperator right=AdditiveExpression)? + //AdditiveExpression ({BinaryExpression.left=current} op=ComparisonOperator right=AdditiveExpression)? public Group getGroup() { return cGroup; } //AdditiveExpression public RuleCall getAdditiveExpressionParserRuleCall_0() { return cAdditiveExpressionParserRuleCall_0; } - //({Comparison.left=current} op=ComparisonOperator right=AdditiveExpression)? + //({BinaryExpression.left=current} op=ComparisonOperator right=AdditiveExpression)? public Group getGroup_1() { return cGroup_1; } - //{Comparison.left=current} - public Action getComparisonLeftAction_1_0() { return cComparisonLeftAction_1_0; } + //{BinaryExpression.left=current} + public Action getBinaryExpressionLeftAction_1_0() { return cBinaryExpressionLeftAction_1_0; } //op=ComparisonOperator public Assignment getOpAssignment_1_1() { return cOpAssignment_1_1; } @@ -1128,21 +1341,21 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Group cGroup_1 = (Group)cGroup.eContents().get(1); private final Action cCastExpressionBodyAction_1_0 = (Action)cGroup_1.eContents().get(0); private final Keyword cAsKeyword_1_1 = (Keyword)cGroup_1.eContents().get(1); - private final Assignment cTypeAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); - private final CrossReference cTypeNamedElementCrossReference_1_2_0 = (CrossReference)cTypeAssignment_1_2.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_2_0.eContents().get(1); + private final Assignment cTargetTypeAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); + private final CrossReference cTargetTypeSymbolCrossReference_1_2_0 = (CrossReference)cTargetTypeAssignment_1_2.eContents().get(0); + private final RuleCall cTargetTypeSymbolQualifiedNameParserRuleCall_1_2_0_1 = (RuleCall)cTargetTypeSymbolCrossReference_1_2_0.eContents().get(1); //CastExpression Expression: - // UnaryExpression ({CastExpression.body=current} "as" type=[NamedElement|QualifiedName])?; + // UnaryExpression ({CastExpression.body=current} "as" targetType=[Symbol|QualifiedName])?; @Override public ParserRule getRule() { return rule; } - //UnaryExpression ({CastExpression.body=current} "as" type=[NamedElement|QualifiedName])? + //UnaryExpression ({CastExpression.body=current} "as" targetType=[Symbol|QualifiedName])? public Group getGroup() { return cGroup; } //UnaryExpression public RuleCall getUnaryExpressionParserRuleCall_0() { return cUnaryExpressionParserRuleCall_0; } - //({CastExpression.body=current} "as" type=[NamedElement|QualifiedName])? + //({CastExpression.body=current} "as" targetType=[Symbol|QualifiedName])? public Group getGroup_1() { return cGroup_1; } //{CastExpression.body=current} @@ -1151,233 +1364,158 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"as" public Keyword getAsKeyword_1_1() { return cAsKeyword_1_1; } - //type=[NamedElement|QualifiedName] - public Assignment getTypeAssignment_1_2() { return cTypeAssignment_1_2; } + //targetType=[Symbol|QualifiedName] + public Assignment getTargetTypeAssignment_1_2() { return cTargetTypeAssignment_1_2; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_2_0() { return cTypeNamedElementCrossReference_1_2_0; } + //[Symbol|QualifiedName] + public CrossReference getTargetTypeSymbolCrossReference_1_2_0() { return cTargetTypeSymbolCrossReference_1_2_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_2_0_1; } + public RuleCall getTargetTypeSymbolQualifiedNameParserRuleCall_1_2_0_1() { return cTargetTypeSymbolQualifiedNameParserRuleCall_1_2_0_1; } } public class UnaryExpressionElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UnaryExpression"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final RuleCall cAggregationExpressionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cBracedAggregateExpressionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); private final Group cGroup_1 = (Group)cAlternatives.eContents().get(1); private final Action cUnaryExpressionAction_1_0 = (Action)cGroup_1.eContents().get(0); private final Assignment cOpAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); - private final RuleCall cOpUnaryOpEnumRuleCall_1_1_0 = (RuleCall)cOpAssignment_1_1.eContents().get(0); + private final RuleCall cOpUnaryOperatorEnumRuleCall_1_1_0 = (RuleCall)cOpAssignment_1_1.eContents().get(0); private final Assignment cBodyAssignment_1_2 = (Assignment)cGroup_1.eContents().get(2); - private final RuleCall cBodyAggregationExpressionParserRuleCall_1_2_0 = (RuleCall)cBodyAssignment_1_2.eContents().get(0); + private final RuleCall cBodyBracedAggregateExpressionParserRuleCall_1_2_0 = (RuleCall)cBodyAssignment_1_2.eContents().get(0); //UnaryExpression Expression: - // AggregationExpression | {UnaryExpression} op=UnaryOp body=AggregationExpression; + // BracedAggregateExpression | {UnaryExpression} op=UnaryOperator body=BracedAggregateExpression; @Override public ParserRule getRule() { return rule; } - //AggregationExpression | {UnaryExpression} op=UnaryOp body=AggregationExpression + //BracedAggregateExpression | {UnaryExpression} op=UnaryOperator body=BracedAggregateExpression public Alternatives getAlternatives() { return cAlternatives; } - //AggregationExpression - public RuleCall getAggregationExpressionParserRuleCall_0() { return cAggregationExpressionParserRuleCall_0; } + //BracedAggregateExpression + public RuleCall getBracedAggregateExpressionParserRuleCall_0() { return cBracedAggregateExpressionParserRuleCall_0; } - //{UnaryExpression} op=UnaryOp body=AggregationExpression + //{UnaryExpression} op=UnaryOperator body=BracedAggregateExpression public Group getGroup_1() { return cGroup_1; } //{UnaryExpression} public Action getUnaryExpressionAction_1_0() { return cUnaryExpressionAction_1_0; } - //op=UnaryOp + //op=UnaryOperator public Assignment getOpAssignment_1_1() { return cOpAssignment_1_1; } - //UnaryOp - public RuleCall getOpUnaryOpEnumRuleCall_1_1_0() { return cOpUnaryOpEnumRuleCall_1_1_0; } + //UnaryOperator + public RuleCall getOpUnaryOperatorEnumRuleCall_1_1_0() { return cOpUnaryOperatorEnumRuleCall_1_1_0; } - //body=AggregationExpression + //body=BracedAggregateExpression public Assignment getBodyAssignment_1_2() { return cBodyAssignment_1_2; } - //AggregationExpression - public RuleCall getBodyAggregationExpressionParserRuleCall_1_2_0() { return cBodyAggregationExpressionParserRuleCall_1_2_0; } + //BracedAggregateExpression + public RuleCall getBodyBracedAggregateExpressionParserRuleCall_1_2_0() { return cBodyBracedAggregateExpressionParserRuleCall_1_2_0; } } - public class AggregationExpressionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.AggregationExpression"); + public class BracedAggregateExpressionElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.BracedAggregateExpression"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); private final RuleCall cAtomicExpressionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); - private final RuleCall cQuantifiedExpressionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); - private final RuleCall cAggregationParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + private final RuleCall cAggregationParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final RuleCall cCountParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); - //AggregationExpression Expression: - // AtomicExpression | QuantifiedExpression | Aggregation; + //BracedAggregateExpression Expression: + // AtomicExpression | Aggregation | Count; @Override public ParserRule getRule() { return rule; } - //AtomicExpression | QuantifiedExpression | Aggregation + //AtomicExpression | Aggregation | Count public Alternatives getAlternatives() { return cAlternatives; } //AtomicExpression public RuleCall getAtomicExpressionParserRuleCall_0() { return cAtomicExpressionParserRuleCall_0; } - //QuantifiedExpression - public RuleCall getQuantifiedExpressionParserRuleCall_1() { return cQuantifiedExpressionParserRuleCall_1; } - //Aggregation - public RuleCall getAggregationParserRuleCall_2() { return cAggregationParserRuleCall_2; } + public RuleCall getAggregationParserRuleCall_1() { return cAggregationParserRuleCall_1; } + + //Count + public RuleCall getCountParserRuleCall_2() { return cCountParserRuleCall_2; } } - public class LocalVariablesElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.LocalVariables"); + public class AggregationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Aggregation"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Action cLocalVariablesAction_0 = (Action)cGroup.eContents().get(0); - private final Keyword cLeftSquareBracketKeyword_1 = (Keyword)cGroup.eContents().get(1); - private final Group cGroup_2 = (Group)cGroup.eContents().get(2); - private final Assignment cVariablesAssignment_2_0 = (Assignment)cGroup_2.eContents().get(0); - private final RuleCall cVariablesVariableParserRuleCall_2_0_0 = (RuleCall)cVariablesAssignment_2_0.eContents().get(0); - private final Group cGroup_2_1 = (Group)cGroup_2.eContents().get(1); - private final Keyword cCommaKeyword_2_1_0 = (Keyword)cGroup_2_1.eContents().get(0); - private final Assignment cVariablesAssignment_2_1_1 = (Assignment)cGroup_2_1.eContents().get(1); - private final RuleCall cVariablesVariableParserRuleCall_2_1_1_0 = (RuleCall)cVariablesAssignment_2_1_1.eContents().get(0); - private final Keyword cRightSquareBracketKeyword_3 = (Keyword)cGroup.eContents().get(3); + private final Assignment cOpAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final CrossReference cOpSymbolCrossReference_0_0 = (CrossReference)cOpAssignment_0.eContents().get(0); + private final RuleCall cOpSymbolQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cOpSymbolCrossReference_0_0.eContents().get(1); + private final Keyword cLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cValueAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cValueExpressionParserRuleCall_2_0 = (RuleCall)cValueAssignment_2.eContents().get(0); + private final Keyword cVerticalLineKeyword_3 = (Keyword)cGroup.eContents().get(3); + private final Assignment cConditionAssignment_4 = (Assignment)cGroup.eContents().get(4); + private final RuleCall cConditionExpressionParserRuleCall_4_0 = (RuleCall)cConditionAssignment_4.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5); - //LocalVariables: - // {LocalVariables} "[" (variables+=Variable ("," variables+=Variable)*)? "]"; + //Aggregation: + // op=[Symbol|QualifiedName] "{" value=Expression "|" condition=Expression "}"; @Override public ParserRule getRule() { return rule; } - //{LocalVariables} "[" (variables+=Variable ("," variables+=Variable)*)? "]" + //op=[Symbol|QualifiedName] "{" value=Expression "|" condition=Expression "}" public Group getGroup() { return cGroup; } - //{LocalVariables} - public Action getLocalVariablesAction_0() { return cLocalVariablesAction_0; } - - //"[" - public Keyword getLeftSquareBracketKeyword_1() { return cLeftSquareBracketKeyword_1; } - - //(variables+=Variable ("," variables+=Variable)*)? - public Group getGroup_2() { return cGroup_2; } - - //variables+=Variable - public Assignment getVariablesAssignment_2_0() { return cVariablesAssignment_2_0; } - - //Variable - public RuleCall getVariablesVariableParserRuleCall_2_0_0() { return cVariablesVariableParserRuleCall_2_0_0; } - - //("," variables+=Variable)* - public Group getGroup_2_1() { return cGroup_2_1; } - - //"," - public Keyword getCommaKeyword_2_1_0() { return cCommaKeyword_2_1_0; } - - //variables+=Variable - public Assignment getVariablesAssignment_2_1_1() { return cVariablesAssignment_2_1_1; } - - //Variable - public RuleCall getVariablesVariableParserRuleCall_2_1_1_0() { return cVariablesVariableParserRuleCall_2_1_1_0; } - - //"]" - public Keyword getRightSquareBracketKeyword_3() { return cRightSquareBracketKeyword_3; } - } - public class QuantifiedExpressionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.QuantifiedExpression"); - private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cQuantifierAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final RuleCall cQuantifierQuantifierEnumRuleCall_0_0 = (RuleCall)cQuantifierAssignment_0.eContents().get(0); - private final Assignment cLocalVariablesAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final RuleCall cLocalVariablesLocalVariablesParserRuleCall_1_0 = (RuleCall)cLocalVariablesAssignment_1.eContents().get(0); - private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); - private final Assignment cBodyAssignment_3 = (Assignment)cGroup.eContents().get(3); - private final RuleCall cBodyExpressionParserRuleCall_3_0 = (RuleCall)cBodyAssignment_3.eContents().get(0); - private final Keyword cRightCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4); - - //QuantifiedExpression: - // quantifier=Quantifier localVariables=LocalVariables? "{" body=Expression "}"; - @Override public ParserRule getRule() { return rule; } + //op=[Symbol|QualifiedName] + public Assignment getOpAssignment_0() { return cOpAssignment_0; } - //quantifier=Quantifier localVariables=LocalVariables? "{" body=Expression "}" - public Group getGroup() { return cGroup; } + //[Symbol|QualifiedName] + public CrossReference getOpSymbolCrossReference_0_0() { return cOpSymbolCrossReference_0_0; } - //quantifier=Quantifier - public Assignment getQuantifierAssignment_0() { return cQuantifierAssignment_0; } + //QualifiedName + public RuleCall getOpSymbolQualifiedNameParserRuleCall_0_0_1() { return cOpSymbolQualifiedNameParserRuleCall_0_0_1; } - //Quantifier - public RuleCall getQuantifierQuantifierEnumRuleCall_0_0() { return cQuantifierQuantifierEnumRuleCall_0_0; } + //"{" + public Keyword getLeftCurlyBracketKeyword_1() { return cLeftCurlyBracketKeyword_1; } - //localVariables=LocalVariables? - public Assignment getLocalVariablesAssignment_1() { return cLocalVariablesAssignment_1; } + //value=Expression + public Assignment getValueAssignment_2() { return cValueAssignment_2; } - //LocalVariables - public RuleCall getLocalVariablesLocalVariablesParserRuleCall_1_0() { return cLocalVariablesLocalVariablesParserRuleCall_1_0; } + //Expression + public RuleCall getValueExpressionParserRuleCall_2_0() { return cValueExpressionParserRuleCall_2_0; } - //"{" - public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; } + //"|" + public Keyword getVerticalLineKeyword_3() { return cVerticalLineKeyword_3; } - //body=Expression - public Assignment getBodyAssignment_3() { return cBodyAssignment_3; } + //condition=Expression + public Assignment getConditionAssignment_4() { return cConditionAssignment_4; } //Expression - public RuleCall getBodyExpressionParserRuleCall_3_0() { return cBodyExpressionParserRuleCall_3_0; } + public RuleCall getConditionExpressionParserRuleCall_4_0() { return cConditionExpressionParserRuleCall_4_0; } //"}" - public Keyword getRightCurlyBracketKeyword_4() { return cRightCurlyBracketKeyword_4; } + public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; } } - public class AggregationElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Aggregation"); + public class CountElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Count"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cOpAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final CrossReference cOpNamedElementCrossReference_0_0 = (CrossReference)cOpAssignment_0.eContents().get(0); - private final RuleCall cOpNamedElementQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cOpNamedElementCrossReference_0_0.eContents().get(1); - private final Assignment cLocalVariablesAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final RuleCall cLocalVariablesLocalVariablesParserRuleCall_1_0 = (RuleCall)cLocalVariablesAssignment_1.eContents().get(0); - private final Keyword cLeftCurlyBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); - private final Assignment cBodyAssignment_3 = (Assignment)cGroup.eContents().get(3); - private final RuleCall cBodyExpressionParserRuleCall_3_0 = (RuleCall)cBodyAssignment_3.eContents().get(0); - private final Group cGroup_4 = (Group)cGroup.eContents().get(4); - private final Keyword cVerticalLineKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0); - private final Assignment cConditionAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1); - private final RuleCall cConditionExpressionParserRuleCall_4_1_0 = (RuleCall)cConditionAssignment_4_1.eContents().get(0); - private final Keyword cRightCurlyBracketKeyword_5 = (Keyword)cGroup.eContents().get(5); - - //Aggregation: - // op=[NamedElement|QualifiedName] localVariables=LocalVariables? "{" body=Expression ("|" condition=Expression)? "}"; + private final Keyword cCountKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Keyword cLeftCurlyBracketKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final Assignment cConditionAssignment_2 = (Assignment)cGroup.eContents().get(2); + private final RuleCall cConditionExpressionParserRuleCall_2_0 = (RuleCall)cConditionAssignment_2.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_3 = (Keyword)cGroup.eContents().get(3); + + //Count: + // "count" "{" condition=Expression "}"; @Override public ParserRule getRule() { return rule; } - //op=[NamedElement|QualifiedName] localVariables=LocalVariables? "{" body=Expression ("|" condition=Expression)? "}" + //"count" "{" condition=Expression "}" public Group getGroup() { return cGroup; } - //op=[NamedElement|QualifiedName] - public Assignment getOpAssignment_0() { return cOpAssignment_0; } - - //[NamedElement|QualifiedName] - public CrossReference getOpNamedElementCrossReference_0_0() { return cOpNamedElementCrossReference_0_0; } - - //QualifiedName - public RuleCall getOpNamedElementQualifiedNameParserRuleCall_0_0_1() { return cOpNamedElementQualifiedNameParserRuleCall_0_0_1; } - - //localVariables=LocalVariables? - public Assignment getLocalVariablesAssignment_1() { return cLocalVariablesAssignment_1; } - - //LocalVariables - public RuleCall getLocalVariablesLocalVariablesParserRuleCall_1_0() { return cLocalVariablesLocalVariablesParserRuleCall_1_0; } + //"count" + public Keyword getCountKeyword_0() { return cCountKeyword_0; } //"{" - public Keyword getLeftCurlyBracketKeyword_2() { return cLeftCurlyBracketKeyword_2; } - - //body=Expression - public Assignment getBodyAssignment_3() { return cBodyAssignment_3; } - - //Expression - public RuleCall getBodyExpressionParserRuleCall_3_0() { return cBodyExpressionParserRuleCall_3_0; } - - //("|" condition=Expression)? - public Group getGroup_4() { return cGroup_4; } - - //"|" - public Keyword getVerticalLineKeyword_4_0() { return cVerticalLineKeyword_4_0; } + public Keyword getLeftCurlyBracketKeyword_1() { return cLeftCurlyBracketKeyword_1; } //condition=Expression - public Assignment getConditionAssignment_4_1() { return cConditionAssignment_4_1; } + public Assignment getConditionAssignment_2() { return cConditionAssignment_2; } //Expression - public RuleCall getConditionExpressionParserRuleCall_4_1_0() { return cConditionExpressionParserRuleCall_4_1_0; } + public RuleCall getConditionExpressionParserRuleCall_2_0() { return cConditionExpressionParserRuleCall_2_0; } //"}" - public Keyword getRightCurlyBracketKeyword_5() { return cRightCurlyBracketKeyword_5; } + public Keyword getRightCurlyBracketKeyword_3() { return cRightCurlyBracketKeyword_3; } } public class AtomicExpressionElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.AtomicExpression"); @@ -1427,21 +1565,14 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Group cGroup = (Group)rule.eContents().get(1); private final Assignment cFunctorAssignment_0 = (Assignment)cGroup.eContents().get(0); private final RuleCall cFunctorReferenceParserRuleCall_0_0 = (RuleCall)cFunctorAssignment_0.eContents().get(0); - private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1); - private final Assignment cTransitiveClosureAssignment_1_0 = (Assignment)cAlternatives_1.eContents().get(0); - private final RuleCall cTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0 = (RuleCall)cTransitiveClosureAssignment_1_0.eContents().get(0); - private final Assignment cReflexiveTransitiveClosureAssignment_1_1 = (Assignment)cAlternatives_1.eContents().get(1); - private final RuleCall cReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0 = (RuleCall)cReflexiveTransitiveClosureAssignment_1_1.eContents().get(0); - private final Assignment cArgumentListAssignment_2 = (Assignment)cGroup.eContents().get(2); - private final RuleCall cArgumentListArgumentListParserRuleCall_2_0 = (RuleCall)cArgumentListAssignment_2.eContents().get(0); + private final Assignment cArgumentListAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cArgumentListArgumentListParserRuleCall_1_0 = (RuleCall)cArgumentListAssignment_1.eContents().get(0); //Call: - // functor=Reference (transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? - // argumentList=ArgumentList; + // functor=Reference argumentList=ArgumentList; @Override public ParserRule getRule() { return rule; } - //functor=Reference (transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? - //argumentList=ArgumentList + //functor=Reference argumentList=ArgumentList public Group getGroup() { return cGroup; } //functor=Reference @@ -1450,26 +1581,11 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //Reference public RuleCall getFunctorReferenceParserRuleCall_0_0() { return cFunctorReferenceParserRuleCall_0_0; } - //(transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? - public Alternatives getAlternatives_1() { return cAlternatives_1; } - - //transitiveClosure?=TRANSITIVE_CLOSURE - public Assignment getTransitiveClosureAssignment_1_0() { return cTransitiveClosureAssignment_1_0; } - - //TRANSITIVE_CLOSURE - public RuleCall getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0() { return cTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_1_0_0; } - - //reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE - public Assignment getReflexiveTransitiveClosureAssignment_1_1() { return cReflexiveTransitiveClosureAssignment_1_1; } - - //REFLEXIVE_TRANSITIVE_CLOSURE - public RuleCall getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0() { return cReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_1_1_0; } - //argumentList=ArgumentList - public Assignment getArgumentListAssignment_2() { return cArgumentListAssignment_2; } + public Assignment getArgumentListAssignment_1() { return cArgumentListAssignment_1; } //ArgumentList - public RuleCall getArgumentListArgumentListParserRuleCall_2_0() { return cArgumentListArgumentListParserRuleCall_2_0; } + public RuleCall getArgumentListArgumentListParserRuleCall_1_0() { return cArgumentListArgumentListParserRuleCall_1_0; } } public class ArgumentListElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ArgumentList"); @@ -1527,14 +1643,14 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); private final RuleCall cExpressionArgumentParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); private final RuleCall cStarArgumentParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); - private final RuleCall cTypedArgumentParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + private final RuleCall cTypedVariableArgumentParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); private final RuleCall cTypedStarArgumentParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3); //Argument: - // ExpressionArgument | StarArgument | TypedArgument | TypedStarArgument; + // ExpressionArgument | StarArgument | TypedVariableArgument | TypedStarArgument; @Override public ParserRule getRule() { return rule; } - //ExpressionArgument | StarArgument | TypedArgument | TypedStarArgument + //ExpressionArgument | StarArgument | TypedVariableArgument | TypedStarArgument public Alternatives getAlternatives() { return cAlternatives; } //ExpressionArgument @@ -1543,26 +1659,26 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //StarArgument public RuleCall getStarArgumentParserRuleCall_1() { return cStarArgumentParserRuleCall_1; } - //TypedArgument - public RuleCall getTypedArgumentParserRuleCall_2() { return cTypedArgumentParserRuleCall_2; } + //TypedVariableArgument + public RuleCall getTypedVariableArgumentParserRuleCall_2() { return cTypedVariableArgumentParserRuleCall_2; } //TypedStarArgument public RuleCall getTypedStarArgumentParserRuleCall_3() { return cTypedStarArgumentParserRuleCall_3; } } public class ExpressionArgumentElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExpressionArgument"); - private final Assignment cBodyAssignment = (Assignment)rule.eContents().get(1); - private final RuleCall cBodyComparisonExpressionParserRuleCall_0 = (RuleCall)cBodyAssignment.eContents().get(0); + private final Assignment cExpressionAssignment = (Assignment)rule.eContents().get(1); + private final RuleCall cExpressionComparisonExpressionParserRuleCall_0 = (RuleCall)cExpressionAssignment.eContents().get(0); //ExpressionArgument: - // body=ComparisonExpression; + // expression=ComparisonExpression; @Override public ParserRule getRule() { return rule; } - //body=ComparisonExpression - public Assignment getBodyAssignment() { return cBodyAssignment; } + //expression=ComparisonExpression + public Assignment getExpressionAssignment() { return cExpressionAssignment; } //ComparisonExpression - public RuleCall getBodyComparisonExpressionParserRuleCall_0() { return cBodyComparisonExpressionParserRuleCall_0; } + public RuleCall getExpressionComparisonExpressionParserRuleCall_0() { return cExpressionComparisonExpressionParserRuleCall_0; } } public class StarArgumentElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.StarArgument"); @@ -1583,122 +1699,179 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"*" public Keyword getAsteriskKeyword_1() { return cAsteriskKeyword_1; } } - public class TypedArgumentElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.TypedArgument"); + public class TypedVariableArgumentElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.TypedVariableArgument"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cTypeAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final CrossReference cTypeNamedElementCrossReference_0_0 = (CrossReference)cTypeAssignment_0.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cTypeNamedElementCrossReference_0_0.eContents().get(1); - private final Assignment cVariableAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final CrossReference cVariableNamedElementCrossReference_1_0 = (CrossReference)cVariableAssignment_1.eContents().get(0); - private final RuleCall cVariableNamedElementQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cVariableNamedElementCrossReference_1_0.eContents().get(1); + private final Assignment cTypeReferenceAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final RuleCall cTypeReferenceTypeReferenceParserRuleCall_0_0 = (RuleCall)cTypeReferenceAssignment_0.eContents().get(0); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); - //TypedArgument: - // type=[NamedElement|QualifiedName] variable=[NamedElement|QualifiedName]; + //TypedVariableArgument: + // typeReference=TypeReference name=ID; @Override public ParserRule getRule() { return rule; } - //type=[NamedElement|QualifiedName] variable=[NamedElement|QualifiedName] + //typeReference=TypeReference name=ID public Group getGroup() { return cGroup; } - //type=[NamedElement|QualifiedName] - public Assignment getTypeAssignment_0() { return cTypeAssignment_0; } - - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_0_0() { return cTypeNamedElementCrossReference_0_0; } - - //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_0_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_0_0_1; } + //typeReference=TypeReference + public Assignment getTypeReferenceAssignment_0() { return cTypeReferenceAssignment_0; } - //variable=[NamedElement|QualifiedName] - public Assignment getVariableAssignment_1() { return cVariableAssignment_1; } + //TypeReference + public RuleCall getTypeReferenceTypeReferenceParserRuleCall_0_0() { return cTypeReferenceTypeReferenceParserRuleCall_0_0; } - //[NamedElement|QualifiedName] - public CrossReference getVariableNamedElementCrossReference_1_0() { return cVariableNamedElementCrossReference_1_0; } + //name=ID + public Assignment getNameAssignment_1() { return cNameAssignment_1; } - //QualifiedName - public RuleCall getVariableNamedElementQualifiedNameParserRuleCall_1_0_1() { return cVariableNamedElementQualifiedNameParserRuleCall_1_0_1; } + //ID + public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; } } public class TypedStarArgumentElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.TypedStarArgument"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cTypeAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final CrossReference cTypeNamedElementCrossReference_0_0 = (CrossReference)cTypeAssignment_0.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_0_0_1 = (RuleCall)cTypeNamedElementCrossReference_0_0.eContents().get(1); + private final Assignment cTypeReferenceAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final RuleCall cTypeReferenceTypeReferenceParserRuleCall_0_0 = (RuleCall)cTypeReferenceAssignment_0.eContents().get(0); private final Keyword cAsteriskKeyword_1 = (Keyword)cGroup.eContents().get(1); //TypedStarArgument: - // type=[NamedElement|QualifiedName] "*"; + // typeReference=TypeReference "*"; @Override public ParserRule getRule() { return rule; } - //type=[NamedElement|QualifiedName] "*" + //typeReference=TypeReference "*" public Group getGroup() { return cGroup; } - //type=[NamedElement|QualifiedName] - public Assignment getTypeAssignment_0() { return cTypeAssignment_0; } - - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_0_0() { return cTypeNamedElementCrossReference_0_0; } + //typeReference=TypeReference + public Assignment getTypeReferenceAssignment_0() { return cTypeReferenceAssignment_0; } - //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_0_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_0_0_1; } + //TypeReference + public RuleCall getTypeReferenceTypeReferenceParserRuleCall_0_0() { return cTypeReferenceTypeReferenceParserRuleCall_0_0; } //"*" public Keyword getAsteriskKeyword_1() { return cAsteriskKeyword_1; } } public class ReferenceElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Reference"); - private final Assignment cReferredAssignment = (Assignment)rule.eContents().get(1); - private final CrossReference cReferredNamedElementCrossReference_0 = (CrossReference)cReferredAssignment.eContents().get(0); - private final RuleCall cReferredNamedElementQualifiedNameParserRuleCall_0_1 = (RuleCall)cReferredNamedElementCrossReference_0.eContents().get(1); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cComponentsAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final RuleCall cComponentsPathComponentParserRuleCall_0_0 = (RuleCall)cComponentsAssignment_0.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0); + private final Assignment cComponentsAssignment_1_1 = (Assignment)cGroup_1.eContents().get(1); + private final RuleCall cComponentsPathComponentParserRuleCall_1_1_0 = (RuleCall)cComponentsAssignment_1_1.eContents().get(0); //Reference: - // referred=[NamedElement|QualifiedName]; + // components+=PathComponent ("." components+=PathComponent)*; + @Override public ParserRule getRule() { return rule; } + + //components+=PathComponent ("." components+=PathComponent)* + public Group getGroup() { return cGroup; } + + //components+=PathComponent + public Assignment getComponentsAssignment_0() { return cComponentsAssignment_0; } + + //PathComponent + public RuleCall getComponentsPathComponentParserRuleCall_0_0() { return cComponentsPathComponentParserRuleCall_0_0; } + + //("." components+=PathComponent)* + public Group getGroup_1() { return cGroup_1; } + + //"." + public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; } + + //components+=PathComponent + public Assignment getComponentsAssignment_1_1() { return cComponentsAssignment_1_1; } + + //PathComponent + public RuleCall getComponentsPathComponentParserRuleCall_1_1_0() { return cComponentsPathComponentParserRuleCall_1_1_0; } + } + public class PathComponentElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.PathComponent"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Assignment cInverseAssignment_0 = (Assignment)cGroup.eContents().get(0); + private final Keyword cInverseTildeKeyword_0_0 = (Keyword)cInverseAssignment_0.eContents().get(0); + private final Assignment cSymbolAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final CrossReference cSymbolSymbolCrossReference_1_0 = (CrossReference)cSymbolAssignment_1.eContents().get(0); + private final RuleCall cSymbolSymbolQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cSymbolSymbolCrossReference_1_0.eContents().get(1); + private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2); + private final Assignment cTransitiveClosureAssignment_2_0 = (Assignment)cAlternatives_2.eContents().get(0); + private final RuleCall cTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0 = (RuleCall)cTransitiveClosureAssignment_2_0.eContents().get(0); + private final Assignment cReflexiveTransitiveClosureAssignment_2_1 = (Assignment)cAlternatives_2.eContents().get(1); + private final RuleCall cReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0 = (RuleCall)cReflexiveTransitiveClosureAssignment_2_1.eContents().get(0); + + //PathComponent: + // inverse?="~"? symbol=[Symbol|QualifiedName] (transitiveClosure?=TRANSITIVE_CLOSURE | + // reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)?; @Override public ParserRule getRule() { return rule; } - //referred=[NamedElement|QualifiedName] - public Assignment getReferredAssignment() { return cReferredAssignment; } + //inverse?="~"? symbol=[Symbol|QualifiedName] (transitiveClosure?=TRANSITIVE_CLOSURE | + //reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? + public Group getGroup() { return cGroup; } + + //inverse?="~"? + public Assignment getInverseAssignment_0() { return cInverseAssignment_0; } + + //"~" + public Keyword getInverseTildeKeyword_0_0() { return cInverseTildeKeyword_0_0; } - //[NamedElement|QualifiedName] - public CrossReference getReferredNamedElementCrossReference_0() { return cReferredNamedElementCrossReference_0; } + //symbol=[Symbol|QualifiedName] + public Assignment getSymbolAssignment_1() { return cSymbolAssignment_1; } + + //[Symbol|QualifiedName] + public CrossReference getSymbolSymbolCrossReference_1_0() { return cSymbolSymbolCrossReference_1_0; } //QualifiedName - public RuleCall getReferredNamedElementQualifiedNameParserRuleCall_0_1() { return cReferredNamedElementQualifiedNameParserRuleCall_0_1; } + public RuleCall getSymbolSymbolQualifiedNameParserRuleCall_1_0_1() { return cSymbolSymbolQualifiedNameParserRuleCall_1_0_1; } + + //(transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? + public Alternatives getAlternatives_2() { return cAlternatives_2; } + + //transitiveClosure?=TRANSITIVE_CLOSURE + public Assignment getTransitiveClosureAssignment_2_0() { return cTransitiveClosureAssignment_2_0; } + + //TRANSITIVE_CLOSURE + public RuleCall getTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0() { return cTransitiveClosureTRANSITIVE_CLOSURETerminalRuleCall_2_0_0; } + + //reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE + public Assignment getReflexiveTransitiveClosureAssignment_2_1() { return cReflexiveTransitiveClosureAssignment_2_1; } + + //REFLEXIVE_TRANSITIVE_CLOSURE + public RuleCall getReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0() { return cReflexiveTransitiveClosureREFLEXIVE_TRANSITIVE_CLOSURETerminalRuleCall_2_1_0; } } public class IntervalElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Interval"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cLeftSquareBracketKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Assignment cLowerBoundAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final RuleCall cLowerBoundExpressionParserRuleCall_1_0 = (RuleCall)cLowerBoundAssignment_1.eContents().get(0); - private final Keyword cFullStopFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final RuleCall cLowerBoundAdditiveExpressionParserRuleCall_1_0 = (RuleCall)cLowerBoundAssignment_1.eContents().get(0); + private final Keyword cCommaKeyword_2 = (Keyword)cGroup.eContents().get(2); private final Assignment cUpperBoundAssignment_3 = (Assignment)cGroup.eContents().get(3); - private final RuleCall cUpperBoundExpressionParserRuleCall_3_0 = (RuleCall)cUpperBoundAssignment_3.eContents().get(0); + private final RuleCall cUpperBoundAdditiveExpressionParserRuleCall_3_0 = (RuleCall)cUpperBoundAssignment_3.eContents().get(0); private final Keyword cRightSquareBracketKeyword_4 = (Keyword)cGroup.eContents().get(4); //Interval: - // "[" lowerBound=Expression ".." upperBound=Expression "]"; + // "[" lowerBound=AdditiveExpression "," upperBound=AdditiveExpression "]"; @Override public ParserRule getRule() { return rule; } - //"[" lowerBound=Expression ".." upperBound=Expression "]" + //"[" lowerBound=AdditiveExpression "," upperBound=AdditiveExpression "]" public Group getGroup() { return cGroup; } //"[" public Keyword getLeftSquareBracketKeyword_0() { return cLeftSquareBracketKeyword_0; } - //lowerBound=Expression + //lowerBound=AdditiveExpression public Assignment getLowerBoundAssignment_1() { return cLowerBoundAssignment_1; } - //Expression - public RuleCall getLowerBoundExpressionParserRuleCall_1_0() { return cLowerBoundExpressionParserRuleCall_1_0; } + //AdditiveExpression + public RuleCall getLowerBoundAdditiveExpressionParserRuleCall_1_0() { return cLowerBoundAdditiveExpressionParserRuleCall_1_0; } - //".." - public Keyword getFullStopFullStopKeyword_2() { return cFullStopFullStopKeyword_2; } + //"," + public Keyword getCommaKeyword_2() { return cCommaKeyword_2; } - //upperBound=Expression + //upperBound=AdditiveExpression public Assignment getUpperBoundAssignment_3() { return cUpperBoundAssignment_3; } - //Expression - public RuleCall getUpperBoundExpressionParserRuleCall_3_0() { return cUpperBoundExpressionParserRuleCall_3_0; } + //AdditiveExpression + public RuleCall getUpperBoundAdditiveExpressionParserRuleCall_3_0() { return cUpperBoundAdditiveExpressionParserRuleCall_3_0; } //"]" public Keyword getRightSquareBracketKeyword_4() { return cRightSquareBracketKeyword_4; } @@ -1707,32 +1880,36 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Literal"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); private final RuleCall cLogicLiteralParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); - private final RuleCall cNumericLiteralParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); - private final RuleCall cInfinityLiteralParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); - private final RuleCall cEmptyIntervalLiteralParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3); - private final RuleCall cStringLiteralParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4); + private final RuleCall cIntLiteralParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final RuleCall cRealLiteralParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + private final RuleCall cInfinityLiteralParserRuleCall_3 = (RuleCall)cAlternatives.eContents().get(3); + private final RuleCall cEmptyLiteralParserRuleCall_4 = (RuleCall)cAlternatives.eContents().get(4); + private final RuleCall cStringLiteralParserRuleCall_5 = (RuleCall)cAlternatives.eContents().get(5); //Literal: - // LogicLiteral | NumericLiteral | InfinityLiteral | EmptyIntervalLiteral | StringLiteral; + // LogicLiteral | IntLiteral | RealLiteral | InfinityLiteral | EmptyLiteral | StringLiteral; @Override public ParserRule getRule() { return rule; } - //LogicLiteral | NumericLiteral | InfinityLiteral | EmptyIntervalLiteral | StringLiteral + //LogicLiteral | IntLiteral | RealLiteral | InfinityLiteral | EmptyLiteral | StringLiteral public Alternatives getAlternatives() { return cAlternatives; } //LogicLiteral public RuleCall getLogicLiteralParserRuleCall_0() { return cLogicLiteralParserRuleCall_0; } - //NumericLiteral - public RuleCall getNumericLiteralParserRuleCall_1() { return cNumericLiteralParserRuleCall_1; } + //IntLiteral + public RuleCall getIntLiteralParserRuleCall_1() { return cIntLiteralParserRuleCall_1; } + + //RealLiteral + public RuleCall getRealLiteralParserRuleCall_2() { return cRealLiteralParserRuleCall_2; } //InfinityLiteral - public RuleCall getInfinityLiteralParserRuleCall_2() { return cInfinityLiteralParserRuleCall_2; } + public RuleCall getInfinityLiteralParserRuleCall_3() { return cInfinityLiteralParserRuleCall_3; } - //EmptyIntervalLiteral - public RuleCall getEmptyIntervalLiteralParserRuleCall_3() { return cEmptyIntervalLiteralParserRuleCall_3; } + //EmptyLiteral + public RuleCall getEmptyLiteralParserRuleCall_4() { return cEmptyLiteralParserRuleCall_4; } //StringLiteral - public RuleCall getStringLiteralParserRuleCall_4() { return cStringLiteralParserRuleCall_4; } + public RuleCall getStringLiteralParserRuleCall_5() { return cStringLiteralParserRuleCall_5; } } public class LogicLiteralElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.LogicLiteral"); @@ -1749,12 +1926,27 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //LogicValue public RuleCall getValueLogicValueEnumRuleCall_0() { return cValueLogicValueEnumRuleCall_0; } } - public class NumericLiteralElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.NumericLiteral"); + public class IntLiteralElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.IntLiteral"); + private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1); + private final RuleCall cValueINTTerminalRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0); + + //IntLiteral: + // value=INT; + @Override public ParserRule getRule() { return rule; } + + //value=INT + public Assignment getValueAssignment() { return cValueAssignment; } + + //INT + public RuleCall getValueINTTerminalRuleCall_0() { return cValueINTTerminalRuleCall_0; } + } + public class RealLiteralElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.RealLiteral"); private final Assignment cValueAssignment = (Assignment)rule.eContents().get(1); private final RuleCall cValueRealParserRuleCall_0 = (RuleCall)cValueAssignment.eContents().get(0); - //NumericLiteral: + //RealLiteral: // value=Real; @Override public ParserRule getRule() { return rule; } @@ -1783,21 +1975,21 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"inf" public Keyword getInfKeyword_1() { return cInfKeyword_1; } } - public class EmptyIntervalLiteralElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.EmptyIntervalLiteral"); + public class EmptyLiteralElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.EmptyLiteral"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Action cEmptyIntervalLiteralAction_0 = (Action)cGroup.eContents().get(0); + private final Action cEmptyLiteralAction_0 = (Action)cGroup.eContents().get(0); private final Keyword cEmptyKeyword_1 = (Keyword)cGroup.eContents().get(1); - //EmptyIntervalLiteral: - // {EmptyIntervalLiteral} "empty"; + //EmptyLiteral: + // {EmptyLiteral} "empty"; @Override public ParserRule getRule() { return rule; } - //{EmptyIntervalLiteral} "empty" + //{EmptyLiteral} "empty" public Group getGroup() { return cGroup; } - //{EmptyIntervalLiteral} - public Action getEmptyIntervalLiteralAction_0() { return cEmptyIntervalLiteralAction_0; } + //{EmptyLiteral} + public Action getEmptyLiteralAction_0() { return cEmptyLiteralAction_0; } //"empty" public Keyword getEmptyKeyword_1() { return cEmptyKeyword_1; } @@ -1817,44 +2009,58 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //STRING public RuleCall getValueSTRINGTerminalRuleCall_0() { return cValueSTRINGTerminalRuleCall_0; } } - public class ClassDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ClassDefinition"); + public class ClassDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ClassDeclaration"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cAbstractAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final Keyword cAbstractAbstractKeyword_0_0 = (Keyword)cAbstractAssignment_0.eContents().get(0); + private final UnorderedGroup cUnorderedGroup_0 = (UnorderedGroup)cGroup.eContents().get(0); + private final Assignment cAbstractAssignment_0_0 = (Assignment)cUnorderedGroup_0.eContents().get(0); + private final Keyword cAbstractAbstractKeyword_0_0_0 = (Keyword)cAbstractAssignment_0_0.eContents().get(0); + private final Assignment cRootAssignment_0_1 = (Assignment)cUnorderedGroup_0.eContents().get(1); + private final Keyword cRootRootKeyword_0_1_0 = (Keyword)cRootAssignment_0_1.eContents().get(0); private final Keyword cClassKeyword_1 = (Keyword)cGroup.eContents().get(1); private final Assignment cNameAssignment_2 = (Assignment)cGroup.eContents().get(2); private final RuleCall cNameIDTerminalRuleCall_2_0 = (RuleCall)cNameAssignment_2.eContents().get(0); private final Group cGroup_3 = (Group)cGroup.eContents().get(3); private final Keyword cExtendsKeyword_3_0 = (Keyword)cGroup_3.eContents().get(0); - private final Assignment cSuperclassesAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1); - private final CrossReference cSuperclassesNamedElementCrossReference_3_1_0 = (CrossReference)cSuperclassesAssignment_3_1.eContents().get(0); - private final RuleCall cSuperclassesNamedElementQualifiedNameParserRuleCall_3_1_0_1 = (RuleCall)cSuperclassesNamedElementCrossReference_3_1_0.eContents().get(1); + private final Assignment cSupertypesAssignment_3_1 = (Assignment)cGroup_3.eContents().get(1); + private final CrossReference cSupertypesSymbolCrossReference_3_1_0 = (CrossReference)cSupertypesAssignment_3_1.eContents().get(0); + private final RuleCall cSupertypesSymbolQualifiedNameParserRuleCall_3_1_0_1 = (RuleCall)cSupertypesSymbolCrossReference_3_1_0.eContents().get(1); private final Group cGroup_3_2 = (Group)cGroup_3.eContents().get(2); private final Keyword cCommaKeyword_3_2_0 = (Keyword)cGroup_3_2.eContents().get(0); - private final Assignment cSuperclassesAssignment_3_2_1 = (Assignment)cGroup_3_2.eContents().get(1); - private final CrossReference cSuperclassesNamedElementCrossReference_3_2_1_0 = (CrossReference)cSuperclassesAssignment_3_2_1.eContents().get(0); - private final RuleCall cSuperclassesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1 = (RuleCall)cSuperclassesNamedElementCrossReference_3_2_1_0.eContents().get(1); - private final Keyword cLeftCurlyBracketKeyword_4 = (Keyword)cGroup.eContents().get(4); - private final Assignment cMembersAssignment_5 = (Assignment)cGroup.eContents().get(5); - private final RuleCall cMembersMemberDefinitionParserRuleCall_5_0 = (RuleCall)cMembersAssignment_5.eContents().get(0); - private final Keyword cRightCurlyBracketKeyword_6 = (Keyword)cGroup.eContents().get(6); - - //ClassDefinition: - // abstract?="abstract"? "class" name=ID ("extends" superclasses+=[NamedElement|QualifiedName] ("," - // superclasses+=[NamedElement|QualifiedName])*)? - // "{" members+=MemberDefinition* "}"; + private final Assignment cSupertypesAssignment_3_2_1 = (Assignment)cGroup_3_2.eContents().get(1); + private final CrossReference cSupertypesSymbolCrossReference_3_2_1_0 = (CrossReference)cSupertypesAssignment_3_2_1.eContents().get(0); + private final RuleCall cSupertypesSymbolQualifiedNameParserRuleCall_3_2_1_0_1 = (RuleCall)cSupertypesSymbolCrossReference_3_2_1_0.eContents().get(1); + private final Alternatives cAlternatives_4 = (Alternatives)cGroup.eContents().get(4); + private final Group cGroup_4_0 = (Group)cAlternatives_4.eContents().get(0); + private final Keyword cLeftCurlyBracketKeyword_4_0_0 = (Keyword)cGroup_4_0.eContents().get(0); + private final Assignment cFieldsAssignment_4_0_1 = (Assignment)cGroup_4_0.eContents().get(1); + private final RuleCall cFieldsFieldParserRuleCall_4_0_1_0 = (RuleCall)cFieldsAssignment_4_0_1.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_4_0_2 = (Keyword)cGroup_4_0.eContents().get(2); + private final RuleCall cFULL_STOPTerminalRuleCall_4_1 = (RuleCall)cAlternatives_4.eContents().get(1); + + //ClassDeclaration: + // (abstract?="abstract"? & root?="root"?) "class" name=ID ("extends" supertypes+=[Symbol|QualifiedName] ("," + // supertypes+=[Symbol|QualifiedName])*)? ("{" fields+=Field* "}" | FULL_STOP); @Override public ParserRule getRule() { return rule; } - //abstract?="abstract"? "class" name=ID ("extends" superclasses+=[NamedElement|QualifiedName] ("," - //superclasses+=[NamedElement|QualifiedName])*)? "{" members+=MemberDefinition* "}" + //(abstract?="abstract"? & root?="root"?) "class" name=ID ("extends" supertypes+=[Symbol|QualifiedName] ("," + //supertypes+=[Symbol|QualifiedName])*)? ("{" fields+=Field* "}" | FULL_STOP) public Group getGroup() { return cGroup; } + //(abstract?="abstract"? & root?="root"?) + public UnorderedGroup getUnorderedGroup_0() { return cUnorderedGroup_0; } + //abstract?="abstract"? - public Assignment getAbstractAssignment_0() { return cAbstractAssignment_0; } + public Assignment getAbstractAssignment_0_0() { return cAbstractAssignment_0_0; } //"abstract" - public Keyword getAbstractAbstractKeyword_0_0() { return cAbstractAbstractKeyword_0_0; } + public Keyword getAbstractAbstractKeyword_0_0_0() { return cAbstractAbstractKeyword_0_0_0; } + + //root?="root"? + public Assignment getRootAssignment_0_1() { return cRootAssignment_0_1; } + + //"root" + public Keyword getRootRootKeyword_0_1_0() { return cRootRootKeyword_0_1_0; } //"class" public Keyword getClassKeyword_1() { return cClassKeyword_1; } @@ -1865,56 +2071,68 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //ID public RuleCall getNameIDTerminalRuleCall_2_0() { return cNameIDTerminalRuleCall_2_0; } - //("extends" superclasses+=[NamedElement|QualifiedName] ("," superclasses+=[NamedElement|QualifiedName])*)? + //("extends" supertypes+=[Symbol|QualifiedName] ("," supertypes+=[Symbol|QualifiedName])*)? public Group getGroup_3() { return cGroup_3; } //"extends" public Keyword getExtendsKeyword_3_0() { return cExtendsKeyword_3_0; } - //superclasses+=[NamedElement|QualifiedName] - public Assignment getSuperclassesAssignment_3_1() { return cSuperclassesAssignment_3_1; } + //supertypes+=[Symbol|QualifiedName] + public Assignment getSupertypesAssignment_3_1() { return cSupertypesAssignment_3_1; } - //[NamedElement|QualifiedName] - public CrossReference getSuperclassesNamedElementCrossReference_3_1_0() { return cSuperclassesNamedElementCrossReference_3_1_0; } + //[Symbol|QualifiedName] + public CrossReference getSupertypesSymbolCrossReference_3_1_0() { return cSupertypesSymbolCrossReference_3_1_0; } //QualifiedName - public RuleCall getSuperclassesNamedElementQualifiedNameParserRuleCall_3_1_0_1() { return cSuperclassesNamedElementQualifiedNameParserRuleCall_3_1_0_1; } + public RuleCall getSupertypesSymbolQualifiedNameParserRuleCall_3_1_0_1() { return cSupertypesSymbolQualifiedNameParserRuleCall_3_1_0_1; } - //("," superclasses+=[NamedElement|QualifiedName])* + //("," supertypes+=[Symbol|QualifiedName])* public Group getGroup_3_2() { return cGroup_3_2; } //"," public Keyword getCommaKeyword_3_2_0() { return cCommaKeyword_3_2_0; } - //superclasses+=[NamedElement|QualifiedName] - public Assignment getSuperclassesAssignment_3_2_1() { return cSuperclassesAssignment_3_2_1; } + //supertypes+=[Symbol|QualifiedName] + public Assignment getSupertypesAssignment_3_2_1() { return cSupertypesAssignment_3_2_1; } - //[NamedElement|QualifiedName] - public CrossReference getSuperclassesNamedElementCrossReference_3_2_1_0() { return cSuperclassesNamedElementCrossReference_3_2_1_0; } + //[Symbol|QualifiedName] + public CrossReference getSupertypesSymbolCrossReference_3_2_1_0() { return cSupertypesSymbolCrossReference_3_2_1_0; } //QualifiedName - public RuleCall getSuperclassesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1() { return cSuperclassesNamedElementQualifiedNameParserRuleCall_3_2_1_0_1; } + public RuleCall getSupertypesSymbolQualifiedNameParserRuleCall_3_2_1_0_1() { return cSupertypesSymbolQualifiedNameParserRuleCall_3_2_1_0_1; } + + //("{" fields+=Field* "}" | FULL_STOP) + public Alternatives getAlternatives_4() { return cAlternatives_4; } + + //"{" fields+=Field* "}" + public Group getGroup_4_0() { return cGroup_4_0; } //"{" - public Keyword getLeftCurlyBracketKeyword_4() { return cLeftCurlyBracketKeyword_4; } + public Keyword getLeftCurlyBracketKeyword_4_0_0() { return cLeftCurlyBracketKeyword_4_0_0; } - //members+=MemberDefinition* - public Assignment getMembersAssignment_5() { return cMembersAssignment_5; } + //fields+=Field* + public Assignment getFieldsAssignment_4_0_1() { return cFieldsAssignment_4_0_1; } - //MemberDefinition - public RuleCall getMembersMemberDefinitionParserRuleCall_5_0() { return cMembersMemberDefinitionParserRuleCall_5_0; } + //Field + public RuleCall getFieldsFieldParserRuleCall_4_0_1_0() { return cFieldsFieldParserRuleCall_4_0_1_0; } //"}" - public Keyword getRightCurlyBracketKeyword_6() { return cRightCurlyBracketKeyword_6; } + public Keyword getRightCurlyBracketKeyword_4_0_2() { return cRightCurlyBracketKeyword_4_0_2; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_4_1() { return cFULL_STOPTerminalRuleCall_4_1; } } - public class MemberDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.MemberDefinition"); + public class FieldElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Field"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Assignment cContainmentAssignment_0 = (Assignment)cGroup.eContents().get(0); - private final Keyword cContainmentContainsKeyword_0_0 = (Keyword)cContainmentAssignment_0.eContents().get(0); + private final Alternatives cAlternatives_0 = (Alternatives)cGroup.eContents().get(0); + private final Assignment cContainmentAssignment_0_0 = (Assignment)cAlternatives_0.eContents().get(0); + private final Keyword cContainmentContainsKeyword_0_0_0 = (Keyword)cContainmentAssignment_0_0.eContents().get(0); + private final Assignment cCrossReferenceAssignment_0_1 = (Assignment)cAlternatives_0.eContents().get(1); + private final Keyword cCrossReferenceRefersKeyword_0_1_0 = (Keyword)cCrossReferenceAssignment_0_1.eContents().get(0); private final Assignment cTypeAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final CrossReference cTypeNamedElementCrossReference_1_0 = (CrossReference)cTypeAssignment_1.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_0.eContents().get(1); + private final CrossReference cTypeSymbolCrossReference_1_0 = (CrossReference)cTypeAssignment_1.eContents().get(0); + private final RuleCall cTypeSymbolQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cTypeSymbolCrossReference_1_0.eContents().get(1); private final Assignment cMultiplicityAssignment_2 = (Assignment)cGroup.eContents().get(2); private final RuleCall cMultiplicityMultiplicityParserRuleCall_2_0 = (RuleCall)cMultiplicityAssignment_2.eContents().get(0); private final Assignment cNameAssignment_3 = (Assignment)cGroup.eContents().get(3); @@ -1922,33 +2140,42 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Group cGroup_4 = (Group)cGroup.eContents().get(4); private final Keyword cOppositeKeyword_4_0 = (Keyword)cGroup_4.eContents().get(0); private final Assignment cOppositeAssignment_4_1 = (Assignment)cGroup_4.eContents().get(1); - private final CrossReference cOppositeNamedElementCrossReference_4_1_0 = (CrossReference)cOppositeAssignment_4_1.eContents().get(0); - private final RuleCall cOppositeNamedElementQualifiedNameParserRuleCall_4_1_0_1 = (RuleCall)cOppositeNamedElementCrossReference_4_1_0.eContents().get(1); + private final CrossReference cOppositeSymbolCrossReference_4_1_0 = (CrossReference)cOppositeAssignment_4_1.eContents().get(0); + private final RuleCall cOppositeSymbolQualifiedNameParserRuleCall_4_1_0_1 = (RuleCall)cOppositeSymbolCrossReference_4_1_0.eContents().get(1); private final Keyword cSemicolonKeyword_5 = (Keyword)cGroup.eContents().get(5); - //MemberDefinition: - // containment?="contains"? type=[NamedElement|QualifiedName] multiplicity=Multiplicity? name=ID ("opposite" - // opposite=[NamedElement|QualifiedName])? ";"?; + //Field: + // (containment?="contains" | crossReference?="refers")? type=[Symbol|QualifiedName] multiplicity=Multiplicity? + // name=ID ("opposite" opposite=[Symbol|QualifiedName])? ";"?; @Override public ParserRule getRule() { return rule; } - //containment?="contains"? type=[NamedElement|QualifiedName] multiplicity=Multiplicity? name=ID ("opposite" - //opposite=[NamedElement|QualifiedName])? ";"? + //(containment?="contains" | crossReference?="refers")? type=[Symbol|QualifiedName] multiplicity=Multiplicity? name=ID + //("opposite" opposite=[Symbol|QualifiedName])? ";"? public Group getGroup() { return cGroup; } - //containment?="contains"? - public Assignment getContainmentAssignment_0() { return cContainmentAssignment_0; } + //(containment?="contains" | crossReference?="refers")? + public Alternatives getAlternatives_0() { return cAlternatives_0; } + + //containment?="contains" + public Assignment getContainmentAssignment_0_0() { return cContainmentAssignment_0_0; } //"contains" - public Keyword getContainmentContainsKeyword_0_0() { return cContainmentContainsKeyword_0_0; } + public Keyword getContainmentContainsKeyword_0_0_0() { return cContainmentContainsKeyword_0_0_0; } + + //crossReference?="refers" + public Assignment getCrossReferenceAssignment_0_1() { return cCrossReferenceAssignment_0_1; } + + //"refers" + public Keyword getCrossReferenceRefersKeyword_0_1_0() { return cCrossReferenceRefersKeyword_0_1_0; } - //type=[NamedElement|QualifiedName] + //type=[Symbol|QualifiedName] public Assignment getTypeAssignment_1() { return cTypeAssignment_1; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_0() { return cTypeNamedElementCrossReference_1_0; } + //[Symbol|QualifiedName] + public CrossReference getTypeSymbolCrossReference_1_0() { return cTypeSymbolCrossReference_1_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_0_1; } + public RuleCall getTypeSymbolQualifiedNameParserRuleCall_1_0_1() { return cTypeSymbolQualifiedNameParserRuleCall_1_0_1; } //multiplicity=Multiplicity? public Assignment getMultiplicityAssignment_2() { return cMultiplicityAssignment_2; } @@ -1962,20 +2189,20 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //ID public RuleCall getNameIDTerminalRuleCall_3_0() { return cNameIDTerminalRuleCall_3_0; } - //("opposite" opposite=[NamedElement|QualifiedName])? + //("opposite" opposite=[Symbol|QualifiedName])? public Group getGroup_4() { return cGroup_4; } //"opposite" public Keyword getOppositeKeyword_4_0() { return cOppositeKeyword_4_0; } - //opposite=[NamedElement|QualifiedName] + //opposite=[Symbol|QualifiedName] public Assignment getOppositeAssignment_4_1() { return cOppositeAssignment_4_1; } - //[NamedElement|QualifiedName] - public CrossReference getOppositeNamedElementCrossReference_4_1_0() { return cOppositeNamedElementCrossReference_4_1_0; } + //[Symbol|QualifiedName] + public CrossReference getOppositeSymbolCrossReference_4_1_0() { return cOppositeSymbolCrossReference_4_1_0; } //QualifiedName - public RuleCall getOppositeNamedElementQualifiedNameParserRuleCall_4_1_0_1() { return cOppositeNamedElementQualifiedNameParserRuleCall_4_1_0_1; } + public RuleCall getOppositeSymbolQualifiedNameParserRuleCall_4_1_0_1() { return cOppositeSymbolQualifiedNameParserRuleCall_4_1_0_1; } //";"? public Keyword getSemicolonKeyword_5() { return cSemicolonKeyword_5; } @@ -1983,19 +2210,19 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { public class MultiplicityElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Multiplicity"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final RuleCall cManyMultiplicityParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cUnboundedMultiplicityParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); private final RuleCall cExactMultiplicityParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); private final RuleCall cBoundedMultiplicityParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); //Multiplicity: - // ManyMultiplicity | ExactMultiplicity | BoundedMultiplicity; + // UnboundedMultiplicity | ExactMultiplicity | BoundedMultiplicity; @Override public ParserRule getRule() { return rule; } - //ManyMultiplicity | ExactMultiplicity | BoundedMultiplicity + //UnboundedMultiplicity | ExactMultiplicity | BoundedMultiplicity public Alternatives getAlternatives() { return cAlternatives; } - //ManyMultiplicity - public RuleCall getManyMultiplicityParserRuleCall_0() { return cManyMultiplicityParserRuleCall_0; } + //UnboundedMultiplicity + public RuleCall getUnboundedMultiplicityParserRuleCall_0() { return cUnboundedMultiplicityParserRuleCall_0; } //ExactMultiplicity public RuleCall getExactMultiplicityParserRuleCall_1() { return cExactMultiplicityParserRuleCall_1; } @@ -2003,22 +2230,22 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //BoundedMultiplicity public RuleCall getBoundedMultiplicityParserRuleCall_2() { return cBoundedMultiplicityParserRuleCall_2; } } - public class ManyMultiplicityElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ManyMultiplicity"); + public class UnboundedMultiplicityElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UnboundedMultiplicity"); private final Group cGroup = (Group)rule.eContents().get(1); - private final Action cManyMultiplicityAction_0 = (Action)cGroup.eContents().get(0); + private final Action cUnboundedMultiplicityAction_0 = (Action)cGroup.eContents().get(0); private final Keyword cLeftSquareBracketKeyword_1 = (Keyword)cGroup.eContents().get(1); private final Keyword cRightSquareBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); - //ManyMultiplicity: - // {ManyMultiplicity} "[" "]"; + //UnboundedMultiplicity: + // {UnboundedMultiplicity} "[" "]"; @Override public ParserRule getRule() { return rule; } - //{ManyMultiplicity} "[" "]" + //{UnboundedMultiplicity} "[" "]" public Group getGroup() { return cGroup; } - //{ManyMultiplicity} - public Action getManyMultiplicityAction_0() { return cManyMultiplicityAction_0; } + //{UnboundedMultiplicity} + public Action getUnboundedMultiplicityAction_0() { return cUnboundedMultiplicityAction_0; } //"[" public Keyword getLeftSquareBracketKeyword_1() { return cLeftSquareBracketKeyword_1; } @@ -2030,25 +2257,25 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExactMultiplicity"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cLeftSquareBracketKeyword_0 = (Keyword)cGroup.eContents().get(0); - private final Assignment cMultiplicityAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final RuleCall cMultiplicityUpperMultiplictyParserRuleCall_1_0 = (RuleCall)cMultiplicityAssignment_1.eContents().get(0); + private final Assignment cValueAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cValueUpperMultiplictyParserRuleCall_1_0 = (RuleCall)cValueAssignment_1.eContents().get(0); private final Keyword cRightSquareBracketKeyword_2 = (Keyword)cGroup.eContents().get(2); //ExactMultiplicity: - // "[" multiplicity=UpperMultiplicty "]"; + // "[" value=UpperMultiplicty "]"; @Override public ParserRule getRule() { return rule; } - //"[" multiplicity=UpperMultiplicty "]" + //"[" value=UpperMultiplicty "]" public Group getGroup() { return cGroup; } //"[" public Keyword getLeftSquareBracketKeyword_0() { return cLeftSquareBracketKeyword_0; } - //multiplicity=UpperMultiplicty - public Assignment getMultiplicityAssignment_1() { return cMultiplicityAssignment_1; } + //value=UpperMultiplicty + public Assignment getValueAssignment_1() { return cValueAssignment_1; } //UpperMultiplicty - public RuleCall getMultiplicityUpperMultiplictyParserRuleCall_1_0() { return cMultiplicityUpperMultiplictyParserRuleCall_1_0; } + public RuleCall getValueUpperMultiplictyParserRuleCall_1_0() { return cValueUpperMultiplictyParserRuleCall_1_0; } //"]" public Keyword getRightSquareBracketKeyword_2() { return cRightSquareBracketKeyword_2; } @@ -2059,16 +2286,16 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final Keyword cLeftSquareBracketKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Assignment cLowerBoundAssignment_1 = (Assignment)cGroup.eContents().get(1); private final RuleCall cLowerBoundINTTerminalRuleCall_1_0 = (RuleCall)cLowerBoundAssignment_1.eContents().get(0); - private final Keyword cFullStopFullStopKeyword_2 = (Keyword)cGroup.eContents().get(2); + private final Keyword cCommaKeyword_2 = (Keyword)cGroup.eContents().get(2); private final Assignment cUpperBoundAssignment_3 = (Assignment)cGroup.eContents().get(3); private final RuleCall cUpperBoundUpperMultiplictyParserRuleCall_3_0 = (RuleCall)cUpperBoundAssignment_3.eContents().get(0); private final Keyword cRightSquareBracketKeyword_4 = (Keyword)cGroup.eContents().get(4); //BoundedMultiplicity: - // "[" lowerBound=INT ".." upperBound=UpperMultiplicty "]"; + // "[" lowerBound=INT "," upperBound=UpperMultiplicty "]"; @Override public ParserRule getRule() { return rule; } - //"[" lowerBound=INT ".." upperBound=UpperMultiplicty "]" + //"[" lowerBound=INT "," upperBound=UpperMultiplicty "]" public Group getGroup() { return cGroup; } //"[" @@ -2080,8 +2307,8 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //INT public RuleCall getLowerBoundINTTerminalRuleCall_1_0() { return cLowerBoundINTTerminalRuleCall_1_0; } - //".." - public Keyword getFullStopFullStopKeyword_2() { return cFullStopFullStopKeyword_2; } + //"," + public Keyword getCommaKeyword_2() { return cCommaKeyword_2; } //upperBound=UpperMultiplicty public Assignment getUpperBoundAssignment_3() { return cUpperBoundAssignment_3; } @@ -2092,70 +2319,160 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"]" public Keyword getRightSquareBracketKeyword_4() { return cRightSquareBracketKeyword_4; } } - public class ScopeDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ScopeDefinition"); + public class EnumDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.EnumDeclaration"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final Keyword cEnumKeyword_0 = (Keyword)cGroup.eContents().get(0); + private final Assignment cNameAssignment_1 = (Assignment)cGroup.eContents().get(1); + private final RuleCall cNameIDTerminalRuleCall_1_0 = (RuleCall)cNameAssignment_1.eContents().get(0); + private final Alternatives cAlternatives_2 = (Alternatives)cGroup.eContents().get(2); + private final Group cGroup_2_0 = (Group)cAlternatives_2.eContents().get(0); + private final Keyword cLeftCurlyBracketKeyword_2_0_0 = (Keyword)cGroup_2_0.eContents().get(0); + private final Group cGroup_2_0_1 = (Group)cGroup_2_0.eContents().get(1); + private final Assignment cLiteralsAssignment_2_0_1_0 = (Assignment)cGroup_2_0_1.eContents().get(0); + private final RuleCall cLiteralsEnumLiteralParserRuleCall_2_0_1_0_0 = (RuleCall)cLiteralsAssignment_2_0_1_0.eContents().get(0); + private final Group cGroup_2_0_1_1 = (Group)cGroup_2_0_1.eContents().get(1); + private final Keyword cCommaKeyword_2_0_1_1_0 = (Keyword)cGroup_2_0_1_1.eContents().get(0); + private final Assignment cLiteralsAssignment_2_0_1_1_1 = (Assignment)cGroup_2_0_1_1.eContents().get(1); + private final RuleCall cLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0 = (RuleCall)cLiteralsAssignment_2_0_1_1_1.eContents().get(0); + private final Keyword cRightCurlyBracketKeyword_2_0_2 = (Keyword)cGroup_2_0.eContents().get(2); + private final RuleCall cFULL_STOPTerminalRuleCall_2_1 = (RuleCall)cAlternatives_2.eContents().get(1); + + //EnumDeclaration: + // "enum" name=ID ("{" (literals+=EnumLiteral (","? literals+=EnumLiteral)*)? "}" | FULL_STOP); + @Override public ParserRule getRule() { return rule; } + + //"enum" name=ID ("{" (literals+=EnumLiteral (","? literals+=EnumLiteral)*)? "}" | FULL_STOP) + public Group getGroup() { return cGroup; } + + //"enum" + public Keyword getEnumKeyword_0() { return cEnumKeyword_0; } + + //name=ID + public Assignment getNameAssignment_1() { return cNameAssignment_1; } + + //ID + public RuleCall getNameIDTerminalRuleCall_1_0() { return cNameIDTerminalRuleCall_1_0; } + + //("{" (literals+=EnumLiteral (","? literals+=EnumLiteral)*)? "}" | FULL_STOP) + public Alternatives getAlternatives_2() { return cAlternatives_2; } + + //"{" (literals+=EnumLiteral (","? literals+=EnumLiteral)*)? "}" + public Group getGroup_2_0() { return cGroup_2_0; } + + //"{" + public Keyword getLeftCurlyBracketKeyword_2_0_0() { return cLeftCurlyBracketKeyword_2_0_0; } + + //(literals+=EnumLiteral (","? literals+=EnumLiteral)*)? + public Group getGroup_2_0_1() { return cGroup_2_0_1; } + + //literals+=EnumLiteral + public Assignment getLiteralsAssignment_2_0_1_0() { return cLiteralsAssignment_2_0_1_0; } + + //EnumLiteral + public RuleCall getLiteralsEnumLiteralParserRuleCall_2_0_1_0_0() { return cLiteralsEnumLiteralParserRuleCall_2_0_1_0_0; } + + //(","? literals+=EnumLiteral)* + public Group getGroup_2_0_1_1() { return cGroup_2_0_1_1; } + + //","? + public Keyword getCommaKeyword_2_0_1_1_0() { return cCommaKeyword_2_0_1_1_0; } + + //literals+=EnumLiteral + public Assignment getLiteralsAssignment_2_0_1_1_1() { return cLiteralsAssignment_2_0_1_1_1; } + + //EnumLiteral + public RuleCall getLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0() { return cLiteralsEnumLiteralParserRuleCall_2_0_1_1_1_0; } + + //"}" + public Keyword getRightCurlyBracketKeyword_2_0_2() { return cRightCurlyBracketKeyword_2_0_2; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_2_1() { return cFULL_STOPTerminalRuleCall_2_1; } + } + public class EnumLiteralElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.EnumLiteral"); + private final Assignment cNameAssignment = (Assignment)rule.eContents().get(1); + private final RuleCall cNameIDTerminalRuleCall_0 = (RuleCall)cNameAssignment.eContents().get(0); + + //EnumLiteral: + // name=ID; + @Override public ParserRule getRule() { return rule; } + + //name=ID + public Assignment getNameAssignment() { return cNameAssignment; } + + //ID + public RuleCall getNameIDTerminalRuleCall_0() { return cNameIDTerminalRuleCall_0; } + } + public class ScopeDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ScopeDeclaration"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final RuleCall cExactScopeDefinitionParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); - private final RuleCall cBoundedScopeDefinitionParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); - private final RuleCall cLowerBoundedScopeDefinitionParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); + private final RuleCall cExactScopeParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); + private final RuleCall cBoundedScopeParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final RuleCall cLowerBoundedScopeParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2); - //ScopeDefinition: - // ExactScopeDefinition | BoundedScopeDefinition | LowerBoundedScopeDefinition; + //ScopeDeclaration: + // ExactScope | BoundedScope | LowerBoundedScope; @Override public ParserRule getRule() { return rule; } - //ExactScopeDefinition | BoundedScopeDefinition | LowerBoundedScopeDefinition + //ExactScope | BoundedScope | LowerBoundedScope public Alternatives getAlternatives() { return cAlternatives; } - //ExactScopeDefinition - public RuleCall getExactScopeDefinitionParserRuleCall_0() { return cExactScopeDefinitionParserRuleCall_0; } + //ExactScope + public RuleCall getExactScopeParserRuleCall_0() { return cExactScopeParserRuleCall_0; } - //BoundedScopeDefinition - public RuleCall getBoundedScopeDefinitionParserRuleCall_1() { return cBoundedScopeDefinitionParserRuleCall_1; } + //BoundedScope + public RuleCall getBoundedScopeParserRuleCall_1() { return cBoundedScopeParserRuleCall_1; } - //LowerBoundedScopeDefinition - public RuleCall getLowerBoundedScopeDefinitionParserRuleCall_2() { return cLowerBoundedScopeDefinitionParserRuleCall_2; } + //LowerBoundedScope + public RuleCall getLowerBoundedScopeParserRuleCall_2() { return cLowerBoundedScopeParserRuleCall_2; } } - public class ExactScopeDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExactScopeDefinition"); + public class ExactScopeElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExactScope"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cScopeKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Assignment cTypeAssignment_1 = (Assignment)cGroup.eContents().get(1); - private final CrossReference cTypeNamedElementCrossReference_1_0 = (CrossReference)cTypeAssignment_1.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_0.eContents().get(1); + private final CrossReference cTypeSymbolCrossReference_1_0 = (CrossReference)cTypeAssignment_1.eContents().get(0); + private final RuleCall cTypeSymbolQualifiedNameParserRuleCall_1_0_1 = (RuleCall)cTypeSymbolCrossReference_1_0.eContents().get(1); private final Keyword cEqualsSignEqualsSignKeyword_2 = (Keyword)cGroup.eContents().get(2); - private final Assignment cExactScopeAssignment_3 = (Assignment)cGroup.eContents().get(3); - private final RuleCall cExactScopeINTTerminalRuleCall_3_0 = (RuleCall)cExactScopeAssignment_3.eContents().get(0); + private final Assignment cSizeAssignment_3 = (Assignment)cGroup.eContents().get(3); + private final RuleCall cSizeINTTerminalRuleCall_3_0 = (RuleCall)cSizeAssignment_3.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_4 = (RuleCall)cGroup.eContents().get(4); - //ExactScopeDefinition: - // "scope" type=[NamedElement|QualifiedName] "==" exactScope=INT; + //ExactScope: + // "scope" type=[Symbol|QualifiedName] "==" size=INT FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"scope" type=[NamedElement|QualifiedName] "==" exactScope=INT + //"scope" type=[Symbol|QualifiedName] "==" size=INT FULL_STOP public Group getGroup() { return cGroup; } //"scope" public Keyword getScopeKeyword_0() { return cScopeKeyword_0; } - //type=[NamedElement|QualifiedName] + //type=[Symbol|QualifiedName] public Assignment getTypeAssignment_1() { return cTypeAssignment_1; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_0() { return cTypeNamedElementCrossReference_1_0; } + //[Symbol|QualifiedName] + public CrossReference getTypeSymbolCrossReference_1_0() { return cTypeSymbolCrossReference_1_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_0_1; } + public RuleCall getTypeSymbolQualifiedNameParserRuleCall_1_0_1() { return cTypeSymbolQualifiedNameParserRuleCall_1_0_1; } //"==" public Keyword getEqualsSignEqualsSignKeyword_2() { return cEqualsSignEqualsSignKeyword_2; } - //exactScope=INT - public Assignment getExactScopeAssignment_3() { return cExactScopeAssignment_3; } + //size=INT + public Assignment getSizeAssignment_3() { return cSizeAssignment_3; } //INT - public RuleCall getExactScopeINTTerminalRuleCall_3_0() { return cExactScopeINTTerminalRuleCall_3_0; } + public RuleCall getSizeINTTerminalRuleCall_3_0() { return cSizeINTTerminalRuleCall_3_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_4() { return cFULL_STOPTerminalRuleCall_4; } } - public class BoundedScopeDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.BoundedScopeDefinition"); + public class BoundedScopeElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.BoundedScope"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cScopeKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1); @@ -2165,8 +2482,8 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final RuleCall cLowerBoundINTTerminalRuleCall_1_0_0_0_0 = (RuleCall)cLowerBoundAssignment_1_0_0_0.eContents().get(0); private final Keyword cLessThanSignEqualsSignKeyword_1_0_0_1 = (Keyword)cGroup_1_0_0.eContents().get(1); private final Assignment cTypeAssignment_1_0_1 = (Assignment)cGroup_1_0.eContents().get(1); - private final CrossReference cTypeNamedElementCrossReference_1_0_1_0 = (CrossReference)cTypeAssignment_1_0_1.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_0_1_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_0_1_0.eContents().get(1); + private final CrossReference cTypeSymbolCrossReference_1_0_1_0 = (CrossReference)cTypeAssignment_1_0_1.eContents().get(0); + private final RuleCall cTypeSymbolQualifiedNameParserRuleCall_1_0_1_0_1 = (RuleCall)cTypeSymbolCrossReference_1_0_1_0.eContents().get(1); private final Keyword cLessThanSignEqualsSignKeyword_1_0_2 = (Keyword)cGroup_1_0.eContents().get(2); private final Assignment cUpperBoundAssignment_1_0_3 = (Assignment)cGroup_1_0.eContents().get(3); private final RuleCall cUpperBoundINTTerminalRuleCall_1_0_3_0 = (RuleCall)cUpperBoundAssignment_1_0_3.eContents().get(0); @@ -2175,30 +2492,31 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final RuleCall cUpperBoundINTTerminalRuleCall_1_1_0_0 = (RuleCall)cUpperBoundAssignment_1_1_0.eContents().get(0); private final Keyword cGreaterThanSignEqualsSignKeyword_1_1_1 = (Keyword)cGroup_1_1.eContents().get(1); private final Assignment cTypeAssignment_1_1_2 = (Assignment)cGroup_1_1.eContents().get(2); - private final CrossReference cTypeNamedElementCrossReference_1_1_2_0 = (CrossReference)cTypeAssignment_1_1_2.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_1_2_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_1_2_0.eContents().get(1); + private final CrossReference cTypeSymbolCrossReference_1_1_2_0 = (CrossReference)cTypeAssignment_1_1_2.eContents().get(0); + private final RuleCall cTypeSymbolQualifiedNameParserRuleCall_1_1_2_0_1 = (RuleCall)cTypeSymbolCrossReference_1_1_2_0.eContents().get(1); private final Group cGroup_1_1_3 = (Group)cGroup_1_1.eContents().get(3); private final Keyword cGreaterThanSignEqualsSignKeyword_1_1_3_0 = (Keyword)cGroup_1_1_3.eContents().get(0); private final Assignment cLowerBoundAssignment_1_1_3_1 = (Assignment)cGroup_1_1_3.eContents().get(1); private final RuleCall cLowerBoundINTTerminalRuleCall_1_1_3_1_0 = (RuleCall)cLowerBoundAssignment_1_1_3_1.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_2 = (RuleCall)cGroup.eContents().get(2); - //BoundedScopeDefinition: - // "scope" ((lowerBound=INT "<=")? type=[NamedElement|QualifiedName] "<=" upperBound=INT | upperBound=INT ">=" - // type=[NamedElement|QualifiedName] (">=" lowerBound=INT)?); + //BoundedScope: + // "scope" ((lowerBound=INT "<=")? type=[Symbol|QualifiedName] "<=" upperBound=INT | upperBound=INT ">=" + // type=[Symbol|QualifiedName] (">=" lowerBound=INT)?) FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"scope" ((lowerBound=INT "<=")? type=[NamedElement|QualifiedName] "<=" upperBound=INT | upperBound=INT ">=" - //type=[NamedElement|QualifiedName] (">=" lowerBound=INT)?) + //"scope" ((lowerBound=INT "<=")? type=[Symbol|QualifiedName] "<=" upperBound=INT | upperBound=INT ">=" + //type=[Symbol|QualifiedName] (">=" lowerBound=INT)?) FULL_STOP public Group getGroup() { return cGroup; } //"scope" public Keyword getScopeKeyword_0() { return cScopeKeyword_0; } - //((lowerBound=INT "<=")? type=[NamedElement|QualifiedName] "<=" upperBound=INT | upperBound=INT ">=" - //type=[NamedElement|QualifiedName] (">=" lowerBound=INT)?) + //((lowerBound=INT "<=")? type=[Symbol|QualifiedName] "<=" upperBound=INT | upperBound=INT ">=" + //type=[Symbol|QualifiedName] (">=" lowerBound=INT)?) public Alternatives getAlternatives_1() { return cAlternatives_1; } - //(lowerBound=INT "<=")? type=[NamedElement|QualifiedName] "<=" upperBound=INT + //(lowerBound=INT "<=")? type=[Symbol|QualifiedName] "<=" upperBound=INT public Group getGroup_1_0() { return cGroup_1_0; } //(lowerBound=INT "<=")? @@ -2213,14 +2531,14 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"<=" public Keyword getLessThanSignEqualsSignKeyword_1_0_0_1() { return cLessThanSignEqualsSignKeyword_1_0_0_1; } - //type=[NamedElement|QualifiedName] + //type=[Symbol|QualifiedName] public Assignment getTypeAssignment_1_0_1() { return cTypeAssignment_1_0_1; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_0_1_0() { return cTypeNamedElementCrossReference_1_0_1_0; } + //[Symbol|QualifiedName] + public CrossReference getTypeSymbolCrossReference_1_0_1_0() { return cTypeSymbolCrossReference_1_0_1_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_0_1_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_0_1_0_1; } + public RuleCall getTypeSymbolQualifiedNameParserRuleCall_1_0_1_0_1() { return cTypeSymbolQualifiedNameParserRuleCall_1_0_1_0_1; } //"<=" public Keyword getLessThanSignEqualsSignKeyword_1_0_2() { return cLessThanSignEqualsSignKeyword_1_0_2; } @@ -2231,7 +2549,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //INT public RuleCall getUpperBoundINTTerminalRuleCall_1_0_3_0() { return cUpperBoundINTTerminalRuleCall_1_0_3_0; } - //upperBound=INT ">=" type=[NamedElement|QualifiedName] (">=" lowerBound=INT)? + //upperBound=INT ">=" type=[Symbol|QualifiedName] (">=" lowerBound=INT)? public Group getGroup_1_1() { return cGroup_1_1; } //upperBound=INT @@ -2243,14 +2561,14 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //">=" public Keyword getGreaterThanSignEqualsSignKeyword_1_1_1() { return cGreaterThanSignEqualsSignKeyword_1_1_1; } - //type=[NamedElement|QualifiedName] + //type=[Symbol|QualifiedName] public Assignment getTypeAssignment_1_1_2() { return cTypeAssignment_1_1_2; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_1_2_0() { return cTypeNamedElementCrossReference_1_1_2_0; } + //[Symbol|QualifiedName] + public CrossReference getTypeSymbolCrossReference_1_1_2_0() { return cTypeSymbolCrossReference_1_1_2_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_1_2_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_1_2_0_1; } + public RuleCall getTypeSymbolQualifiedNameParserRuleCall_1_1_2_0_1() { return cTypeSymbolQualifiedNameParserRuleCall_1_1_2_0_1; } //(">=" lowerBound=INT)? public Group getGroup_1_1_3() { return cGroup_1_1_3; } @@ -2263,9 +2581,12 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //INT public RuleCall getLowerBoundINTTerminalRuleCall_1_1_3_1_0() { return cLowerBoundINTTerminalRuleCall_1_1_3_1_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_2() { return cFULL_STOPTerminalRuleCall_2; } } - public class LowerBoundedScopeDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.LowerBoundedScopeDefinition"); + public class LowerBoundedScopeElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.LowerBoundedScope"); private final Group cGroup = (Group)rule.eContents().get(1); private final Keyword cScopeKeyword_0 = (Keyword)cGroup.eContents().get(0); private final Alternatives cAlternatives_1 = (Alternatives)cGroup.eContents().get(1); @@ -2274,31 +2595,32 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final RuleCall cLowerBoundINTTerminalRuleCall_1_0_0_0 = (RuleCall)cLowerBoundAssignment_1_0_0.eContents().get(0); private final Keyword cLessThanSignEqualsSignKeyword_1_0_1 = (Keyword)cGroup_1_0.eContents().get(1); private final Assignment cTypeAssignment_1_0_2 = (Assignment)cGroup_1_0.eContents().get(2); - private final CrossReference cTypeNamedElementCrossReference_1_0_2_0 = (CrossReference)cTypeAssignment_1_0_2.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_0_2_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_0_2_0.eContents().get(1); + private final CrossReference cTypeSymbolCrossReference_1_0_2_0 = (CrossReference)cTypeAssignment_1_0_2.eContents().get(0); + private final RuleCall cTypeSymbolQualifiedNameParserRuleCall_1_0_2_0_1 = (RuleCall)cTypeSymbolCrossReference_1_0_2_0.eContents().get(1); private final Group cGroup_1_1 = (Group)cAlternatives_1.eContents().get(1); private final Assignment cTypeAssignment_1_1_0 = (Assignment)cGroup_1_1.eContents().get(0); - private final CrossReference cTypeNamedElementCrossReference_1_1_0_0 = (CrossReference)cTypeAssignment_1_1_0.eContents().get(0); - private final RuleCall cTypeNamedElementQualifiedNameParserRuleCall_1_1_0_0_1 = (RuleCall)cTypeNamedElementCrossReference_1_1_0_0.eContents().get(1); + private final CrossReference cTypeSymbolCrossReference_1_1_0_0 = (CrossReference)cTypeAssignment_1_1_0.eContents().get(0); + private final RuleCall cTypeSymbolQualifiedNameParserRuleCall_1_1_0_0_1 = (RuleCall)cTypeSymbolCrossReference_1_1_0_0.eContents().get(1); private final Keyword cGreaterThanSignEqualsSignKeyword_1_1_1 = (Keyword)cGroup_1_1.eContents().get(1); private final Assignment cLowerBoundAssignment_1_1_2 = (Assignment)cGroup_1_1.eContents().get(2); private final RuleCall cLowerBoundINTTerminalRuleCall_1_1_2_0 = (RuleCall)cLowerBoundAssignment_1_1_2.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_2 = (RuleCall)cGroup.eContents().get(2); - //LowerBoundedScopeDefinition: - // "scope" (lowerBound=INT "<=" type=[NamedElement|QualifiedName] | type=[NamedElement|QualifiedName] ">=" - // lowerBound=INT); + //LowerBoundedScope: + // "scope" (lowerBound=INT "<=" type=[Symbol|QualifiedName] | type=[Symbol|QualifiedName] ">=" lowerBound=INT) + // FULL_STOP; @Override public ParserRule getRule() { return rule; } - //"scope" (lowerBound=INT "<=" type=[NamedElement|QualifiedName] | type=[NamedElement|QualifiedName] ">=" lowerBound=INT) + //"scope" (lowerBound=INT "<=" type=[Symbol|QualifiedName] | type=[Symbol|QualifiedName] ">=" lowerBound=INT) FULL_STOP public Group getGroup() { return cGroup; } //"scope" public Keyword getScopeKeyword_0() { return cScopeKeyword_0; } - //(lowerBound=INT "<=" type=[NamedElement|QualifiedName] | type=[NamedElement|QualifiedName] ">=" lowerBound=INT) + //(lowerBound=INT "<=" type=[Symbol|QualifiedName] | type=[Symbol|QualifiedName] ">=" lowerBound=INT) public Alternatives getAlternatives_1() { return cAlternatives_1; } - //lowerBound=INT "<=" type=[NamedElement|QualifiedName] + //lowerBound=INT "<=" type=[Symbol|QualifiedName] public Group getGroup_1_0() { return cGroup_1_0; } //lowerBound=INT @@ -2310,26 +2632,26 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"<=" public Keyword getLessThanSignEqualsSignKeyword_1_0_1() { return cLessThanSignEqualsSignKeyword_1_0_1; } - //type=[NamedElement|QualifiedName] + //type=[Symbol|QualifiedName] public Assignment getTypeAssignment_1_0_2() { return cTypeAssignment_1_0_2; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_0_2_0() { return cTypeNamedElementCrossReference_1_0_2_0; } + //[Symbol|QualifiedName] + public CrossReference getTypeSymbolCrossReference_1_0_2_0() { return cTypeSymbolCrossReference_1_0_2_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_0_2_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_0_2_0_1; } + public RuleCall getTypeSymbolQualifiedNameParserRuleCall_1_0_2_0_1() { return cTypeSymbolQualifiedNameParserRuleCall_1_0_2_0_1; } - //type=[NamedElement|QualifiedName] ">=" lowerBound=INT + //type=[Symbol|QualifiedName] ">=" lowerBound=INT public Group getGroup_1_1() { return cGroup_1_1; } - //type=[NamedElement|QualifiedName] + //type=[Symbol|QualifiedName] public Assignment getTypeAssignment_1_1_0() { return cTypeAssignment_1_1_0; } - //[NamedElement|QualifiedName] - public CrossReference getTypeNamedElementCrossReference_1_1_0_0() { return cTypeNamedElementCrossReference_1_1_0_0; } + //[Symbol|QualifiedName] + public CrossReference getTypeSymbolCrossReference_1_1_0_0() { return cTypeSymbolCrossReference_1_1_0_0; } //QualifiedName - public RuleCall getTypeNamedElementQualifiedNameParserRuleCall_1_1_0_0_1() { return cTypeNamedElementQualifiedNameParserRuleCall_1_1_0_0_1; } + public RuleCall getTypeSymbolQualifiedNameParserRuleCall_1_1_0_0_1() { return cTypeSymbolQualifiedNameParserRuleCall_1_1_0_0_1; } //">=" public Keyword getGreaterThanSignEqualsSignKeyword_1_1_1() { return cGreaterThanSignEqualsSignKeyword_1_1_1; } @@ -2339,20 +2661,24 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //INT public RuleCall getLowerBoundINTTerminalRuleCall_1_1_2_0() { return cLowerBoundINTTerminalRuleCall_1_1_2_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_2() { return cFULL_STOPTerminalRuleCall_2; } } - public class ObjectiveDefinitionElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ObjectiveDefinition"); + public class ObjectiveDeclarationElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ObjectiveDeclaration"); private final Group cGroup = (Group)rule.eContents().get(1); private final Assignment cKindAssignment_0 = (Assignment)cGroup.eContents().get(0); private final RuleCall cKindObjectiveKindEnumRuleCall_0_0 = (RuleCall)cKindAssignment_0.eContents().get(0); private final Assignment cObjectiveAssignment_1 = (Assignment)cGroup.eContents().get(1); private final RuleCall cObjectiveExpressionParserRuleCall_1_0 = (RuleCall)cObjectiveAssignment_1.eContents().get(0); + private final RuleCall cFULL_STOPTerminalRuleCall_2 = (RuleCall)cGroup.eContents().get(2); - //ObjectiveDefinition: - // kind=ObjectiveKind objective=Expression; + //ObjectiveDeclaration: + // kind=ObjectiveKind objective=Expression FULL_STOP; @Override public ParserRule getRule() { return rule; } - //kind=ObjectiveKind objective=Expression + //kind=ObjectiveKind objective=Expression FULL_STOP public Group getGroup() { return cGroup; } //kind=ObjectiveKind @@ -2366,6 +2692,9 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //Expression public RuleCall getObjectiveExpressionParserRuleCall_1_0() { return cObjectiveExpressionParserRuleCall_1_0; } + + //FULL_STOP + public RuleCall getFULL_STOPTerminalRuleCall_2() { return cFULL_STOPTerminalRuleCall_2; } } public class UpperMultiplictyElements extends AbstractParserRuleElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UpperMultiplicty"); @@ -2390,116 +2719,155 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Real"); private final Group cGroup = (Group)rule.eContents().get(1); private final RuleCall cINTTerminalRuleCall_0 = (RuleCall)cGroup.eContents().get(0); - private final Group cGroup_1 = (Group)cGroup.eContents().get(1); - private final Keyword cFullStopKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0); - private final RuleCall cINTTerminalRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1); + private final Keyword cFullStopKeyword_1 = (Keyword)cGroup.eContents().get(1); + private final RuleCall cINTTerminalRuleCall_2 = (RuleCall)cGroup.eContents().get(2); //Real ecore::EBigDecimal hidden(): - // INT ("." INT)?; + // INT "." INT; @Override public ParserRule getRule() { return rule; } - //INT ("." INT)? + //INT "." INT public Group getGroup() { return cGroup; } //INT public RuleCall getINTTerminalRuleCall_0() { return cINTTerminalRuleCall_0; } - //("." INT)? - public Group getGroup_1() { return cGroup_1; } - //"." - public Keyword getFullStopKeyword_1_0() { return cFullStopKeyword_1_0; } + public Keyword getFullStopKeyword_1() { return cFullStopKeyword_1; } //INT - public RuleCall getINTTerminalRuleCall_1_1() { return cINTTerminalRuleCall_1_1; } + public RuleCall getINTTerminalRuleCall_2() { return cINTTerminalRuleCall_2; } } - public class QualifiedNameElements extends AbstractParserRuleElementFinder { - private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + public class QualifiedNameSegmentElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedNameSegment"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final Group cGroup_0 = (Group)cAlternatives.eContents().get(0); - private final RuleCall cIDTerminalRuleCall_0_0 = (RuleCall)cGroup_0.eContents().get(0); - private final Group cGroup_0_1 = (Group)cGroup_0.eContents().get(1); - private final Keyword cFullStopKeyword_0_1_0 = (Keyword)cGroup_0_1.eContents().get(0); - private final RuleCall cIDTerminalRuleCall_0_1_1 = (RuleCall)cGroup_0_1.eContents().get(1); + private final RuleCall cIDTerminalRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0); private final RuleCall cQUOTED_IDTerminalRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1); + private final Keyword cObjectKeyword_2 = (Keyword)cAlternatives.eContents().get(2); - //QualifiedName hidden(): - // ID ("." ID)* | QUOTED_ID; + //QualifiedNameSegment: + // ID | QUOTED_ID | "object"; @Override public ParserRule getRule() { return rule; } - //ID ("." ID)* | QUOTED_ID + //ID | QUOTED_ID | "object" public Alternatives getAlternatives() { return cAlternatives; } - //ID ("." ID)* - public Group getGroup_0() { return cGroup_0; } - //ID - public RuleCall getIDTerminalRuleCall_0_0() { return cIDTerminalRuleCall_0_0; } + public RuleCall getIDTerminalRuleCall_0() { return cIDTerminalRuleCall_0; } - //("." ID)* - public Group getGroup_0_1() { return cGroup_0_1; } + //QUOTED_ID + public RuleCall getQUOTED_IDTerminalRuleCall_1() { return cQUOTED_IDTerminalRuleCall_1; } - //"." - public Keyword getFullStopKeyword_0_1_0() { return cFullStopKeyword_0_1_0; } + //"object" + public Keyword getObjectKeyword_2() { return cObjectKeyword_2; } + } + public class QualifiedNameElements extends AbstractParserRuleElementFinder { + private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.QualifiedName"); + private final Group cGroup = (Group)rule.eContents().get(1); + private final RuleCall cQualifiedNameSegmentParserRuleCall_0 = (RuleCall)cGroup.eContents().get(0); + private final Group cGroup_1 = (Group)cGroup.eContents().get(1); + private final Keyword cColonColonKeyword_1_0 = (Keyword)cGroup_1.eContents().get(0); + private final RuleCall cQualifiedNameSegmentParserRuleCall_1_1 = (RuleCall)cGroup_1.eContents().get(1); - //ID - public RuleCall getIDTerminalRuleCall_0_1_1() { return cIDTerminalRuleCall_0_1_1; } + //QualifiedName hidden(): + // QualifiedNameSegment ("::" QualifiedNameSegment)*; + @Override public ParserRule getRule() { return rule; } - //QUOTED_ID - public RuleCall getQUOTED_IDTerminalRuleCall_1() { return cQUOTED_IDTerminalRuleCall_1; } + //QualifiedNameSegment ("::" QualifiedNameSegment)* + public Group getGroup() { return cGroup; } + + //QualifiedNameSegment + public RuleCall getQualifiedNameSegmentParserRuleCall_0() { return cQualifiedNameSegmentParserRuleCall_0; } + + //("::" QualifiedNameSegment)* + public Group getGroup_1() { return cGroup_1; } + + //"::" + public Keyword getColonColonKeyword_1_0() { return cColonColonKeyword_1_0; } + + //QualifiedNameSegment + public RuleCall getQualifiedNameSegmentParserRuleCall_1_1() { return cQualifiedNameSegmentParserRuleCall_1_1; } } - public class ImplicationOperatorElements extends AbstractEnumRuleElementFinder { - private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ImplicationOperator"); - private final EnumLiteralDeclaration cIMPLIESEnumLiteralDeclaration = (EnumLiteralDeclaration)rule.eContents().get(1); - private final Keyword cIMPLIESEqualsSignGreaterThanSignKeyword_0 = (Keyword)cIMPLIESEnumLiteralDeclaration.eContents().get(0); - - //enum ImplicationOperator returns BinaryOperator: - // IMPLIES="=>"; + public class AttributeKindElements extends AbstractEnumRuleElementFinder { + private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.AttributeKind"); + private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); + private final EnumLiteralDeclaration cFUNCTIONALEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); + private final Keyword cFUNCTIONALFunctionalKeyword_0_0 = (Keyword)cFUNCTIONALEnumLiteralDeclaration_0.eContents().get(0); + private final EnumLiteralDeclaration cERROREnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); + private final Keyword cERRORErrorKeyword_1_0 = (Keyword)cERROREnumLiteralDeclaration_1.eContents().get(0); + private final EnumLiteralDeclaration cROOTEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2); + private final Keyword cROOTRootKeyword_2_0 = (Keyword)cROOTEnumLiteralDeclaration_2.eContents().get(0); + private final EnumLiteralDeclaration cCONTAINMENTEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3); + private final Keyword cCONTAINMENTContainmentKeyword_3_0 = (Keyword)cCONTAINMENTEnumLiteralDeclaration_3.eContents().get(0); + + //enum AttributeKind: + // FUNCTIONAL="functional" | ERROR="error" | ROOT="root" | CONTAINMENT="containment"; public EnumRule getRule() { return rule; } - //IMPLIES="=>" - public EnumLiteralDeclaration getIMPLIESEnumLiteralDeclaration() { return cIMPLIESEnumLiteralDeclaration; } + //FUNCTIONAL="functional" | ERROR="error" | ROOT="root" | CONTAINMENT="containment" + public Alternatives getAlternatives() { return cAlternatives; } + + //FUNCTIONAL="functional" + public EnumLiteralDeclaration getFUNCTIONALEnumLiteralDeclaration_0() { return cFUNCTIONALEnumLiteralDeclaration_0; } - //"=>" - public Keyword getIMPLIESEqualsSignGreaterThanSignKeyword_0() { return cIMPLIESEqualsSignGreaterThanSignKeyword_0; } + //"functional" + public Keyword getFUNCTIONALFunctionalKeyword_0_0() { return cFUNCTIONALFunctionalKeyword_0_0; } + + //ERROR="error" + public EnumLiteralDeclaration getERROREnumLiteralDeclaration_1() { return cERROREnumLiteralDeclaration_1; } + + //"error" + public Keyword getERRORErrorKeyword_1_0() { return cERRORErrorKeyword_1_0; } + + //ROOT="root" + public EnumLiteralDeclaration getROOTEnumLiteralDeclaration_2() { return cROOTEnumLiteralDeclaration_2; } + + //"root" + public Keyword getROOTRootKeyword_2_0() { return cROOTRootKeyword_2_0; } + + //CONTAINMENT="containment" + public EnumLiteralDeclaration getCONTAINMENTEnumLiteralDeclaration_3() { return cCONTAINMENTEnumLiteralDeclaration_3; } + + //"containment" + public Keyword getCONTAINMENTContainmentKeyword_3_0() { return cCONTAINMENTContainmentKeyword_3_0; } } public class ComparisonOperatorElements extends AbstractEnumRuleElementFinder { private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ComparisonOperator"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final EnumLiteralDeclaration cEQEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); - private final Keyword cEQEqualsSignEqualsSignKeyword_0_0 = (Keyword)cEQEnumLiteralDeclaration_0.eContents().get(0); - private final EnumLiteralDeclaration cNOT_EQEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); - private final Keyword cNOT_EQExclamationMarkEqualsSignKeyword_1_0 = (Keyword)cNOT_EQEnumLiteralDeclaration_1.eContents().get(0); + private final EnumLiteralDeclaration cEQUALSEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); + private final Keyword cEQUALSEqualsSignEqualsSignKeyword_0_0 = (Keyword)cEQUALSEnumLiteralDeclaration_0.eContents().get(0); + private final EnumLiteralDeclaration cNOT_EQUALSEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); + private final Keyword cNOT_EQUALSExclamationMarkEqualsSignKeyword_1_0 = (Keyword)cNOT_EQUALSEnumLiteralDeclaration_1.eContents().get(0); private final EnumLiteralDeclaration cLESSEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2); private final Keyword cLESSLessThanSignKeyword_2_0 = (Keyword)cLESSEnumLiteralDeclaration_2.eContents().get(0); - private final EnumLiteralDeclaration cLESS_EQEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3); - private final Keyword cLESS_EQLessThanSignEqualsSignKeyword_3_0 = (Keyword)cLESS_EQEnumLiteralDeclaration_3.eContents().get(0); + private final EnumLiteralDeclaration cLESS_EQUALSEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3); + private final Keyword cLESS_EQUALSLessThanSignEqualsSignKeyword_3_0 = (Keyword)cLESS_EQUALSEnumLiteralDeclaration_3.eContents().get(0); private final EnumLiteralDeclaration cGREATEREnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4); private final Keyword cGREATERGreaterThanSignKeyword_4_0 = (Keyword)cGREATEREnumLiteralDeclaration_4.eContents().get(0); - private final EnumLiteralDeclaration cGREATER_EQEnumLiteralDeclaration_5 = (EnumLiteralDeclaration)cAlternatives.eContents().get(5); - private final Keyword cGREATER_EQGreaterThanSignEqualsSignKeyword_5_0 = (Keyword)cGREATER_EQEnumLiteralDeclaration_5.eContents().get(0); + private final EnumLiteralDeclaration cGREATER_EQUALSEnumLiteralDeclaration_5 = (EnumLiteralDeclaration)cAlternatives.eContents().get(5); + private final Keyword cGREATER_EQUALSGreaterThanSignEqualsSignKeyword_5_0 = (Keyword)cGREATER_EQUALSEnumLiteralDeclaration_5.eContents().get(0); private final EnumLiteralDeclaration cINEnumLiteralDeclaration_6 = (EnumLiteralDeclaration)cAlternatives.eContents().get(6); private final Keyword cINInKeyword_6_0 = (Keyword)cINEnumLiteralDeclaration_6.eContents().get(0); //enum ComparisonOperator returns BinaryOperator: - // EQ="==" | NOT_EQ="!=" | LESS="<" | LESS_EQ="<=" | GREATER=">" | GREATER_EQ=">=" | IN="in"; + // EQUALS="==" | NOT_EQUALS="!=" | LESS="<" | LESS_EQUALS="<=" | GREATER=">" | GREATER_EQUALS=">=" | IN="in"; public EnumRule getRule() { return rule; } - //EQ="==" | NOT_EQ="!=" | LESS="<" | LESS_EQ="<=" | GREATER=">" | GREATER_EQ=">=" | IN="in" + //EQUALS="==" | NOT_EQUALS="!=" | LESS="<" | LESS_EQUALS="<=" | GREATER=">" | GREATER_EQUALS=">=" | IN="in" public Alternatives getAlternatives() { return cAlternatives; } - //EQ="==" - public EnumLiteralDeclaration getEQEnumLiteralDeclaration_0() { return cEQEnumLiteralDeclaration_0; } + //EQUALS="==" + public EnumLiteralDeclaration getEQUALSEnumLiteralDeclaration_0() { return cEQUALSEnumLiteralDeclaration_0; } //"==" - public Keyword getEQEqualsSignEqualsSignKeyword_0_0() { return cEQEqualsSignEqualsSignKeyword_0_0; } + public Keyword getEQUALSEqualsSignEqualsSignKeyword_0_0() { return cEQUALSEqualsSignEqualsSignKeyword_0_0; } - //NOT_EQ="!=" - public EnumLiteralDeclaration getNOT_EQEnumLiteralDeclaration_1() { return cNOT_EQEnumLiteralDeclaration_1; } + //NOT_EQUALS="!=" + public EnumLiteralDeclaration getNOT_EQUALSEnumLiteralDeclaration_1() { return cNOT_EQUALSEnumLiteralDeclaration_1; } //"!=" - public Keyword getNOT_EQExclamationMarkEqualsSignKeyword_1_0() { return cNOT_EQExclamationMarkEqualsSignKeyword_1_0; } + public Keyword getNOT_EQUALSExclamationMarkEqualsSignKeyword_1_0() { return cNOT_EQUALSExclamationMarkEqualsSignKeyword_1_0; } //LESS="<" public EnumLiteralDeclaration getLESSEnumLiteralDeclaration_2() { return cLESSEnumLiteralDeclaration_2; } @@ -2507,11 +2875,11 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"<" public Keyword getLESSLessThanSignKeyword_2_0() { return cLESSLessThanSignKeyword_2_0; } - //LESS_EQ="<=" - public EnumLiteralDeclaration getLESS_EQEnumLiteralDeclaration_3() { return cLESS_EQEnumLiteralDeclaration_3; } + //LESS_EQUALS="<=" + public EnumLiteralDeclaration getLESS_EQUALSEnumLiteralDeclaration_3() { return cLESS_EQUALSEnumLiteralDeclaration_3; } //"<=" - public Keyword getLESS_EQLessThanSignEqualsSignKeyword_3_0() { return cLESS_EQLessThanSignEqualsSignKeyword_3_0; } + public Keyword getLESS_EQUALSLessThanSignEqualsSignKeyword_3_0() { return cLESS_EQUALSLessThanSignEqualsSignKeyword_3_0; } //GREATER=">" public EnumLiteralDeclaration getGREATEREnumLiteralDeclaration_4() { return cGREATEREnumLiteralDeclaration_4; } @@ -2519,11 +2887,11 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //">" public Keyword getGREATERGreaterThanSignKeyword_4_0() { return cGREATERGreaterThanSignKeyword_4_0; } - //GREATER_EQ=">=" - public EnumLiteralDeclaration getGREATER_EQEnumLiteralDeclaration_5() { return cGREATER_EQEnumLiteralDeclaration_5; } + //GREATER_EQUALS=">=" + public EnumLiteralDeclaration getGREATER_EQUALSEnumLiteralDeclaration_5() { return cGREATER_EQUALSEnumLiteralDeclaration_5; } //">=" - public Keyword getGREATER_EQGreaterThanSignEqualsSignKeyword_5_0() { return cGREATER_EQGreaterThanSignEqualsSignKeyword_5_0; } + public Keyword getGREATER_EQUALSGreaterThanSignEqualsSignKeyword_5_0() { return cGREATER_EQUALSGreaterThanSignEqualsSignKeyword_5_0; } //IN="in" public EnumLiteralDeclaration getINEnumLiteralDeclaration_6() { return cINEnumLiteralDeclaration_6; } @@ -2534,56 +2902,56 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { public class AdditiveBinaryOperatorElements extends AbstractEnumRuleElementFinder { private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.AdditiveBinaryOperator"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final EnumLiteralDeclaration cADDEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); - private final Keyword cADDPlusSignKeyword_0_0 = (Keyword)cADDEnumLiteralDeclaration_0.eContents().get(0); - private final EnumLiteralDeclaration cSUBEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); - private final Keyword cSUBHyphenMinusKeyword_1_0 = (Keyword)cSUBEnumLiteralDeclaration_1.eContents().get(0); + private final EnumLiteralDeclaration cPLUSEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); + private final Keyword cPLUSPlusSignKeyword_0_0 = (Keyword)cPLUSEnumLiteralDeclaration_0.eContents().get(0); + private final EnumLiteralDeclaration cMINUSEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); + private final Keyword cMINUSHyphenMinusKeyword_1_0 = (Keyword)cMINUSEnumLiteralDeclaration_1.eContents().get(0); //enum AdditiveBinaryOperator returns BinaryOperator: - // ADD="+" | SUB="-"; + // PLUS="+" | MINUS="-"; public EnumRule getRule() { return rule; } - //ADD="+" | SUB="-" + //PLUS="+" | MINUS="-" public Alternatives getAlternatives() { return cAlternatives; } - //ADD="+" - public EnumLiteralDeclaration getADDEnumLiteralDeclaration_0() { return cADDEnumLiteralDeclaration_0; } + //PLUS="+" + public EnumLiteralDeclaration getPLUSEnumLiteralDeclaration_0() { return cPLUSEnumLiteralDeclaration_0; } //"+" - public Keyword getADDPlusSignKeyword_0_0() { return cADDPlusSignKeyword_0_0; } + public Keyword getPLUSPlusSignKeyword_0_0() { return cPLUSPlusSignKeyword_0_0; } - //SUB="-" - public EnumLiteralDeclaration getSUBEnumLiteralDeclaration_1() { return cSUBEnumLiteralDeclaration_1; } + //MINUS="-" + public EnumLiteralDeclaration getMINUSEnumLiteralDeclaration_1() { return cMINUSEnumLiteralDeclaration_1; } //"-" - public Keyword getSUBHyphenMinusKeyword_1_0() { return cSUBHyphenMinusKeyword_1_0; } + public Keyword getMINUSHyphenMinusKeyword_1_0() { return cMINUSHyphenMinusKeyword_1_0; } } public class MultiplicativeBinaryOperatorElements extends AbstractEnumRuleElementFinder { private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.MultiplicativeBinaryOperator"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final EnumLiteralDeclaration cMULEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); - private final Keyword cMULAsteriskKeyword_0_0 = (Keyword)cMULEnumLiteralDeclaration_0.eContents().get(0); - private final EnumLiteralDeclaration cDIVEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); - private final Keyword cDIVSolidusKeyword_1_0 = (Keyword)cDIVEnumLiteralDeclaration_1.eContents().get(0); + private final EnumLiteralDeclaration cMULTIPLYEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); + private final Keyword cMULTIPLYAsteriskKeyword_0_0 = (Keyword)cMULTIPLYEnumLiteralDeclaration_0.eContents().get(0); + private final EnumLiteralDeclaration cDIVIDEEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); + private final Keyword cDIVIDESolidusKeyword_1_0 = (Keyword)cDIVIDEEnumLiteralDeclaration_1.eContents().get(0); //enum MultiplicativeBinaryOperator returns BinaryOperator: - // MUL="*" | DIV="/"; + // MULTIPLY="*" | DIVIDE="/"; public EnumRule getRule() { return rule; } - //MUL="*" | DIV="/" + //MULTIPLY="*" | DIVIDE="/" public Alternatives getAlternatives() { return cAlternatives; } - //MUL="*" - public EnumLiteralDeclaration getMULEnumLiteralDeclaration_0() { return cMULEnumLiteralDeclaration_0; } + //MULTIPLY="*" + public EnumLiteralDeclaration getMULTIPLYEnumLiteralDeclaration_0() { return cMULTIPLYEnumLiteralDeclaration_0; } //"*" - public Keyword getMULAsteriskKeyword_0_0() { return cMULAsteriskKeyword_0_0; } + public Keyword getMULTIPLYAsteriskKeyword_0_0() { return cMULTIPLYAsteriskKeyword_0_0; } - //DIV="/" - public EnumLiteralDeclaration getDIVEnumLiteralDeclaration_1() { return cDIVEnumLiteralDeclaration_1; } + //DIVIDE="/" + public EnumLiteralDeclaration getDIVIDEEnumLiteralDeclaration_1() { return cDIVIDEEnumLiteralDeclaration_1; } //"/" - public Keyword getDIVSolidusKeyword_1_0() { return cDIVSolidusKeyword_1_0; } + public Keyword getDIVIDESolidusKeyword_1_0() { return cDIVIDESolidusKeyword_1_0; } } public class ExponentialOpElements extends AbstractEnumRuleElementFinder { private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ExponentialOp"); @@ -2600,34 +2968,30 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"^" public Keyword getPOWCircumflexAccentKeyword_0() { return cPOWCircumflexAccentKeyword_0; } } - public class UnaryOpElements extends AbstractEnumRuleElementFinder { - private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UnaryOp"); + public class UnaryOperatorElements extends AbstractEnumRuleElementFinder { + private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.UnaryOperator"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final EnumLiteralDeclaration cNEGEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); - private final Keyword cNEGExclamationMarkKeyword_0_0 = (Keyword)cNEGEnumLiteralDeclaration_0.eContents().get(0); + private final EnumLiteralDeclaration cNOTEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); + private final Keyword cNOTExclamationMarkKeyword_0_0 = (Keyword)cNOTEnumLiteralDeclaration_0.eContents().get(0); private final EnumLiteralDeclaration cPLUSEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); private final Keyword cPLUSPlusSignKeyword_1_0 = (Keyword)cPLUSEnumLiteralDeclaration_1.eContents().get(0); private final EnumLiteralDeclaration cMINUSEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2); private final Keyword cMINUSHyphenMinusKeyword_2_0 = (Keyword)cMINUSEnumLiteralDeclaration_2.eContents().get(0); - private final EnumLiteralDeclaration cMAYEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3); - private final Keyword cMAYMayKeyword_3_0 = (Keyword)cMAYEnumLiteralDeclaration_3.eContents().get(0); - private final EnumLiteralDeclaration cMUSTEnumLiteralDeclaration_4 = (EnumLiteralDeclaration)cAlternatives.eContents().get(4); - private final Keyword cMUSTMustKeyword_4_0 = (Keyword)cMUSTEnumLiteralDeclaration_4.eContents().get(0); - private final EnumLiteralDeclaration cCURRENTEnumLiteralDeclaration_5 = (EnumLiteralDeclaration)cAlternatives.eContents().get(5); - private final Keyword cCURRENTCurrentKeyword_5_0 = (Keyword)cCURRENTEnumLiteralDeclaration_5.eContents().get(0); - - //enum UnaryOp: - // NEG="!" | PLUS="+" | MINUS="-" | MAY="may" | MUST="must" | CURRENT="current"; + private final EnumLiteralDeclaration cMAYBEEnumLiteralDeclaration_3 = (EnumLiteralDeclaration)cAlternatives.eContents().get(3); + private final Keyword cMAYBEQuestionMarkKeyword_3_0 = (Keyword)cMAYBEEnumLiteralDeclaration_3.eContents().get(0); + + //enum UnaryOperator: + // NOT="!" | PLUS="+" | MINUS="-" | MAYBE="?"; public EnumRule getRule() { return rule; } - //NEG="!" | PLUS="+" | MINUS="-" | MAY="may" | MUST="must" | CURRENT="current" + //NOT="!" | PLUS="+" | MINUS="-" | MAYBE="?" public Alternatives getAlternatives() { return cAlternatives; } - //NEG="!" - public EnumLiteralDeclaration getNEGEnumLiteralDeclaration_0() { return cNEGEnumLiteralDeclaration_0; } + //NOT="!" + public EnumLiteralDeclaration getNOTEnumLiteralDeclaration_0() { return cNOTEnumLiteralDeclaration_0; } //"!" - public Keyword getNEGExclamationMarkKeyword_0_0() { return cNEGExclamationMarkKeyword_0_0; } + public Keyword getNOTExclamationMarkKeyword_0_0() { return cNOTExclamationMarkKeyword_0_0; } //PLUS="+" public EnumLiteralDeclaration getPLUSEnumLiteralDeclaration_1() { return cPLUSEnumLiteralDeclaration_1; } @@ -2641,58 +3005,11 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //"-" public Keyword getMINUSHyphenMinusKeyword_2_0() { return cMINUSHyphenMinusKeyword_2_0; } - //MAY="may" - public EnumLiteralDeclaration getMAYEnumLiteralDeclaration_3() { return cMAYEnumLiteralDeclaration_3; } - - //"may" - public Keyword getMAYMayKeyword_3_0() { return cMAYMayKeyword_3_0; } - - //MUST="must" - public EnumLiteralDeclaration getMUSTEnumLiteralDeclaration_4() { return cMUSTEnumLiteralDeclaration_4; } - - //"must" - public Keyword getMUSTMustKeyword_4_0() { return cMUSTMustKeyword_4_0; } - - //CURRENT="current" - public EnumLiteralDeclaration getCURRENTEnumLiteralDeclaration_5() { return cCURRENTEnumLiteralDeclaration_5; } + //MAYBE="?" + public EnumLiteralDeclaration getMAYBEEnumLiteralDeclaration_3() { return cMAYBEEnumLiteralDeclaration_3; } - //"current" - public Keyword getCURRENTCurrentKeyword_5_0() { return cCURRENTCurrentKeyword_5_0; } - } - public class QuantifierElements extends AbstractEnumRuleElementFinder { - private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.Quantifier"); - private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final EnumLiteralDeclaration cEXISTSEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); - private final Keyword cEXISTSExistsKeyword_0_0 = (Keyword)cEXISTSEnumLiteralDeclaration_0.eContents().get(0); - private final EnumLiteralDeclaration cFORALLEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); - private final Keyword cFORALLForallKeyword_1_0 = (Keyword)cFORALLEnumLiteralDeclaration_1.eContents().get(0); - private final EnumLiteralDeclaration cCOUNTEnumLiteralDeclaration_2 = (EnumLiteralDeclaration)cAlternatives.eContents().get(2); - private final Keyword cCOUNTCountKeyword_2_0 = (Keyword)cCOUNTEnumLiteralDeclaration_2.eContents().get(0); - - //enum Quantifier: - // EXISTS="exists" | FORALL="forall" | COUNT="count"; - public EnumRule getRule() { return rule; } - - //EXISTS="exists" | FORALL="forall" | COUNT="count" - public Alternatives getAlternatives() { return cAlternatives; } - - //EXISTS="exists" - public EnumLiteralDeclaration getEXISTSEnumLiteralDeclaration_0() { return cEXISTSEnumLiteralDeclaration_0; } - - //"exists" - public Keyword getEXISTSExistsKeyword_0_0() { return cEXISTSExistsKeyword_0_0; } - - //FORALL="forall" - public EnumLiteralDeclaration getFORALLEnumLiteralDeclaration_1() { return cFORALLEnumLiteralDeclaration_1; } - - //"forall" - public Keyword getFORALLForallKeyword_1_0() { return cFORALLForallKeyword_1_0; } - - //COUNT="count" - public EnumLiteralDeclaration getCOUNTEnumLiteralDeclaration_2() { return cCOUNTEnumLiteralDeclaration_2; } - - //"count" - public Keyword getCOUNTCountKeyword_2_0() { return cCOUNTCountKeyword_2_0; } + //"?" + public Keyword getMAYBEQuestionMarkKeyword_3_0() { return cMAYBEQuestionMarkKeyword_3_0; } } public class LogicValueElements extends AbstractEnumRuleElementFinder { private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.LogicValue"); @@ -2740,49 +3057,53 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { public class ObjectiveKindElements extends AbstractEnumRuleElementFinder { private final EnumRule rule = (EnumRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.ObjectiveKind"); private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1); - private final EnumLiteralDeclaration cMINIMIZEEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); - private final Keyword cMINIMIZEMinimizeKeyword_0_0 = (Keyword)cMINIMIZEEnumLiteralDeclaration_0.eContents().get(0); - private final EnumLiteralDeclaration cMAXIMIZEEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); - private final Keyword cMAXIMIZEMaximizeKeyword_1_0 = (Keyword)cMAXIMIZEEnumLiteralDeclaration_1.eContents().get(0); + private final EnumLiteralDeclaration cMINIMIZATIONEnumLiteralDeclaration_0 = (EnumLiteralDeclaration)cAlternatives.eContents().get(0); + private final Keyword cMINIMIZATIONMinimizeKeyword_0_0 = (Keyword)cMINIMIZATIONEnumLiteralDeclaration_0.eContents().get(0); + private final EnumLiteralDeclaration cMAXIMIZATIONEnumLiteralDeclaration_1 = (EnumLiteralDeclaration)cAlternatives.eContents().get(1); + private final Keyword cMAXIMIZATIONMaximizeKeyword_1_0 = (Keyword)cMAXIMIZATIONEnumLiteralDeclaration_1.eContents().get(0); //enum ObjectiveKind: - // MINIMIZE="minimize" | MAXIMIZE="maximize"; + // MINIMIZATION="minimize" | MAXIMIZATION="maximize"; public EnumRule getRule() { return rule; } - //MINIMIZE="minimize" | MAXIMIZE="maximize" + //MINIMIZATION="minimize" | MAXIMIZATION="maximize" public Alternatives getAlternatives() { return cAlternatives; } - //MINIMIZE="minimize" - public EnumLiteralDeclaration getMINIMIZEEnumLiteralDeclaration_0() { return cMINIMIZEEnumLiteralDeclaration_0; } + //MINIMIZATION="minimize" + public EnumLiteralDeclaration getMINIMIZATIONEnumLiteralDeclaration_0() { return cMINIMIZATIONEnumLiteralDeclaration_0; } //"minimize" - public Keyword getMINIMIZEMinimizeKeyword_0_0() { return cMINIMIZEMinimizeKeyword_0_0; } + public Keyword getMINIMIZATIONMinimizeKeyword_0_0() { return cMINIMIZATIONMinimizeKeyword_0_0; } - //MAXIMIZE="maximize" - public EnumLiteralDeclaration getMAXIMIZEEnumLiteralDeclaration_1() { return cMAXIMIZEEnumLiteralDeclaration_1; } + //MAXIMIZATION="maximize" + public EnumLiteralDeclaration getMAXIMIZATIONEnumLiteralDeclaration_1() { return cMAXIMIZATIONEnumLiteralDeclaration_1; } //"maximize" - public Keyword getMAXIMIZEMaximizeKeyword_1_0() { return cMAXIMIZEMaximizeKeyword_1_0; } + public Keyword getMAXIMIZATIONMaximizeKeyword_1_0() { return cMAXIMIZATIONMaximizeKeyword_1_0; } } private final ProblemElements pProblem; private final StatementElements pStatement; + private final ImportElements pImport; + private final UriImportElements pUriImport; + private final NamespaceImportElements pNamespaceImport; private final AssertionOrDefinitionElements pAssertionOrDefinition; private final PredicateDefinitionElements pPredicateDefinition; - private final UnnamedErrorPrediateDefinitionElements pUnnamedErrorPrediateDefinition; - private final DefaultDefinitionElements pDefaultDefinition; - private final MetricDefinitionElements pMetricDefinition; - private final ExternPredicateDefinitionElements pExternPredicateDefinition; - private final ExternMetricDefinitionElements pExternMetricDefinition; - private final ExternAggregatorDefinitionElements pExternAggregatorDefinition; - private final ExternDatatypeDefinitionElements pExternDatatypeDefinition; - private final VariableElements pVariable; + private final UnnamedErrorPredicateDefintionElements pUnnamedErrorPredicateDefintion; + private final DefaultAssertionElements pDefaultAssertion; + private final FunctionDefinitionElements pFunctionDefinition; + private final TypeReferenceElements pTypeReference; + private final AttributeKindElements eAttributeKind; + private final AttributeElements pAttribute; + private final ExternDeclarationElements pExternDeclaration; + private final ExternPredicateDeclarationElements pExternPredicateDeclaration; + private final ExternFunctionDeclarationElements pExternFunctionDeclaration; + private final ExternAggregationOperatorDeclarationElements pExternAggregationOperatorDeclaration; + private final ExternDatatypeDeclarationElements pExternDatatypeDeclaration; private final ExpressionElements pExpression; - private final IfElseElements pIfElse; - private final LetElements pLet; + private final ConditionalExpressionElements pConditionalExpression; + private final LetExpressionElements pLetExpression; private final LetBindingElements pLetBinding; - private final ImplicationOperatorElements eImplicationOperator; - private final ImplicationExpressionElements pImplicationExpression; private final DisjunctiveExpressionElements pDisjunctiveExpression; private final CaseElements pCase; private final ConjunctiveExpressionElements pConjunctiveExpression; @@ -2795,44 +3116,47 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { private final ExponentialOpElements eExponentialOp; private final ExponentialExpressionElements pExponentialExpression; private final CastExpressionElements pCastExpression; - private final UnaryOpElements eUnaryOp; + private final UnaryOperatorElements eUnaryOperator; private final UnaryExpressionElements pUnaryExpression; - private final AggregationExpressionElements pAggregationExpression; - private final LocalVariablesElements pLocalVariables; - private final QuantifierElements eQuantifier; - private final QuantifiedExpressionElements pQuantifiedExpression; + private final BracedAggregateExpressionElements pBracedAggregateExpression; private final AggregationElements pAggregation; + private final CountElements pCount; private final AtomicExpressionElements pAtomicExpression; private final CallElements pCall; private final ArgumentListElements pArgumentList; private final ArgumentElements pArgument; private final ExpressionArgumentElements pExpressionArgument; private final StarArgumentElements pStarArgument; - private final TypedArgumentElements pTypedArgument; + private final TypedVariableArgumentElements pTypedVariableArgument; private final TypedStarArgumentElements pTypedStarArgument; private final ReferenceElements pReference; + private final PathComponentElements pPathComponent; private final IntervalElements pInterval; private final LiteralElements pLiteral; private final LogicValueElements eLogicValue; private final LogicLiteralElements pLogicLiteral; - private final NumericLiteralElements pNumericLiteral; + private final IntLiteralElements pIntLiteral; + private final RealLiteralElements pRealLiteral; private final InfinityLiteralElements pInfinityLiteral; - private final EmptyIntervalLiteralElements pEmptyIntervalLiteral; + private final EmptyLiteralElements pEmptyLiteral; private final StringLiteralElements pStringLiteral; - private final ClassDefinitionElements pClassDefinition; - private final MemberDefinitionElements pMemberDefinition; + private final ClassDeclarationElements pClassDeclaration; + private final FieldElements pField; private final MultiplicityElements pMultiplicity; - private final ManyMultiplicityElements pManyMultiplicity; + private final UnboundedMultiplicityElements pUnboundedMultiplicity; private final ExactMultiplicityElements pExactMultiplicity; private final BoundedMultiplicityElements pBoundedMultiplicity; - private final ScopeDefinitionElements pScopeDefinition; - private final ExactScopeDefinitionElements pExactScopeDefinition; - private final BoundedScopeDefinitionElements pBoundedScopeDefinition; - private final LowerBoundedScopeDefinitionElements pLowerBoundedScopeDefinition; + private final EnumDeclarationElements pEnumDeclaration; + private final EnumLiteralElements pEnumLiteral; + private final ScopeDeclarationElements pScopeDeclaration; + private final ExactScopeElements pExactScope; + private final BoundedScopeElements pBoundedScope; + private final LowerBoundedScopeElements pLowerBoundedScope; private final ObjectiveKindElements eObjectiveKind; - private final ObjectiveDefinitionElements pObjectiveDefinition; + private final ObjectiveDeclarationElements pObjectiveDeclaration; private final UpperMultiplictyElements pUpperMultiplicty; private final RealElements pReal; + private final QualifiedNameSegmentElements pQualifiedNameSegment; private final QualifiedNameElements pQualifiedName; private final TerminalRule tSTRING; private final TerminalRule tQUOTED_ID; @@ -2852,22 +3176,26 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { this.gaTerminals = gaTerminals; this.pProblem = new ProblemElements(); this.pStatement = new StatementElements(); + this.pImport = new ImportElements(); + this.pUriImport = new UriImportElements(); + this.pNamespaceImport = new NamespaceImportElements(); this.pAssertionOrDefinition = new AssertionOrDefinitionElements(); this.pPredicateDefinition = new PredicateDefinitionElements(); - this.pUnnamedErrorPrediateDefinition = new UnnamedErrorPrediateDefinitionElements(); - this.pDefaultDefinition = new DefaultDefinitionElements(); - this.pMetricDefinition = new MetricDefinitionElements(); - this.pExternPredicateDefinition = new ExternPredicateDefinitionElements(); - this.pExternMetricDefinition = new ExternMetricDefinitionElements(); - this.pExternAggregatorDefinition = new ExternAggregatorDefinitionElements(); - this.pExternDatatypeDefinition = new ExternDatatypeDefinitionElements(); - this.pVariable = new VariableElements(); + this.pUnnamedErrorPredicateDefintion = new UnnamedErrorPredicateDefintionElements(); + this.pDefaultAssertion = new DefaultAssertionElements(); + this.pFunctionDefinition = new FunctionDefinitionElements(); + this.pTypeReference = new TypeReferenceElements(); + this.eAttributeKind = new AttributeKindElements(); + this.pAttribute = new AttributeElements(); + this.pExternDeclaration = new ExternDeclarationElements(); + this.pExternPredicateDeclaration = new ExternPredicateDeclarationElements(); + this.pExternFunctionDeclaration = new ExternFunctionDeclarationElements(); + this.pExternAggregationOperatorDeclaration = new ExternAggregationOperatorDeclarationElements(); + this.pExternDatatypeDeclaration = new ExternDatatypeDeclarationElements(); this.pExpression = new ExpressionElements(); - this.pIfElse = new IfElseElements(); - this.pLet = new LetElements(); + this.pConditionalExpression = new ConditionalExpressionElements(); + this.pLetExpression = new LetExpressionElements(); this.pLetBinding = new LetBindingElements(); - this.eImplicationOperator = new ImplicationOperatorElements(); - this.pImplicationExpression = new ImplicationExpressionElements(); this.pDisjunctiveExpression = new DisjunctiveExpressionElements(); this.pCase = new CaseElements(); this.pConjunctiveExpression = new ConjunctiveExpressionElements(); @@ -2880,44 +3208,47 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { this.eExponentialOp = new ExponentialOpElements(); this.pExponentialExpression = new ExponentialExpressionElements(); this.pCastExpression = new CastExpressionElements(); - this.eUnaryOp = new UnaryOpElements(); + this.eUnaryOperator = new UnaryOperatorElements(); this.pUnaryExpression = new UnaryExpressionElements(); - this.pAggregationExpression = new AggregationExpressionElements(); - this.pLocalVariables = new LocalVariablesElements(); - this.eQuantifier = new QuantifierElements(); - this.pQuantifiedExpression = new QuantifiedExpressionElements(); + this.pBracedAggregateExpression = new BracedAggregateExpressionElements(); this.pAggregation = new AggregationElements(); + this.pCount = new CountElements(); this.pAtomicExpression = new AtomicExpressionElements(); this.pCall = new CallElements(); this.pArgumentList = new ArgumentListElements(); this.pArgument = new ArgumentElements(); this.pExpressionArgument = new ExpressionArgumentElements(); this.pStarArgument = new StarArgumentElements(); - this.pTypedArgument = new TypedArgumentElements(); + this.pTypedVariableArgument = new TypedVariableArgumentElements(); this.pTypedStarArgument = new TypedStarArgumentElements(); this.pReference = new ReferenceElements(); + this.pPathComponent = new PathComponentElements(); this.pInterval = new IntervalElements(); this.pLiteral = new LiteralElements(); this.eLogicValue = new LogicValueElements(); this.pLogicLiteral = new LogicLiteralElements(); - this.pNumericLiteral = new NumericLiteralElements(); + this.pIntLiteral = new IntLiteralElements(); + this.pRealLiteral = new RealLiteralElements(); this.pInfinityLiteral = new InfinityLiteralElements(); - this.pEmptyIntervalLiteral = new EmptyIntervalLiteralElements(); + this.pEmptyLiteral = new EmptyLiteralElements(); this.pStringLiteral = new StringLiteralElements(); - this.pClassDefinition = new ClassDefinitionElements(); - this.pMemberDefinition = new MemberDefinitionElements(); + this.pClassDeclaration = new ClassDeclarationElements(); + this.pField = new FieldElements(); this.pMultiplicity = new MultiplicityElements(); - this.pManyMultiplicity = new ManyMultiplicityElements(); + this.pUnboundedMultiplicity = new UnboundedMultiplicityElements(); this.pExactMultiplicity = new ExactMultiplicityElements(); this.pBoundedMultiplicity = new BoundedMultiplicityElements(); - this.pScopeDefinition = new ScopeDefinitionElements(); - this.pExactScopeDefinition = new ExactScopeDefinitionElements(); - this.pBoundedScopeDefinition = new BoundedScopeDefinitionElements(); - this.pLowerBoundedScopeDefinition = new LowerBoundedScopeDefinitionElements(); + this.pEnumDeclaration = new EnumDeclarationElements(); + this.pEnumLiteral = new EnumLiteralElements(); + this.pScopeDeclaration = new ScopeDeclarationElements(); + this.pExactScope = new ExactScopeElements(); + this.pBoundedScope = new BoundedScopeElements(); + this.pLowerBoundedScope = new LowerBoundedScopeElements(); this.eObjectiveKind = new ObjectiveKindElements(); - this.pObjectiveDefinition = new ObjectiveDefinitionElements(); + this.pObjectiveDeclaration = new ObjectiveDeclarationElements(); this.pUpperMultiplicty = new UpperMultiplictyElements(); this.pReal = new RealElements(); + this.pQualifiedNameSegment = new QualifiedNameSegmentElements(); this.pQualifiedName = new QualifiedNameElements(); this.tSTRING = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.STRING"); this.tQUOTED_ID = (TerminalRule) GrammarUtil.findRuleForName(getGrammar(), "org.eclipse.viatra.solver.language.SolverLanguage.QUOTED_ID"); @@ -2955,6 +3286,8 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { //Problem: + // ("problem" name=QualifiedName FULL_STOP)? + // imports+=Import* // statements+=Statement*; public ProblemElements getProblemAccess() { return pProblem; @@ -2965,9 +3298,8 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //Statement: - // (AssertionOrDefinition | PredicateDefinition | UnnamedErrorPrediateDefinition | DefaultDefinition | MetricDefinition - // | ExternPredicateDefinition | ExternMetricDefinition | ExternAggregatorDefinition | ExternDatatypeDefinition | - // ClassDefinition | ScopeDefinition | ObjectiveDefinition) FULL_STOP; + // AssertionOrDefinition | PredicateDefinition | UnnamedErrorPredicateDefintion | DefaultAssertion | FunctionDefinition + // | Attribute | ExternDeclaration | ScopeDeclaration | ObjectiveDeclaration | ClassDeclaration | EnumDeclaration; public StatementElements getStatementAccess() { return pStatement; } @@ -2976,9 +3308,39 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getStatementAccess().getRule(); } + //Import: + // UriImport | NamespaceImport; + public ImportElements getImportAccess() { + return pImport; + } + + public ParserRule getImportRule() { + return getImportAccess().getRule(); + } + + //UriImport: + // "import" uri=STRING ("as" alias=QualifiedName) FULL_STOP; + public UriImportElements getUriImportAccess() { + return pUriImport; + } + + public ParserRule getUriImportRule() { + return getUriImportAccess().getRule(); + } + + //NamespaceImport: + // "import" importedNamespace=QualifiedName ("as" alias=QualifiedName) FULL_STOP; + public NamespaceImportElements getNamespaceImportAccess() { + return pNamespaceImport; + } + + public ParserRule getNamespaceImportRule() { + return getNamespaceImportAccess().getRule(); + } + //AssertionOrDefinition Statement: - // Expression ({Interpretation.body=current} ":" range=Expression | {PredicateDefinition.head=current} ":-" - // body=Expression | {MetricDefinition.head=current} "=" body=Expression)?; + // Expression ({Assertion.expression=current} (":" range=Expression)? | {PredicateDefinition.head=current} ":-" + // body=Expression | {FunctionDefinition.head=current} ":=" body=Expression) FULL_STOP; public AssertionOrDefinitionElements getAssertionOrDefinitionAccess() { return pAssertionOrDefinition; } @@ -2988,7 +3350,8 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //PredicateDefinition: - // (functional?="functional" error?="error"? | error?="error" functional?="functional"?) head=Call ":-" body=Expression; + // (functional?="functional" error?="error"? | error?="error" functional?="functional"?) head=Call ":-" body=Expression + // FULL_STOP; public PredicateDefinitionElements getPredicateDefinitionAccess() { return pPredicateDefinition; } @@ -2997,89 +3360,121 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getPredicateDefinitionAccess().getRule(); } - //UnnamedErrorPrediateDefinition: - // "error" argumentList=ArgumentList ":-" body=Expression; - public UnnamedErrorPrediateDefinitionElements getUnnamedErrorPrediateDefinitionAccess() { - return pUnnamedErrorPrediateDefinition; + //UnnamedErrorPredicateDefintion: + // "error" argumentList=ArgumentList ":-" body=Expression FULL_STOP; + public UnnamedErrorPredicateDefintionElements getUnnamedErrorPredicateDefintionAccess() { + return pUnnamedErrorPredicateDefintion; + } + + public ParserRule getUnnamedErrorPredicateDefintionRule() { + return getUnnamedErrorPredicateDefintionAccess().getRule(); + } + + //DefaultAssertion: + // "default" expression=Call (":" range=Expression)? FULL_STOP; + public DefaultAssertionElements getDefaultAssertionAccess() { + return pDefaultAssertion; + } + + public ParserRule getDefaultAssertionRule() { + return getDefaultAssertionAccess().getRule(); + } + + //FunctionDefinition: + // resultType=[Symbol|QualifiedName] head=Call ":=" body=Expression FULL_STOP; + public FunctionDefinitionElements getFunctionDefinitionAccess() { + return pFunctionDefinition; } - public ParserRule getUnnamedErrorPrediateDefinitionRule() { - return getUnnamedErrorPrediateDefinitionAccess().getRule(); + public ParserRule getFunctionDefinitionRule() { + return getFunctionDefinitionAccess().getRule(); } - //DefaultDefinition: - // "default" head=Call ":" range=Expression; - public DefaultDefinitionElements getDefaultDefinitionAccess() { - return pDefaultDefinition; + //TypeReference: + // type=[Symbol|QualifiedName] forceObjectType?="object"?; + public TypeReferenceElements getTypeReferenceAccess() { + return pTypeReference; } - public ParserRule getDefaultDefinitionRule() { - return getDefaultDefinitionAccess().getRule(); + public ParserRule getTypeReferenceRule() { + return getTypeReferenceAccess().getRule(); } - //MetricDefinition: - // type=[NamedElement|QualifiedName] head=Call "=" body=Expression; - public MetricDefinitionElements getMetricDefinitionAccess() { - return pMetricDefinition; + //enum AttributeKind: + // FUNCTIONAL="functional" | ERROR="error" | ROOT="root" | CONTAINMENT="containment"; + public AttributeKindElements getAttributeKindAccess() { + return eAttributeKind; } - public ParserRule getMetricDefinitionRule() { - return getMetricDefinitionAccess().getRule(); + public EnumRule getAttributeKindRule() { + return getAttributeKindAccess().getRule(); } - //ExternPredicateDefinition: - // "extern" name=QualifiedName argumentList=ArgumentList; - public ExternPredicateDefinitionElements getExternPredicateDefinitionAccess() { - return pExternPredicateDefinition; + //Attribute: + // kind=AttributeKind target=[Symbol|QualifiedName] FULL_STOP; + public AttributeElements getAttributeAccess() { + return pAttribute; } - public ParserRule getExternPredicateDefinitionRule() { - return getExternPredicateDefinitionAccess().getRule(); + public ParserRule getAttributeRule() { + return getAttributeAccess().getRule(); } - //ExternMetricDefinition: - // "extern" type=[NamedElement|QualifiedName] name=QualifiedName argumentList=ArgumentList; - public ExternMetricDefinitionElements getExternMetricDefinitionAccess() { - return pExternMetricDefinition; + //ExternDeclaration: + // ExternPredicateDeclaration | ExternFunctionDeclaration | ExternAggregationOperatorDeclaration | + // ExternDatatypeDeclaration; + public ExternDeclarationElements getExternDeclarationAccess() { + return pExternDeclaration; } - public ParserRule getExternMetricDefinitionRule() { - return getExternMetricDefinitionAccess().getRule(); + public ParserRule getExternDeclarationRule() { + return getExternDeclarationAccess().getRule(); } - //ExternAggregatorDefinition: - // "extern" type=[NamedElement|QualifiedName] name=QualifiedName "{" inputType=[NamedElement|QualifiedName] "..." "}"; - public ExternAggregatorDefinitionElements getExternAggregatorDefinitionAccess() { - return pExternAggregatorDefinition; + //ExternPredicateDeclaration: + // "extern" (functional?="functional"? & error?="error"?) name=QualifiedName argumentList=ArgumentList FULL_STOP; + public ExternPredicateDeclarationElements getExternPredicateDeclarationAccess() { + return pExternPredicateDeclaration; } - public ParserRule getExternAggregatorDefinitionRule() { - return getExternAggregatorDefinitionAccess().getRule(); + public ParserRule getExternPredicateDeclarationRule() { + return getExternPredicateDeclarationAccess().getRule(); } - //ExternDatatypeDefinition: - // "extern" "datatype" name=QualifiedName ("extends" supertypes+=[NamedElement|QualifiedName] ("," - // supertypes+=[NamedElement|QualifiedName])*); - public ExternDatatypeDefinitionElements getExternDatatypeDefinitionAccess() { - return pExternDatatypeDefinition; + //ExternFunctionDeclaration: + // "extern" resultType=[Symbol|QualifiedName] name=QualifiedName argumentList=ArgumentList FULL_STOP; + public ExternFunctionDeclarationElements getExternFunctionDeclarationAccess() { + return pExternFunctionDeclaration; } - public ParserRule getExternDatatypeDefinitionRule() { - return getExternDatatypeDefinitionAccess().getRule(); + public ParserRule getExternFunctionDeclarationRule() { + return getExternFunctionDeclarationAccess().getRule(); } - //Variable: - // type=[NamedElement|QualifiedName]? name=ID; - public VariableElements getVariableAccess() { - return pVariable; + //ExternAggregationOperatorDeclaration: + // "extern" resultType=[Symbol|QualifiedName] name=QualifiedName "{" argumentType=[Symbol|QualifiedName] "..." "}" + // FULL_STOP; + public ExternAggregationOperatorDeclarationElements getExternAggregationOperatorDeclarationAccess() { + return pExternAggregationOperatorDeclaration; } - public ParserRule getVariableRule() { - return getVariableAccess().getRule(); + public ParserRule getExternAggregationOperatorDeclarationRule() { + return getExternAggregationOperatorDeclarationAccess().getRule(); + } + + //ExternDatatypeDeclaration: + // "extern" "datatype" name=QualifiedName FULL_STOP; + public ExternDatatypeDeclarationElements getExternDatatypeDeclarationAccess() { + return pExternDatatypeDeclaration; + } + + public ParserRule getExternDatatypeDeclarationRule() { + return getExternDatatypeDeclarationAccess().getRule(); } //Expression: - // IfElse | Let | ImplicationExpression; + // ConditionalExpression | LetExpression | DisjunctiveExpression ({Forall.condition=current} "=>" + // body=DisjunctiveExpression)?; public ExpressionElements getExpressionAccess() { return pExpression; } @@ -3088,28 +3483,28 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getExpressionAccess().getRule(); } - //IfElse: - // "if" condition=Expression "then" then=Expression "else" else=Expression; - public IfElseElements getIfElseAccess() { - return pIfElse; + //ConditionalExpression: + // "if" condition=DisjunctiveExpression "then" then=Expression "else" else=Expression; + public ConditionalExpressionElements getConditionalExpressionAccess() { + return pConditionalExpression; } - public ParserRule getIfElseRule() { - return getIfElseAccess().getRule(); + public ParserRule getConditionalExpressionRule() { + return getConditionalExpressionAccess().getRule(); } - //Let: + //LetExpression: // "let" bindings+=LetBinding ("," bindings+=LetBinding)* "in" body=Expression; - public LetElements getLetAccess() { - return pLet; + public LetExpressionElements getLetExpressionAccess() { + return pLetExpression; } - public ParserRule getLetRule() { - return getLetAccess().getRule(); + public ParserRule getLetExpressionRule() { + return getLetExpressionAccess().getRule(); } //LetBinding: - // variable=Variable "=" value=AdditiveExpression; + // type=[Symbol|QualifiedName]? name=ID "=" value=AdditiveExpression; public LetBindingElements getLetBindingAccess() { return pLetBinding; } @@ -3118,26 +3513,6 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getLetBindingAccess().getRule(); } - //enum ImplicationOperator returns BinaryOperator: - // IMPLIES="=>"; - public ImplicationOperatorElements getImplicationOperatorAccess() { - return eImplicationOperator; - } - - public EnumRule getImplicationOperatorRule() { - return getImplicationOperatorAccess().getRule(); - } - - //ImplicationExpression Expression: - // DisjunctiveExpression ({BinaryExpression.left=current} op=ImplicationOperator right=ImplicationExpression)?; - public ImplicationExpressionElements getImplicationExpressionAccess() { - return pImplicationExpression; - } - - public ParserRule getImplicationExpressionRule() { - return getImplicationExpressionAccess().getRule(); - } - //DisjunctiveExpression Expression: // ConjunctiveExpression ({Disjunction.children+=current} (";" children+=ConjunctiveExpression)+ | // {Case.condition=current} "->" body=ConjunctiveExpression {Switch.cases+=current} (";" cases+=Case)*)?; @@ -3170,7 +3545,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //enum ComparisonOperator returns BinaryOperator: - // EQ="==" | NOT_EQ="!=" | LESS="<" | LESS_EQ="<=" | GREATER=">" | GREATER_EQ=">=" | IN="in"; + // EQUALS="==" | NOT_EQUALS="!=" | LESS="<" | LESS_EQUALS="<=" | GREATER=">" | GREATER_EQUALS=">=" | IN="in"; public ComparisonOperatorElements getComparisonOperatorAccess() { return eComparisonOperator; } @@ -3180,7 +3555,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //ComparisonExpression Expression: - // AdditiveExpression ({Comparison.left=current} op=ComparisonOperator right=AdditiveExpression)?; + // AdditiveExpression ({BinaryExpression.left=current} op=ComparisonOperator right=AdditiveExpression)?; public ComparisonExpressionElements getComparisonExpressionAccess() { return pComparisonExpression; } @@ -3190,7 +3565,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //enum AdditiveBinaryOperator returns BinaryOperator: - // ADD="+" | SUB="-"; + // PLUS="+" | MINUS="-"; public AdditiveBinaryOperatorElements getAdditiveBinaryOperatorAccess() { return eAdditiveBinaryOperator; } @@ -3210,7 +3585,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //enum MultiplicativeBinaryOperator returns BinaryOperator: - // MUL="*" | DIV="/"; + // MULTIPLY="*" | DIVIDE="/"; public MultiplicativeBinaryOperatorElements getMultiplicativeBinaryOperatorAccess() { return eMultiplicativeBinaryOperator; } @@ -3250,7 +3625,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //CastExpression Expression: - // UnaryExpression ({CastExpression.body=current} "as" type=[NamedElement|QualifiedName])?; + // UnaryExpression ({CastExpression.body=current} "as" targetType=[Symbol|QualifiedName])?; public CastExpressionElements getCastExpressionAccess() { return pCastExpression; } @@ -3259,18 +3634,18 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getCastExpressionAccess().getRule(); } - //enum UnaryOp: - // NEG="!" | PLUS="+" | MINUS="-" | MAY="may" | MUST="must" | CURRENT="current"; - public UnaryOpElements getUnaryOpAccess() { - return eUnaryOp; + //enum UnaryOperator: + // NOT="!" | PLUS="+" | MINUS="-" | MAYBE="?"; + public UnaryOperatorElements getUnaryOperatorAccess() { + return eUnaryOperator; } - public EnumRule getUnaryOpRule() { - return getUnaryOpAccess().getRule(); + public EnumRule getUnaryOperatorRule() { + return getUnaryOperatorAccess().getRule(); } //UnaryExpression Expression: - // AggregationExpression | {UnaryExpression} op=UnaryOp body=AggregationExpression; + // BracedAggregateExpression | {UnaryExpression} op=UnaryOperator body=BracedAggregateExpression; public UnaryExpressionElements getUnaryExpressionAccess() { return pUnaryExpression; } @@ -3279,48 +3654,18 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getUnaryExpressionAccess().getRule(); } - //AggregationExpression Expression: - // AtomicExpression | QuantifiedExpression | Aggregation; - public AggregationExpressionElements getAggregationExpressionAccess() { - return pAggregationExpression; - } - - public ParserRule getAggregationExpressionRule() { - return getAggregationExpressionAccess().getRule(); - } - - //LocalVariables: - // {LocalVariables} "[" (variables+=Variable ("," variables+=Variable)*)? "]"; - public LocalVariablesElements getLocalVariablesAccess() { - return pLocalVariables; + //BracedAggregateExpression Expression: + // AtomicExpression | Aggregation | Count; + public BracedAggregateExpressionElements getBracedAggregateExpressionAccess() { + return pBracedAggregateExpression; } - public ParserRule getLocalVariablesRule() { - return getLocalVariablesAccess().getRule(); - } - - //enum Quantifier: - // EXISTS="exists" | FORALL="forall" | COUNT="count"; - public QuantifierElements getQuantifierAccess() { - return eQuantifier; - } - - public EnumRule getQuantifierRule() { - return getQuantifierAccess().getRule(); - } - - //QuantifiedExpression: - // quantifier=Quantifier localVariables=LocalVariables? "{" body=Expression "}"; - public QuantifiedExpressionElements getQuantifiedExpressionAccess() { - return pQuantifiedExpression; - } - - public ParserRule getQuantifiedExpressionRule() { - return getQuantifiedExpressionAccess().getRule(); + public ParserRule getBracedAggregateExpressionRule() { + return getBracedAggregateExpressionAccess().getRule(); } //Aggregation: - // op=[NamedElement|QualifiedName] localVariables=LocalVariables? "{" body=Expression ("|" condition=Expression)? "}"; + // op=[Symbol|QualifiedName] "{" value=Expression "|" condition=Expression "}"; public AggregationElements getAggregationAccess() { return pAggregation; } @@ -3329,6 +3674,16 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getAggregationAccess().getRule(); } + //Count: + // "count" "{" condition=Expression "}"; + public CountElements getCountAccess() { + return pCount; + } + + public ParserRule getCountRule() { + return getCountAccess().getRule(); + } + //AtomicExpression Expression: // Reference | Call | Interval | Literal | "(" Expression ")"; public AtomicExpressionElements getAtomicExpressionAccess() { @@ -3340,8 +3695,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //Call: - // functor=Reference (transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? - // argumentList=ArgumentList; + // functor=Reference argumentList=ArgumentList; public CallElements getCallAccess() { return pCall; } @@ -3361,7 +3715,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //Argument: - // ExpressionArgument | StarArgument | TypedArgument | TypedStarArgument; + // ExpressionArgument | StarArgument | TypedVariableArgument | TypedStarArgument; public ArgumentElements getArgumentAccess() { return pArgument; } @@ -3371,7 +3725,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //ExpressionArgument: - // body=ComparisonExpression; + // expression=ComparisonExpression; public ExpressionArgumentElements getExpressionArgumentAccess() { return pExpressionArgument; } @@ -3390,18 +3744,18 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getStarArgumentAccess().getRule(); } - //TypedArgument: - // type=[NamedElement|QualifiedName] variable=[NamedElement|QualifiedName]; - public TypedArgumentElements getTypedArgumentAccess() { - return pTypedArgument; + //TypedVariableArgument: + // typeReference=TypeReference name=ID; + public TypedVariableArgumentElements getTypedVariableArgumentAccess() { + return pTypedVariableArgument; } - public ParserRule getTypedArgumentRule() { - return getTypedArgumentAccess().getRule(); + public ParserRule getTypedVariableArgumentRule() { + return getTypedVariableArgumentAccess().getRule(); } //TypedStarArgument: - // type=[NamedElement|QualifiedName] "*"; + // typeReference=TypeReference "*"; public TypedStarArgumentElements getTypedStarArgumentAccess() { return pTypedStarArgument; } @@ -3411,7 +3765,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //Reference: - // referred=[NamedElement|QualifiedName]; + // components+=PathComponent ("." components+=PathComponent)*; public ReferenceElements getReferenceAccess() { return pReference; } @@ -3420,8 +3774,19 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getReferenceAccess().getRule(); } + //PathComponent: + // inverse?="~"? symbol=[Symbol|QualifiedName] (transitiveClosure?=TRANSITIVE_CLOSURE | + // reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)?; + public PathComponentElements getPathComponentAccess() { + return pPathComponent; + } + + public ParserRule getPathComponentRule() { + return getPathComponentAccess().getRule(); + } + //Interval: - // "[" lowerBound=Expression ".." upperBound=Expression "]"; + // "[" lowerBound=AdditiveExpression "," upperBound=AdditiveExpression "]"; public IntervalElements getIntervalAccess() { return pInterval; } @@ -3431,7 +3796,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //Literal: - // LogicLiteral | NumericLiteral | InfinityLiteral | EmptyIntervalLiteral | StringLiteral; + // LogicLiteral | IntLiteral | RealLiteral | InfinityLiteral | EmptyLiteral | StringLiteral; public LiteralElements getLiteralAccess() { return pLiteral; } @@ -3460,14 +3825,24 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getLogicLiteralAccess().getRule(); } - //NumericLiteral: + //IntLiteral: + // value=INT; + public IntLiteralElements getIntLiteralAccess() { + return pIntLiteral; + } + + public ParserRule getIntLiteralRule() { + return getIntLiteralAccess().getRule(); + } + + //RealLiteral: // value=Real; - public NumericLiteralElements getNumericLiteralAccess() { - return pNumericLiteral; + public RealLiteralElements getRealLiteralAccess() { + return pRealLiteral; } - public ParserRule getNumericLiteralRule() { - return getNumericLiteralAccess().getRule(); + public ParserRule getRealLiteralRule() { + return getRealLiteralAccess().getRule(); } //InfinityLiteral: @@ -3480,14 +3855,14 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getInfinityLiteralAccess().getRule(); } - //EmptyIntervalLiteral: - // {EmptyIntervalLiteral} "empty"; - public EmptyIntervalLiteralElements getEmptyIntervalLiteralAccess() { - return pEmptyIntervalLiteral; + //EmptyLiteral: + // {EmptyLiteral} "empty"; + public EmptyLiteralElements getEmptyLiteralAccess() { + return pEmptyLiteral; } - public ParserRule getEmptyIntervalLiteralRule() { - return getEmptyIntervalLiteralAccess().getRule(); + public ParserRule getEmptyLiteralRule() { + return getEmptyLiteralAccess().getRule(); } //StringLiteral: @@ -3500,31 +3875,30 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getStringLiteralAccess().getRule(); } - //ClassDefinition: - // abstract?="abstract"? "class" name=ID ("extends" superclasses+=[NamedElement|QualifiedName] ("," - // superclasses+=[NamedElement|QualifiedName])*)? - // "{" members+=MemberDefinition* "}"; - public ClassDefinitionElements getClassDefinitionAccess() { - return pClassDefinition; + //ClassDeclaration: + // (abstract?="abstract"? & root?="root"?) "class" name=ID ("extends" supertypes+=[Symbol|QualifiedName] ("," + // supertypes+=[Symbol|QualifiedName])*)? ("{" fields+=Field* "}" | FULL_STOP); + public ClassDeclarationElements getClassDeclarationAccess() { + return pClassDeclaration; } - public ParserRule getClassDefinitionRule() { - return getClassDefinitionAccess().getRule(); + public ParserRule getClassDeclarationRule() { + return getClassDeclarationAccess().getRule(); } - //MemberDefinition: - // containment?="contains"? type=[NamedElement|QualifiedName] multiplicity=Multiplicity? name=ID ("opposite" - // opposite=[NamedElement|QualifiedName])? ";"?; - public MemberDefinitionElements getMemberDefinitionAccess() { - return pMemberDefinition; + //Field: + // (containment?="contains" | crossReference?="refers")? type=[Symbol|QualifiedName] multiplicity=Multiplicity? + // name=ID ("opposite" opposite=[Symbol|QualifiedName])? ";"?; + public FieldElements getFieldAccess() { + return pField; } - public ParserRule getMemberDefinitionRule() { - return getMemberDefinitionAccess().getRule(); + public ParserRule getFieldRule() { + return getFieldAccess().getRule(); } //Multiplicity: - // ManyMultiplicity | ExactMultiplicity | BoundedMultiplicity; + // UnboundedMultiplicity | ExactMultiplicity | BoundedMultiplicity; public MultiplicityElements getMultiplicityAccess() { return pMultiplicity; } @@ -3533,18 +3907,18 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getMultiplicityAccess().getRule(); } - //ManyMultiplicity: - // {ManyMultiplicity} "[" "]"; - public ManyMultiplicityElements getManyMultiplicityAccess() { - return pManyMultiplicity; + //UnboundedMultiplicity: + // {UnboundedMultiplicity} "[" "]"; + public UnboundedMultiplicityElements getUnboundedMultiplicityAccess() { + return pUnboundedMultiplicity; } - public ParserRule getManyMultiplicityRule() { - return getManyMultiplicityAccess().getRule(); + public ParserRule getUnboundedMultiplicityRule() { + return getUnboundedMultiplicityAccess().getRule(); } //ExactMultiplicity: - // "[" multiplicity=UpperMultiplicty "]"; + // "[" value=UpperMultiplicty "]"; public ExactMultiplicityElements getExactMultiplicityAccess() { return pExactMultiplicity; } @@ -3554,7 +3928,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //BoundedMultiplicity: - // "[" lowerBound=INT ".." upperBound=UpperMultiplicty "]"; + // "[" lowerBound=INT "," upperBound=UpperMultiplicty "]"; public BoundedMultiplicityElements getBoundedMultiplicityAccess() { return pBoundedMultiplicity; } @@ -3563,50 +3937,70 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getBoundedMultiplicityAccess().getRule(); } - //ScopeDefinition: - // ExactScopeDefinition | BoundedScopeDefinition | LowerBoundedScopeDefinition; - public ScopeDefinitionElements getScopeDefinitionAccess() { - return pScopeDefinition; + //EnumDeclaration: + // "enum" name=ID ("{" (literals+=EnumLiteral (","? literals+=EnumLiteral)*)? "}" | FULL_STOP); + public EnumDeclarationElements getEnumDeclarationAccess() { + return pEnumDeclaration; + } + + public ParserRule getEnumDeclarationRule() { + return getEnumDeclarationAccess().getRule(); + } + + //EnumLiteral: + // name=ID; + public EnumLiteralElements getEnumLiteralAccess() { + return pEnumLiteral; } - public ParserRule getScopeDefinitionRule() { - return getScopeDefinitionAccess().getRule(); + public ParserRule getEnumLiteralRule() { + return getEnumLiteralAccess().getRule(); } - //ExactScopeDefinition: - // "scope" type=[NamedElement|QualifiedName] "==" exactScope=INT; - public ExactScopeDefinitionElements getExactScopeDefinitionAccess() { - return pExactScopeDefinition; + //ScopeDeclaration: + // ExactScope | BoundedScope | LowerBoundedScope; + public ScopeDeclarationElements getScopeDeclarationAccess() { + return pScopeDeclaration; } - public ParserRule getExactScopeDefinitionRule() { - return getExactScopeDefinitionAccess().getRule(); + public ParserRule getScopeDeclarationRule() { + return getScopeDeclarationAccess().getRule(); } - //BoundedScopeDefinition: - // "scope" ((lowerBound=INT "<=")? type=[NamedElement|QualifiedName] "<=" upperBound=INT | upperBound=INT ">=" - // type=[NamedElement|QualifiedName] (">=" lowerBound=INT)?); - public BoundedScopeDefinitionElements getBoundedScopeDefinitionAccess() { - return pBoundedScopeDefinition; + //ExactScope: + // "scope" type=[Symbol|QualifiedName] "==" size=INT FULL_STOP; + public ExactScopeElements getExactScopeAccess() { + return pExactScope; } - public ParserRule getBoundedScopeDefinitionRule() { - return getBoundedScopeDefinitionAccess().getRule(); + public ParserRule getExactScopeRule() { + return getExactScopeAccess().getRule(); } - //LowerBoundedScopeDefinition: - // "scope" (lowerBound=INT "<=" type=[NamedElement|QualifiedName] | type=[NamedElement|QualifiedName] ">=" - // lowerBound=INT); - public LowerBoundedScopeDefinitionElements getLowerBoundedScopeDefinitionAccess() { - return pLowerBoundedScopeDefinition; + //BoundedScope: + // "scope" ((lowerBound=INT "<=")? type=[Symbol|QualifiedName] "<=" upperBound=INT | upperBound=INT ">=" + // type=[Symbol|QualifiedName] (">=" lowerBound=INT)?) FULL_STOP; + public BoundedScopeElements getBoundedScopeAccess() { + return pBoundedScope; } - public ParserRule getLowerBoundedScopeDefinitionRule() { - return getLowerBoundedScopeDefinitionAccess().getRule(); + public ParserRule getBoundedScopeRule() { + return getBoundedScopeAccess().getRule(); + } + + //LowerBoundedScope: + // "scope" (lowerBound=INT "<=" type=[Symbol|QualifiedName] | type=[Symbol|QualifiedName] ">=" lowerBound=INT) + // FULL_STOP; + public LowerBoundedScopeElements getLowerBoundedScopeAccess() { + return pLowerBoundedScope; + } + + public ParserRule getLowerBoundedScopeRule() { + return getLowerBoundedScopeAccess().getRule(); } //enum ObjectiveKind: - // MINIMIZE="minimize" | MAXIMIZE="maximize"; + // MINIMIZATION="minimize" | MAXIMIZATION="maximize"; public ObjectiveKindElements getObjectiveKindAccess() { return eObjectiveKind; } @@ -3615,14 +4009,14 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getObjectiveKindAccess().getRule(); } - //ObjectiveDefinition: - // kind=ObjectiveKind objective=Expression; - public ObjectiveDefinitionElements getObjectiveDefinitionAccess() { - return pObjectiveDefinition; + //ObjectiveDeclaration: + // kind=ObjectiveKind objective=Expression FULL_STOP; + public ObjectiveDeclarationElements getObjectiveDeclarationAccess() { + return pObjectiveDeclaration; } - public ParserRule getObjectiveDefinitionRule() { - return getObjectiveDefinitionAccess().getRule(); + public ParserRule getObjectiveDeclarationRule() { + return getObjectiveDeclarationAccess().getRule(); } //UpperMultiplicty ecore::EInt: @@ -3636,7 +4030,7 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { } //Real ecore::EBigDecimal hidden(): - // INT ("." INT)?; + // INT "." INT; public RealElements getRealAccess() { return pReal; } @@ -3645,8 +4039,18 @@ public class SolverLanguageGrammarAccess extends AbstractGrammarElementFinder { return getRealAccess().getRule(); } + //QualifiedNameSegment: + // ID | QUOTED_ID | "object"; + public QualifiedNameSegmentElements getQualifiedNameSegmentAccess() { + return pQualifiedNameSegment; + } + + public ParserRule getQualifiedNameSegmentRule() { + return getQualifiedNameSegmentAccess().getRule(); + } + //QualifiedName hidden(): - // ID ("." ID)* | QUOTED_ID; + // QualifiedNameSegment ("::" QualifiedNameSegment)*; public QualifiedNameElements getQualifiedNameAccess() { return pQualifiedName; } diff --git a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/GenerateSolverLanguage.mwe2 b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/GenerateSolverLanguage.mwe2 index 50072f0d..644e681d 100644 --- a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/GenerateSolverLanguage.mwe2 +++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/GenerateSolverLanguage.mwe2 @@ -32,7 +32,7 @@ Workflow { language = StandardLanguage { name = "org.eclipse.viatra.solver.language.SolverLanguage" fileExtensions = "vsc" - referencedResource = "platform:/resource/org.eclipse.viatra.solver.language/model/SolverLanguage.genmodel" + referencedResource = "platform:/resource/org.eclipse.viatra.solver.language.model/model/model.genmodel" serializer = { generateStub = false diff --git a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguage.xtext b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguage.xtext index d0578d78..51115da0 100644 --- a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguage.xtext +++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/SolverLanguage.xtext @@ -3,66 +3,80 @@ import "http://www.eclipse.org/emf/2002/Ecore" as ecore import "http://www.eclipse.org/viatra/solver/language/SolverLanguage" Problem: - (statements+=Statement)*; + ("problem" name=QualifiedName FULL_STOP)? + imports+=Import* + statements+=Statement*; Statement: ( - AssertionOrDefinition | PredicateDefinition | UnnamedErrorPrediateDefinition | DefaultDefinition | MetricDefinition | - ExternPredicateDefinition | ExternMetricDefinition | ExternAggregatorDefinition | ExternDatatypeDefinition | - ClassDefinition | ScopeDefinition | ObjectiveDefinition - ) FULL_STOP; + AssertionOrDefinition | PredicateDefinition | UnnamedErrorPredicateDefintion | DefaultAssertion | + FunctionDefinition | Attribute | ExternDeclaration | ScopeDeclaration | ObjectiveDeclaration | + ClassDeclaration | EnumDeclaration + ); + +Import: + UriImport | NamespaceImport; + +UriImport: + "import" uri=STRING ("as" alias=QualifiedName) FULL_STOP; + +NamespaceImport: + "import" importedNamespace=QualifiedName ("as" alias=QualifiedName) FULL_STOP; AssertionOrDefinition returns Statement: Expression ( - {Interpretation.body=current} ":" range=Expression | + {Assertion.expression=current} (":" range=Expression)? | {PredicateDefinition.head=current} ":-" body=Expression | - {MetricDefinition.head=current} "=" body=Expression - )?; + {FunctionDefinition.head=current} ":=" body=Expression + ) FULL_STOP; PredicateDefinition: - (functional?="functional" error?="error"? | error?="error" functional?="functional"?) head=Call ":-" body=Expression; + (functional?="functional" error?="error"? | error?="error" functional?="functional"?) head=Call ":-" body=Expression FULL_STOP; -UnnamedErrorPrediateDefinition: - "error" argumentList=ArgumentList ":-" body=Expression; +UnnamedErrorPredicateDefintion: + "error" argumentList=ArgumentList ":-" body=Expression FULL_STOP; -DefaultDefinition: - "default" head=Call ":" range=Expression; +DefaultAssertion: + "default" expression=Call (":" range=Expression)? FULL_STOP; -MetricDefinition: - type=[NamedElement|QualifiedName] head=Call "=" body=Expression; +FunctionDefinition: + resultType=[Symbol|QualifiedName] head=Call ":=" body=Expression FULL_STOP; -ExternPredicateDefinition: - "extern" name=QualifiedName argumentList=ArgumentList; +TypeReference: + type=[Symbol|QualifiedName] forceObjectType?="object"?; -ExternMetricDefinition: - "extern" type=[NamedElement|QualifiedName] name=QualifiedName argumentList=ArgumentList; +enum AttributeKind: + FUNCTIONAL="functional" | ERROR="error" | ROOT="root" | CONTAINMENT="containment"; -ExternAggregatorDefinition: - "extern" type=[NamedElement|QualifiedName] name=QualifiedName "{" inputType=[NamedElement|QualifiedName] "..." "}"; +Attribute: + kind=AttributeKind target=[Symbol|QualifiedName] FULL_STOP; -ExternDatatypeDefinition: - "extern" "datatype" name=QualifiedName ("extends" supertypes+=[NamedElement|QualifiedName] ("," supertypes+=[NamedElement|QualifiedName])*); +ExternDeclaration: + ExternPredicateDeclaration | ExternFunctionDeclaration | ExternAggregationOperatorDeclaration | ExternDatatypeDeclaration; -Variable: - type=[NamedElement|QualifiedName]? name=ID; +ExternPredicateDeclaration: + "extern" (functional?="functional"? & error?="error"?) name=QualifiedName argumentList=ArgumentList FULL_STOP; + +ExternFunctionDeclaration: + "extern" resultType=[Symbol|QualifiedName] name=QualifiedName argumentList=ArgumentList FULL_STOP; + +ExternAggregationOperatorDeclaration: + "extern" resultType=[Symbol|QualifiedName] name=QualifiedName "{" argumentType=[Symbol|QualifiedName] "..." "}" FULL_STOP; + +ExternDatatypeDeclaration: + "extern" "datatype" name=QualifiedName FULL_STOP; Expression: - IfElse | Let | ImplicationExpression; + ConditionalExpression | LetExpression | DisjunctiveExpression ({Forall.condition=current} "=>" body=DisjunctiveExpression)?; -IfElse: - "if" condition=Expression "then" then=Expression "else" else=Expression; +ConditionalExpression: + "if" condition=DisjunctiveExpression "then" then=Expression "else" else=Expression; -Let: +LetExpression: "let" bindings+=LetBinding ("," bindings+=LetBinding)* "in" body=Expression; LetBinding: - variable=Variable "=" value=AdditiveExpression; - -enum ImplicationOperator returns BinaryOperator: - IMPLIES = "=>"; - -ImplicationExpression returns Expression: - DisjunctiveExpression ({BinaryExpression.left=current} op=ImplicationOperator right=ImplicationExpression)?; + type=[Symbol|QualifiedName]? name=ID "=" value=AdditiveExpression; DisjunctiveExpression returns Expression: ConjunctiveExpression ( @@ -77,19 +91,19 @@ ConjunctiveExpression returns Expression: ComparisonExpression ({Conjunction.children+=current} ("," children+=ComparisonExpression)+)?; enum ComparisonOperator returns BinaryOperator: - EQ="==" | NOT_EQ="!=" | LESS="<" | LESS_EQ="<=" | GREATER=">" | GREATER_EQ=">=" | IN="in"; + EQUALS="==" | NOT_EQUALS="!=" | LESS="<" | LESS_EQUALS="<=" | GREATER=">" | GREATER_EQUALS=">=" | IN="in"; ComparisonExpression returns Expression: - AdditiveExpression ({Comparison.left=current} op=ComparisonOperator right=AdditiveExpression)?; + AdditiveExpression ({BinaryExpression.left=current} op=ComparisonOperator right=AdditiveExpression)?; enum AdditiveBinaryOperator returns BinaryOperator: - ADD="+" | SUB="-"; + PLUS="+" | MINUS="-"; AdditiveExpression returns Expression: MultiplicativeExpression ({BinaryExpression.left=current} op=AdditiveBinaryOperator right=MultiplicativeExpression)*; enum MultiplicativeBinaryOperator returns BinaryOperator: - MUL="*" | DIV="/"; + MULTIPLY="*" | DIVIDE="/"; MultiplicativeExpression returns Expression: ExponentialExpression ({BinaryExpression.left=current} op=MultiplicativeBinaryOperator right=ExponentialExpression)*; @@ -101,61 +115,59 @@ ExponentialExpression returns Expression: CastExpression ({BinaryExpression.left=current} op=ExponentialOp right=CastExpression)?; CastExpression returns Expression: - UnaryExpression ({CastExpression.body=current} "as" type=[NamedElement|QualifiedName])?; + UnaryExpression ({CastExpression.body=current} "as" targetType=[Symbol|QualifiedName])?; -enum UnaryOp: - NEG="!" | PLUS="+" | MINUS="-" | MAY="may" | MUST="must" | CURRENT="current"; +enum UnaryOperator: + NOT="!" | PLUS="+" | MINUS="-" | MAYBE="?"; UnaryExpression returns Expression: - AggregationExpression | {UnaryExpression} op=UnaryOp body=AggregationExpression; - -AggregationExpression returns Expression: - AtomicExpression | QuantifiedExpression | Aggregation; + BracedAggregateExpression | {UnaryExpression} op=UnaryOperator body=BracedAggregateExpression; -LocalVariables: - {LocalVariables} "[" (variables+=Variable ("," variables+=Variable)*)? "]"; - -enum Quantifier: - EXISTS="exists" | FORALL="forall" | COUNT="count"; - -QuantifiedExpression: - quantifier=Quantifier localVariables=LocalVariables? "{" body=Expression "}"; +BracedAggregateExpression returns Expression: + AtomicExpression | Aggregation | Count ; Aggregation: - op=[NamedElement|QualifiedName] localVariables=LocalVariables? "{" body=Expression ("|" condition=Expression)? "}"; + op=[Symbol|QualifiedName] "{" value=Expression "|" condition=Expression "}"; + +Count: + "count" "{" condition=Expression "}"; AtomicExpression returns Expression: Reference | Call | Interval | Literal | "(" Expression ")"; Call: - functor=Reference (transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)? argumentList=ArgumentList; + functor=Reference argumentList=ArgumentList; ArgumentList: {ArgumentList} "(" (arguments+=Argument ("," arguments+=Argument)*)? ")"; Argument: - ExpressionArgument | StarArgument | TypedArgument | TypedStarArgument; + ExpressionArgument | StarArgument | TypedVariableArgument | TypedStarArgument; ExpressionArgument: - body=ComparisonExpression; + expression=ComparisonExpression; StarArgument: {StarArgument} "*"; -TypedArgument: - type=[NamedElement|QualifiedName] variable=[NamedElement|QualifiedName]; +TypedVariableArgument: + typeReference=TypeReference name=ID; TypedStarArgument: - type=[NamedElement|QualifiedName] "*"; + typeReference=TypeReference "*"; Reference: - referred=[NamedElement|QualifiedName]; + components+=PathComponent ("." components+=PathComponent)*; + +PathComponent: + inverse?="~"? symbol=[Symbol|QualifiedName] + (transitiveClosure?=TRANSITIVE_CLOSURE | reflexiveTransitiveClosure?=REFLEXIVE_TRANSITIVE_CLOSURE)?; Interval: - "[" lowerBound=Expression ".." upperBound=Expression "]"; + "[" lowerBound=AdditiveExpression "," upperBound=AdditiveExpression "]"; Literal: - LogicLiteral | NumericLiteral | InfinityLiteral | EmptyIntervalLiteral | StringLiteral; + LogicLiteral | IntLiteral | RealLiteral | InfinityLiteral | EmptyLiteral | StringLiteral; enum LogicValue: TRUE="true" | FALSE="false" | UNKNOWN="unknown" | ERROR="error"; @@ -163,69 +175,82 @@ enum LogicValue: LogicLiteral: value=LogicValue; -NumericLiteral: +IntLiteral: + value=INT; + +RealLiteral: value=Real; InfinityLiteral: {InfinityLiteral} "inf"; -EmptyIntervalLiteral: - {EmptyIntervalLiteral} "empty"; +EmptyLiteral: + {EmptyLiteral} "empty"; StringLiteral: value=STRING; -ClassDefinition: - abstract?="abstract"? "class" name=ID ("extends" superclasses+=[NamedElement|QualifiedName] ("," superclasses+=[NamedElement|QualifiedName])*)? - "{" members+=MemberDefinition* "}"; +ClassDeclaration: + (abstract?="abstract"? & root?="root"?) "class" name=ID ("extends" supertypes+=[Symbol|QualifiedName] ("," supertypes+=[Symbol|QualifiedName])*)? + ("{" fields+=Field* "}" | FULL_STOP); -MemberDefinition: - containment?="contains"? type=[NamedElement|QualifiedName] multiplicity=Multiplicity? name=ID ("opposite" opposite=[NamedElement|QualifiedName])? ";"?; +Field: + (containment?="contains" | crossReference?="refers")? type=[Symbol|QualifiedName] multiplicity=Multiplicity? + name=ID ("opposite" opposite=[Symbol|QualifiedName])? ";"?; Multiplicity: - ManyMultiplicity | ExactMultiplicity | BoundedMultiplicity; + UnboundedMultiplicity | ExactMultiplicity | BoundedMultiplicity; -ManyMultiplicity: - {ManyMultiplicity} "[" "]"; +UnboundedMultiplicity: + {UnboundedMultiplicity} "[" "]"; ExactMultiplicity: - "[" multiplicity=UpperMultiplicty "]"; + "[" value=UpperMultiplicty "]"; BoundedMultiplicity: - "[" lowerBound=INT ".." upperBound=UpperMultiplicty "]"; + "[" lowerBound=INT "," upperBound=UpperMultiplicty "]"; + +EnumDeclaration: + "enum" name=ID ("{" (literals+=EnumLiteral (","? literals+=EnumLiteral)*)? "}" | FULL_STOP); -ScopeDefinition: - ExactScopeDefinition | BoundedScopeDefinition | LowerBoundedScopeDefinition; +EnumLiteral: + name=ID; -ExactScopeDefinition: - "scope" type=[NamedElement|QualifiedName] "==" exactScope=INT; +ScopeDeclaration: + ExactScope | BoundedScope | LowerBoundedScope; -BoundedScopeDefinition: +ExactScope: + "scope" type=[Symbol|QualifiedName] "==" size=INT FULL_STOP; + +BoundedScope: "scope" ( - (lowerBound=INT "<=")? type=[NamedElement|QualifiedName] "<=" upperBound=INT | - upperBound=INT ">=" type=[NamedElement|QualifiedName] (">=" lowerBound=INT)? - ); + (lowerBound=INT "<=")? type=[Symbol|QualifiedName] "<=" upperBound=INT | + upperBound=INT ">=" type=[Symbol|QualifiedName] (">=" lowerBound=INT)? + ) FULL_STOP; -LowerBoundedScopeDefinition: +LowerBoundedScope: "scope" ( - lowerBound=INT "<=" type=[NamedElement|QualifiedName] | - type=[NamedElement|QualifiedName] ">=" lowerBound=INT - ); + lowerBound=INT "<=" type=[Symbol|QualifiedName] | + type=[Symbol|QualifiedName] ">=" lowerBound=INT + ) FULL_STOP; enum ObjectiveKind: - MINIMIZE="minimize" | MAXIMIZE="maximize"; + MINIMIZATION="minimize" | MAXIMIZATION="maximize"; -ObjectiveDefinition: - kind=ObjectiveKind objective=Expression; +ObjectiveDeclaration: + kind=ObjectiveKind objective=Expression FULL_STOP; UpperMultiplicty returns ecore::EInt: INT | "*"; Real returns ecore::EBigDecimal hidden(): - INT ("." INT)?; + INT "." INT; + +QualifiedNameSegment: + ID | QUOTED_ID | "object"; QualifiedName hidden(): - ID ("." ID)* | QUOTED_ID; + QualifiedNameSegment ("::" QualifiedNameSegment)*; @Override terminal STRING returns ecore::EString: diff --git a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageTokenSource.java b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageTokenSource.java index 4c1dacd5..70e7e492 100644 --- a/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageTokenSource.java +++ b/Application/org.eclipse.viatra.solver.language/src/org/eclipse/viatra/solver/language/parser/antlr/SolverLanguageTokenSource.java @@ -29,6 +29,7 @@ public class SolverLanguageTokenSource implements TokenSource { private int plusTokenId = -1; private int starTokenId = -1; private int dotTokenId = -1; + private int tildeTokenId = -1; private int openParenTokenId = -1; public SolverLanguageTokenSource(TokenSource delegate) { @@ -42,33 +43,49 @@ public class SolverLanguageTokenSource implements TokenSource { @Override public Token nextToken() { - Token token = internalNextToken(); + Token token; + if (acceptor.hasNext()) { + token = acceptor.next(); + } else { + token = delegate.nextToken(); + } + postProcessToken(token); lastTokenId = token.getType(); return token; } - protected Token internalNextToken() { - if (acceptor.hasNext()) { - return acceptor.next(); - } - Token token = delegate.nextToken(); + protected void postProcessToken(Token token) { int type = token.getType(); if (type == plusTokenId) { - if ((lastTokenId == RULE_ID || lastTokenId == RULE_QUOTED_ID) - && peekUntilVisible().getType() == openParenTokenId) { + if (isTransitiveClosureInReferenceContext()) { token.setType(RULE_TRANSITIVE_CLOSURE); } } else if (type == starTokenId) { - if ((lastTokenId == RULE_ID || lastTokenId == RULE_QUOTED_ID) - && peekUntilVisible().getType() == openParenTokenId) { + if (isTransitiveClosureInReferenceContext()) { token.setType(RULE_REFLEXIVE_TRANSITIVE_CLOSURE); } } else if (type == dotTokenId) { - if ((lastTokenId != RULE_ID && lastTokenId != RULE_INT) || peekToken().getType() != lastTokenId) { + if (isFullStopContext()) { token.setType(RULE_FULL_STOP); } } - return token; + } + + private boolean isIdFragment(int tokenId) { + return tokenId == RULE_ID || tokenId == RULE_QUOTED_ID; + } + + private boolean isTransitiveClosureInReferenceContext() { + int nextVisibleTokenId = peekUntilVisible().getType(); + return isIdFragment(lastTokenId) + && (nextVisibleTokenId == dotTokenId || nextVisibleTokenId == openParenTokenId); + } + + private boolean isFullStopContext() { + int nextTokenId = peekToken().getType(); + boolean inReference = isIdFragment(lastTokenId) && (isIdFragment(nextTokenId) || nextTokenId == tildeTokenId); + boolean inReal = lastTokenId == RULE_INT && nextTokenId == RULE_INT; + return !(inReference || inReal); } protected Token peekUntilVisible() { @@ -101,6 +118,9 @@ public class SolverLanguageTokenSource implements TokenSource { case "'.'": dotTokenId = entry.getKey(); break; + case "'~'": + tildeTokenId = entry.getKey(); + break; case "'('": openParenTokenId = entry.getKey(); break; @@ -115,6 +135,9 @@ public class SolverLanguageTokenSource implements TokenSource { if (dotTokenId == -1) { throw new IllegalStateException("Token '.' was not found"); } + if (tildeTokenId == -1) { + throw new IllegalStateException("Token '~' was not found"); + } if (openParenTokenId == -1) { throw new IllegalStateException("Token '(' was not found"); } diff --git a/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/parser/antlr/.SolverLanguageTokenDefInjectingParser.xtendbin b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/parser/antlr/.SolverLanguageTokenDefInjectingParser.xtendbin index c8d4144d..61001113 100644 Binary files a/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/parser/antlr/.SolverLanguageTokenDefInjectingParser.xtendbin and b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/parser/antlr/.SolverLanguageTokenDefInjectingParser.xtendbin differ diff --git a/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/serializer/.SolverLanguageSyntheticTokenSyntacticSequencer.xtendbin b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/serializer/.SolverLanguageSyntheticTokenSyntacticSequencer.xtendbin index b16c52f7..5ab360c2 100644 Binary files a/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/serializer/.SolverLanguageSyntheticTokenSyntacticSequencer.xtendbin and b/Application/org.eclipse.viatra.solver.language/xtend-gen/org/eclipse/viatra/solver/language/serializer/.SolverLanguageSyntheticTokenSyntacticSequencer.xtendbin differ -- cgit v1.2.3-54-g00ecf